我正在使用:set fileencoding=utf-8
并且文件已正确保存,但是下次打开它时,我会收到乱码,并:set fileencoding?
说未设置该选项.
从文档中我了解到我不应该触及该encoding
选项.
在VIM中为文件指定编码的正确方法是什么?
使用
set fileencodings=utf-8
(末尾带有s),其中可以包含不同编码的列表.Vim将尝试从左到右列出的编码,直到一个工作,它将文件编码设置为该编码.如果没有工作,则fileencoding设置为空字符串,这将导致默认行为.
此外,将它添加到您的vimrc可能是有意义的,因此您不会经常这样做.
你应该设置fileencodings
vim打开文件时应该尝试的不同编码,例如:
set fileencodings=ucs-bom,utf-8,latin1
来自:help fileencodings
:
这是开始编辑现有文件时考虑的字符编码列表.读取文件时,Vim会尝试使用第一个提到的字符编码.如果检测到错误,则尝试列表中的下一个错误.当找到有效的编码时,
fileencoding
将其设置为它.
您最好将这些设置放在.vimrc
文件中,这样您每次启动vim时都不必手动输入它们.
您可以将该指令放入文件中的注释中:
# vim: set fileencoding=:
如果vim在打开时未正确显示文件,请使用以下命令指定编码 :set encoding = utf8