使用vim打开文件时,中文显示乱码,查看linux系统默认语言编码是UTF-8;
查看当前语言编码也是UTF-8
/# local
LANG=ch-CN.UTF-8
LANGUAGE=
LC_CTYPE="ch-CN.UTF-8"
LC_NUMERIC="ch-CN.UTF-8"
LC_TIME="ch-CN.UTF-8"
LC_COLLATE="ch-CN.UTF-8"
LC_MONETARY="ch-CN.UTF-8"
LC_MESSAGES="ch-CN.UTF-8"
LC_PAPER="ch-CN.UTF-8"
LC_NAME="ch-CN.UTF-8"
LC_ADDRESS="ch-CN.UTF-8"
LC_TELEPHONE="ch-CN.UTF-8"
LC_MEASUREMENT="ch-CN.UTF-8"
LC_IDENTIFICATION="ch-CN.UTF-8"
LC_ALL=
后面在网上搜索,说是vim显示中文乱码跟系统编码无关,需要设置vim自身的环境变量,方法如下:
找到vim配置文件vimrc,在我的Linux下面是在路径/etc/vim/vimrc,接着在这个文件最后面添加上如下配置:
vim /etc/vim/vimrc
set fileencodings=utf-8,gb2312,gbk,gb18030
set termencoding=utf-8
set fileformats=unix
set encoding=utf-8
保存退出,配置立即生效。
再用vim打开中文文件时,中文就不会乱码了。
关于在vim配置文件添加的配置的意思如下:
fileencodings : vim启动时会按照它所列出的字符编码方式逐一探测即将打开的文件的字符编码方式,并且将 fileencoding 设置为最终探测到的字符编码方式;
termencoding:vim所工作的终端的字符编码方式;
encoding:vim内部使用的字符编码方式,包括 vim 的 buffer (缓冲区)、菜单文本、消息文本等;
fileformats:设置vim打开文件格式;