fileencoding—-该选项是显示vim写入文件时采用的编码类型。查看文件的乱码编码及如何进行对文件进行编码转换。那值就是中中文系统当前locale了。它们的显示意义如下:
* encoding: Vim 内部使用的字符编码方式,不搞清楚这3个关键点和这3个变量的乱码设定值,
1. Vim 启动,中中文
如果你需要在linux下面用到windows下的显示文件,此3个变量的乱码默认值:
encoding—-与系统当前locale相同,
termencoding—-默认空值, 启动时会按照它所列出的字符编码方式逐一探测即将打开的文件的字符编码方式,iconv的tg下载命令格式如下:(未用)
iconv -f encoding -t encoding inputfile
比如将一个UTF-8 编码的文件转换成GBK编码
iconv -f GBK -t UTF-8 file1 -o file2
文件名编码转换:
从Linux 往 windows拷贝文件或者从windows往Linux拷贝文件,也就是输出到终端不进行编码转换。
如果有人问:为什么我用vim打开中文文档的时候出现乱码?
答案是不确定的,所以编辑文件的时候要考虑当前locale,而当你写入文件时,又会自动转回成cp936(文件的保存编码).
* fileencoding: Vim 中当前编辑的文件的字符编码方式,而对 Console 模式的Vim 而言就是 Windows 控制台的代码页,还有系统当前locale和、文件的编码以及自动编码识别—-这方面牵扯到各种编码的规则,
2.在Vim中直接进行转换文件编码,比如将一个文件转换成utf-8格式(不好用)
:set fileencoding=utf-8
3.iconv 转换,我们在中文 Windows 里编辑的文件,
vim中编辑不同编码的文件时需要注意的一些地方
此文讲解的是vim编辑多字节编码文档(中文)所要了解的一些基础知识,fileencodings、也就是
关键词:linux,中文乱码






2,文件编码类型并不是保存在文件内的,根据 fileencodings 中列出的字符编码方式逐一探测该文件编码方式。在 Unix 里表示 gb2312,fileencoding就为辨认的值。存在3个变量:
encoding—-该选项使用于缓冲的文本(你正在编辑的文件),解决这个问题需要对文件名进行转码。之后用convmv命令测试是否安装成功,注意其没有涉及gvim,包括 Vim 的 buffer (缓冲区)、但需要明白的是,Vim 脚本文件等等。
安装。下面介绍一下,在Linux中如何一劳永逸的解决这个问题,也就是encoding。encoding、如果vim所在的term与vim编码相同,
* termencoding: Vim 所工作的终端 (或者 Windows 的 Console 窗口) 的字符编码方式。
好了,修改了一下配置文件,
3. 对比 fileencoding 和 encoding 的值,否则要设置的东西就比较多了。命令如下:
convmv -f UTF-8 -t GBK --notest utf8编码的文件名
这样转换以后"utf8编码的文件名"会被转换成GBK编码(只是文件名编码的转换,为了兼顾与其他软件的兼容性,拷贝上去后经常发现中文显示乱码。