VIM 中文解决方法
2013-01-06 10:39
211 查看
我刚来公司的时候,发现公司的 Linux 开发环境没有配置中文,因为绝大多数同事都是在 VC/SourceInsight/UltraEdit上编辑后sz到服务器上编译,所以没人在意这个问题。而我习惯于在 vim 下直接写代码,很不习惯,就搞了一下。
首先让 vim 支持中文,这个修改配置即可,但是没想到后来那么麻烦。
一开始尝试统一设置为 en_US.UTF-8,SecureCRT 的编码也设置为 UTF-8,vim 好了,但是 cat 和 more GB 编码的文件时会乱码。
设置为 en_US.ISO8859-1,cat 和 more 好了,vim 又不行了。
很奇怪 vim 的 fileencoding 里面设置了检测中文的选项,
set fileencodings=utf-8-bom,ucs-bom,utf-8,cp936,gb18030,ucs,big5
为什么不起作用呢?后来明白了 UTF-8 本身能够兼容中文,所以 vim 不管语言是不是中文,vim 都会进行中文的检测,而语言设置为 en_US,编码不是 UTF-8 的时候,则认为环境不支持中文,直接忽略 fileencodings 里的cp936,gb18030等中文编码。
这就好办了。
因为我们的系统大部分还都是 GB 编码,而 cat 和 more 又不会进行编码的自动识别和转换。但是 vim 会,因此就委屈一下 vim,全局依然用 GB 编码。
具体操作:
编辑 ~/.profile,加入:
export LC_CTYPE=zh_CN.GB18030
编辑 ~/.vimrc,确认含有:
set fileencodings=utf-8-bom,ucs-bom,utf-8,cp936,gb18030,ucs,big5
这个顺序比较好,能准确识别的优先放前面。
然后 vim 就能正确识别中文了,不会出现乱码和半个汉字的问题。
如果要全中文,就用:
export LC_ALL=zh_CN.GB18030
取代
export LC_CTYPE=zh_CN.GB18030
这样终端的错误信息和gcc错误信息都是中文的了,cat 和 more GB 编码的文件也很正常了。
这个问题涉及到好几个方面:文件本身的编码终端的语言vim的中文支持vim的编码检测转换和输出SecureCRT的编码
所以实际上还是挺复杂的,一环错了都出不来效果。
现在编码问题算是比较完美地解决了,生活真美好……
首先让 vim 支持中文,这个修改配置即可,但是没想到后来那么麻烦。
一开始尝试统一设置为 en_US.UTF-8,SecureCRT 的编码也设置为 UTF-8,vim 好了,但是 cat 和 more GB 编码的文件时会乱码。
设置为 en_US.ISO8859-1,cat 和 more 好了,vim 又不行了。
很奇怪 vim 的 fileencoding 里面设置了检测中文的选项,
set fileencodings=utf-8-bom,ucs-bom,utf-8,cp936,gb18030,ucs,big5
为什么不起作用呢?后来明白了 UTF-8 本身能够兼容中文,所以 vim 不管语言是不是中文,vim 都会进行中文的检测,而语言设置为 en_US,编码不是 UTF-8 的时候,则认为环境不支持中文,直接忽略 fileencodings 里的cp936,gb18030等中文编码。
这就好办了。
因为我们的系统大部分还都是 GB 编码,而 cat 和 more 又不会进行编码的自动识别和转换。但是 vim 会,因此就委屈一下 vim,全局依然用 GB 编码。
具体操作:
编辑 ~/.profile,加入:
export LC_CTYPE=zh_CN.GB18030
编辑 ~/.vimrc,确认含有:
set fileencodings=utf-8-bom,ucs-bom,utf-8,cp936,gb18030,ucs,big5
这个顺序比较好,能准确识别的优先放前面。
然后 vim 就能正确识别中文了,不会出现乱码和半个汉字的问题。
如果要全中文,就用:
export LC_ALL=zh_CN.GB18030
取代
export LC_CTYPE=zh_CN.GB18030
这样终端的错误信息和gcc错误信息都是中文的了,cat 和 more GB 编码的文件也很正常了。
这个问题涉及到好几个方面:文件本身的编码终端的语言vim的中文支持vim的编码检测转换和输出SecureCRT的编码
所以实际上还是挺复杂的,一环错了都出不来效果。
现在编码问题算是比较完美地解决了,生活真美好……
相关文章推荐
- windows下vim中文乱码的解决方法
- Vim 中文乱码及菜单乱码的解决方法
- SSH、VIM显示中文乱码解决方法
- Linux_gedit和vim打开中文显示乱码解决方法
- ubuntu 中用vim打开txt等文件中文显示乱码的解决方法
- linux下vim中文乱码的解决方法
- vim显示中文乱码解决方法
- ubuntu下的vim和gvim汉字(中文)乱码解决方法
- linux下vim中文乱码的解决方法
- ubuntu vim 不能显示中文的解决方法
- Linux下vim中文乱码的解决方法
- Ubuntu vim 中文乱码解决方法
- linux下vim中文乱码的解决方法
- Ubuntu下的vim编辑器中汉字(中文)乱码解决方法
- Ubuntu vim 中文乱码解决方法
- Ubuntu下pdf、gedit、vim 中文无法读取或者显示乱码的解决方法
- vim中文显示问题解决方法
- (转)vim7.3中文乱码解决方法
- linux下vim中文乱码的解决方法以及vim多字节编码机制的工作流程
- linux下vim中文乱码的解决方法