Wednesday, August 3, 2011

解决win7下gvim查看中文文档乱码的问题

我的系统是简体中文win7,系统locale是GBK。找到windows下gvim的配置文件(在其安装目录下名为_vimrc),使用任何一款文本编辑器将其打开,在文档最后添加:

" 用utf-8的默认编码
set encoding=utf-8
set fileencoding=utf-8
set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
" 汉化菜单
language messages zh_CN.utf-8

第三个参数fileencodings是自动匹配文件编码参数选项,一般罗列编码的顺序是产生歧义越小的编码放在越前面,这里具体说明可以参照edyfox的文章,他那里说的比较详细。cp936编码实际上可以等同于GBK编码,其细微差别可以略去不计。
另外,在vim里,可以通过 ++enc=correctencoding 的方式用指定的编码来打开文件, 如:

:e ++enc=utf-8 myfile.txt

mbbill写了一个自动识别编码的vim插件,据说很不错

No comments:

Post a Comment