转载自:-杨博的日志 - 网易博客 html
Vim / gVim 在中文 Windows 下的字符编码有两个问题: vim
第一个问题的解决办法是在 ~/.vimrc 中加入如下配置:编辑器
set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
第二个问题的解决办法是强制要求 Vim 的内部编码采用某种 UTF 编码。好比 UTF-8:google
set encoding=utf-8
可是,把 Vim 的内部编码设为 UTF-8 会带来如下新问题 编码
E492: 不是编辑器的命令: foo)会乱码
要解决非 GUI 界面的 vim 的乱码问题,须要设置终端编码为系统默认编码:.net
set termencoding=cp936
而要让提示信息不乱码则要须要使用 UTF-8 版本的提示信息:日志
language messages zh_CN.UTF-8
综上所述,在中文 Windows 下正确配置字符编码,须要把如下内容加入你的 ~/.vimrc 中code
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
特别提醒,以上代码应该放在 .vimrc 的最顶端,由于 vim 运行过程当中 set encoding=xxx
是很危险的,会致使各类乱码(参见这里)。我本身所用的完整 .vimrc 放在https://sites.google.com/site/popatry/etc/-vimrc,持续更新。htm