现在的位置: 首页 > 综合 > 正文

windows下gvim打开文件显示乱码的解决

2013年10月02日 ⁄ 综合 ⁄ 共 1397字 ⁄ 字号 评论关闭

问题:

在windows中安装了gvim73,但是,使用gvim打开文件的时候,如果文件内容包含中文,那么,打开之后总是看到一堆乱码。


解决办法:

放狗搜了一下,发现这篇文章完美地解决了我的问题:

http://www.douban.com/note/145491549/

查看文件的编码:
:echo &fileencoding

Vim 有四个跟字符编码方式有关的选项,encoding、fileencoding、fileencodings、termencoding (这些选项可能的取值请参考 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 控制台的代码页,并且通常我们不需要改变它。

用英文菜单和提示最好,可以免去下面对菜单和提示信息(B,C部分)的设置
如果用英文菜单和提示在安装gvim的时候,将支持本地语言的选项去掉。

解决vim文件乱码,打开文件乱码,菜单,提示信息乱码:
  有四个跟字符编码方式有关的选项,encoding、fileencoding、fileencodings、termencoding
  在linux中修改.vimrc(在win中是_vimrc)

windows系统也可以在vim菜单项中:编辑>启动设定,直接打开_vimrc文件

A,"设置文件的代码形式
set encoding=utf-8
set termencoding=utf-8
set fileencoding=utf-8
set fileencodings=ucs-bom,utf-8,chinese,cp936

B,"vim的菜单乱码解决:
"同样在 _vimrc文件里以上的中文设置后加上下列命令,
  source $VIMRUNTIME/delmenu.vim
  source $VIMRUNTIME/menu.vim

C,"vim提示信息乱码的解决
language messages zh_CN.utf-8

在windows下,修改安装目录下的_vimrc文件,添加如下几行:

set encoding=utf-8
set termencoding=utf-8
set fileencoding=utf-8
set fileencodings=ucs-bom,utf-8,chinese,cp936
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim

保存_vimrc文件,用gvim再次打开同一个文件,乱码现象消失,问题解决了。


抱歉!评论已关闭.