博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
VIM 编码格式 显示乱码
阅读量:4041 次
发布时间:2019-05-24

本文共 1074 字,大约阅读时间需要 3 分钟。

在开发跨平台项目中,由于windows和Linux环境下的编码格式不同,在Ubuntu系统中使用VIM编辑代码时中文显示乱码,设置VIM配置文件~/.vimrc,在配置文件中加入下面的配置:

    set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936

    set termencoding=utf-8

    set encoding=utf-8

虽然该方式能解决中文显示乱码的问题,但会造成文件中中文编码改变,使用svn或git管理代码时,这些编码改变会被识别为改变。

VIM编码格式中常用的配置选项有4种,分别是encoding、fileencoding、fileencodings、termencoding。

   1. encoding        :VIM 使用的字符编码格式,包括 VIM 的 buffer (缓冲区)、菜单文本、消息文本等。可在~/.vimrc 中改变它的值,如果打开的文件编码与该属性配置的编码不同,那么VIM会将编码自动转换到这种编码然后再显示。

   2. fileencoding   :VIM 当前编辑的文件的字符编码方式,VIM保存文件时也会将文件保存为这种字符编码方式 (不管是否新文件都如此);如果它的值与encoding不一样,那么保存的时候VIM会自动把文件内容由encoding的编码转换为fileencoding配置编码再保存。而读取文件的时候,该选项的值会自动同步为fileencodings配置的有效编码。

   3. fileencodings :此项目配置的是一个编码列表,止Vim在读取文件的时候,会按照它所列出的字符编码方式逐一探测即将打开的文件的字符编码方式,并且将 fileencoding 设置为最终探测到的字符编码方式。因此最好将 Unicode 编码方式放到这个列表的最前面。

   4. termencoding :VIM 所工作的终端 (或者 Windows 的 Console 窗口) 的字符编码方式。这个选项在 Windows 下对我们常用的 GUI 模式的 gVim 无效,而对 Console 模式的 Vim 而言就是 Windows 控制台的代码页,并且通常我们不需要改变它。

所以,在设置~/.vimrc设置如下:

    set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936

    set fileencoding=gbk

    set termencoding=utf-8

    set encoding=utf-8

转载地址:http://ozadi.baihongyu.com/

你可能感兴趣的文章
各种排序算法的分析及java实现
查看>>
SSH框架总结(框架分析+环境搭建+实例源码下载)
查看>>
js弹窗插件
查看>>
自定义 select 下拉框 多选插件
查看>>
js判断数组内是否有重复值
查看>>
js获取url链接携带的参数值
查看>>
gdb 调试core dump
查看>>
gdb debug tips
查看>>
arm linux 生成火焰图
查看>>
linux和windows内存布局验证
查看>>
linux insmod error -1 required key invalid
查看>>
linux kconfig配置
查看>>
linux不同模块completion通信
查看>>
linux printf获得时间戳
查看>>
C语言位扩展
查看>>
linux dump_backtrace
查看>>
linux irqdebug
查看>>
git 常用命令
查看>>
linux位操作API
查看>>
uboot.lds文件分析
查看>>