gVim for window 安装记录--汉化--乱码问题

gvim 安装记录

你好!这是我在csdn使用Markdown编辑器写博客,本文档主要是记录window中安装gvim编辑器,主要内容来自网络附链接

安装

参考的:用Gvim建立IDE编程环境 (Windows篇)
安装包:ftp://ftp.vim.org/pub/vim/pc/

  • 根据上面网站,找到ftp服务器,并找到最新的gvim82.
  • 下载到本地
    在这里插入图片描述
  • 开始安装
    在这里插入图片描述
  • 同意协议
    在这里插入图片描述
  • 进行安装操作,选择完全安装
    在这里插入图片描述
  • 按键及鼠标映射默认
    在这里插入图片描述
  • 选择安装路径,将C:盘改为D:盘,根据自己的习惯来
    在这里插入图片描述
  • 如果安装过旧版的,会提示卸载
    在这里插入图片描述
  • 安装中
    在这里插入图片描述
  • 安装结束
    在这里插入图片描述
    在这里插入图片描述

汉化

上面打开后,发现不是中文英文,如果不介意的也可以跳过。
参考:如何将windows版的vim界面语言(默认为中文)设置成英文
window下gvim中文界面改变成英文界面

主要是修改gVim安装根目录相关文件,如图
在这里插入图片描述
文件内容:

" Vim with all enhancements
source $VIMRUNTIME/vimrc_example.vim
" Use the internal diff if available.
" Otherwise use the special 'diffexpr' for Windows.
if &diffopt !~# 'internal'
  set diffexpr=MyDiff()
endif
function MyDiff()
  let opt = '-a --binary '
  if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
  if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
  let arg1 = v:fname_in
  if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
  let arg1 = substitute(arg1, '!', '\!', 'g')
  let arg2 = v:fname_new
  if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
  let arg2 = substitute(arg2, '!', '\!', 'g')
  let arg3 = v:fname_out
  if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
  let arg3 = substitute(arg3, '!', '\!', 'g')
  if $VIMRUNTIME =~ ' '
    if &sh =~ '\<cmd'
      if empty(&shellxquote)
        let l:shxq_sav = ''
        set shellxquote&
      endif
      let cmd = '"' . $VIMRUNTIME . '\diff"'
    else
      let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
    endif
  else
    let cmd = $VIMRUNTIME . '\diff'
  endif
  let cmd = substitute(cmd, '!', '\!', 'g')
  silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3
  if exists('l:shxq_sav')
    let &shellxquote=l:shxq_sav
  endif
endfunction

涉及到的文件vimrc_example.vim

" An example for a vimrc file.
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last change: 2019 Jan 26
"
" To use it, copy it to
"     for Unix and OS/2:  ~/.vimrc
"       for Amiga:  s:.vimrc
"  for MS-DOS and Win32:  $VIM\_vimrc
"     for OpenVMS:  sys$login:.vimrc

" When started as "evim", evim.vim will already have done these settings, bail
" out.
if v:progname =~? "evim"
  finish
endif

" Get the defaults that most users want.
source $VIMRUNTIME/defaults.vim

if has("vms")
  set nobackup  " do not keep a backup file, use versions instead
else
  set backup  " keep a backup file (restore to previous version)
  if has('persistent_undo')
    set undofile " keep an undo file (undo changes after closing)
  endif
endif

if &t_Co > 2 || has("gui_running")
  " Switch on highlighting the last used search pattern.
  set hlsearch
endif

" Put these in an autocmd group, so that we can delete them easily.
augroup vimrcEx
  au!
 
 " For all text files set 'textwidth' to 78 characters.
  autocmd FileType text setlocal textwidth=78
augroup END

" Add optional packages.
"
" The matchit plugin makes the % command work better, but it is not backwards
" compatible.
" The ! means the package won't be loaded right away but when plugins are
" loaded during initialization.
if has('syntax') && has('eval')
  packadd! matchit
endif

末尾追加如下配置,中文

" set the menu & the message to English 
set langmenu=zh_CN 
let $LANG= 'zh_CN' 
source $VIMRUNTIME/delmenu.vim 
source $VIMRUNTIME/menu.vim

英文配置

set langmenu=en_US
let $LANG= 'en_US'

支持的语言,都在文件中D:\Program Files (x86)\Vim\vim82\lang,如下:

af,ca,cs,da,de,en_GB,eo,es,fi,fr,ga,it,ja,ko,ko.UTF-8,
lv,messages,nb,nl,no,pl,pl.UTF-8,pt_BR,ru,sk,sr,sv,tr,
uk,vi,zh_CN,zh_CN.UTF-8,zh_TW,zh_TW.UTF-8

配置好后,在启动就可以了
在这里插入图片描述
在这里插入图片描述

桌面图标

在这里插入图片描述
参考:gVim, gVim Easy, gVim Read-only 的简单区别
第一个是正常模式,第二个是只读模式,第三个是简单模式,

  • gvim72.exe 正常模式标准的VIM(正常开发的时候用)
    在这里插入图片描述
  • gvim read-only 只读模式的VIM(防误删误改方便查阅代码)
    在这里插入图片描述
  • gvim easy 启动的时候是insert模式,适合普通windows用户的习惯;
    在这里插入图片描述

内容乱码

在这里插入图片描述
如图,中文乱码问题。
参考:gvim中文乱码
vim、gvim 在 windows 下中文乱码的终极解决方案

Vim 有四个跟字符编码方式有关的选项,encodingfileencodingfileencodingstermencoding (这些选项可能的取值请参考 Vim 在线帮助 :help encoding-names),它们的意义如下:
encoding: Vim 内部使用的字符编码方式,包括 Vim 的 buffer (缓冲区)、菜单文本、消息文本等
fileencoding: Vim 中当前编辑的文件的字符编码方式,Vim 保存文件时也会将文件保存为这种字符编码方式 (不管是否新文件都如此)
fileencodings: Vim 启动时会按照它所列出的字符编码方式逐一探测即将打开的文件的字符编码方式,并且将 fileencoding 设置为最终探测到的字符编码方式。因此最好将 Unicode 编码方式放到这个列表的最前面,将拉丁语系编码方式 latin1 放到最后面
termencoding: Vim 所工作的终端 (或者 Windows 的 Console 窗口) 的字符编码方式。这个选项在 Windows 下对我们常用的 GUI 模式的 gVim 无效,而对 Console 模式的 Vim 而言就是 Windows 控制台的代码页,并且通常我们不需要改变它

编辑安装根目录文件_vimrc,追加配置:

" 解决内容中文乱码:"
set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
set encoding=utf-8
set termencoding=cp936
language messages zh_CN.UTF-8
" 解决菜单栏乱码:"
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim

问题解决
在这里插入图片描述

配置内容顺序

当前已经追加的配置信息,追加内容有顺序,否则会乱码!!!

" Set up Chinese"
set langmenu=zh_CN.UTF-8
let $LANG= 'zh_CN.UTF-8'
" Solve the Chinese code confusion of content"
set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
set encoding=utf-8
set termencoding=cp936
" Line number"
set nu
" Theme style"
colorscheme darkblue
" Solve menu bar garbled"
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim

_vimrc配置命令

显示行号

参考:vim 显示行号 查找的命令简单总结

在这里插入代码
" 显示行号"
set nu
" 隐藏行号"
set nonu

在这里插入图片描述

主题风格

参考:colorscheme-如何vim颜色风格
主题设置 colorscheme darkblue,主题文件都在colors目录中。
也可以自定义主题文件

hi Normal       guifg=yellow    guibg=darkBlue  ctermfg=yellow  ctermbg=darkBlue
颜色 属性        gui前景色      gui背景色       终端前景色       终端背景色
前景色是字体颜色 背景色是字体以后添加的背景
gui是用图形界面打开(window)终端是linux显示界面

在这里插入图片描述
在这里插入图片描述

其他命令

参考:vim自定义语法高亮(syntax highlight)设置流程

" 高亮关键字"
syntax enable
" 更改字体和字号"
set guifont=consolas:h14
" 关闭自动缩进"
filetype indent off
" 光标位置,行号列号和百分号"
set nuw=1
" 行号颜色"
hi LineNr  guifg=LightBlue

插件

参考:手把手教你把Vim改装成一个IDE编程环境(图文)
gvim常用的配置及插件 -windows(转)
Gvim插件管理Vundle

其他

本次使用csdn的md编辑方式,感觉好难用,复制粘贴内容崩溃好几次(;´д`)ゞ,凑合用吧ㄟ( ▔, ▔ )ㄏ。
2020年3月10日

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值