在vim中如果需要查看文件的编码格式,只需要在底行模式下输入指令:

set fileencoding

centos vim 查看文本的 编码 vim 查看编码格式_编码格式


       如果想设置vim配置,让它打开文件时,都以某一种格式打开,则需要修改vim的配置文件。

       在 vim 中,有四个与编码有关的选项,它们是:encodingfileencodingfileencodingstermencoding

       encoding 是vim内部使用的字符编码方式。当我们设置了encoding之后,vim内部所有的 buffer、寄存器、脚本中的字符串等,全都使用这个编码。一般我们将它设置为utf8。

       fileencoding vim 中当前编辑的文件的字符编码方式,vim 保存文件时也会将文件保存为这种字符编码方式 (不管是否新文件都如此)。我在设置时,没有设置它,让文件以自己的格式保存。

       fileencodings 编码的自动识别是通过设置 fileencodings 实现的,它是一个用逗号分隔的列表,列表中的每一项是一种编码的名称,后面可以跟多个格式,在打开文件时,vim会根据设置的顺序来自动推测文件的格式。如果没有找到合适的编码,就用latin-1(ASCII)编码打开。

       termencoding 是vim用于屏幕显示的编码,在显示的时候,vim会把内部编码转换为屏幕编码,再用于输出。内部编码中含有无法转换为屏幕编码的字符时,该字符会变成问号,但不会影响对它的编辑操作。如果termencoding 没有设置,则直接使用 encoding 不进行转换。

       普通用户对应的配置文件为~/.vimrc,打开它,在里面添加语句:

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

centos vim 查看文本的 编码 vim 查看编码格式_打开文件_02


       如果想在打开文件时,直接设置文件的打开格式,可以在命令行输入下面指令:

vim a.txt -c "e ++enc=utf8"

       如果在打开文件后想修改文件的编码格式,只需要在底行模式下输入命令:

set fileencoding=utf-8

       如果在打开文件后想查看文件格式,则需要在底行模式下输入命令:

set fileformat?

       如果在打开文件后想设置文件格式为 unix,则需要在底行模式下输入命令:

set fileformat=unix