我使用的是:set fileencoding=utf-8,文件保存正确,但下次打开它时,我得到了乱码,:set fileencoding?说该选项没有设置。从文档中我了解到我不应该接触encoding选项。在VIM中为文件指定编码的正确方法是什么?
:set fileencoding=utf-8
:set fileencoding?
encoding
hyrbngr71#
用途
set fileencodings=utf-8
(with一个s在末尾),它可以包含一个不同的编码列表。Vim将尝试列出的编码,从左到右,直到一个工作,它将设置fileencoding为该编码。如果没有工作,fileencoding将设置为一个空字符串,这将导致默认行为。同样,将它添加到你的vimrc中可能是有意义的,这样你就不会一直这样做了。
qaxu7uf22#
您应该将fileencodings设置为vim在打开文件时应该尝试的不同编码,例如:
fileencodings
set fileencodings=ucs-bom,utf-8,latin1
从:help fileencodings开始:这是一个字符编码列表,在开始编辑一个现有文件时会考虑这些字符编码。当读取一个文件时,Vim会尝试使用第一个提到的字符编码。如果检测到错误,则会尝试列表中的下一个。当找到一个有效的编码时,会将其设置为fileencoding。你最好把这些设置放在你的.vimrc文件中,这样你就不必在每次启动vim时手动输入它们。
:help fileencodings
fileencoding
.vimrc
eyh26e7m3#
您可以将该指令放入文件的注解中:
# vim: set fileencoding=<encoding name> :
fruv7luv4#
如果vim在打开时不能正确显示文件,请使用**:set encoding=utf8**指定编码
hgb9j2n65#
vim ~/.vimrc
set fileencodings=utf-8 set encoding=utf-8
:wq
cvxl0en26#
我看了很多关于VIM编码的帖子,我发现最重要的窍门是:在打开文件之前,应先打开VIM,然后使用以下命令:edit ++enc= filename.ext它可以处理大多数关于编码和文件编码的问题。要点包括:1.您必须正确显示字符集!没有正确显示,任何其他操作都可能导致不可恢复的问题。1.文件正确显示后,如果需要,可以“:set fileencoding=UTF-8”:write”,让VIM始终能正确显示。因为我不是一个英语母语使用者,我想我的方法是可以被验证的。
nwnhqdif7#
将以下两个函数添加到.vimrc文件中:
function! Latin() silent! exe "e! ++enc=latin1" endfunction function! Utf8() silent! exe "e! ++enc=utf-8" endfunction
然后以这种方式调用函数,键入Esc并
:call Latin() :call Utf8()
7条答案
按热度按时间hyrbngr71#
用途
(with一个s在末尾),它可以包含一个不同的编码列表。Vim将尝试列出的编码,从左到右,直到一个工作,它将设置fileencoding为该编码。如果没有工作,fileencoding将设置为一个空字符串,这将导致默认行为。
同样,将它添加到你的vimrc中可能是有意义的,这样你就不会一直这样做了。
qaxu7uf22#
您应该将
fileencodings
设置为vim在打开文件时应该尝试的不同编码,例如:从
:help fileencodings
开始:这是一个字符编码列表,在开始编辑一个现有文件时会考虑这些字符编码。当读取一个文件时,Vim会尝试使用第一个提到的字符编码。如果检测到错误,则会尝试列表中的下一个。当找到一个有效的编码时,会将其设置为
fileencoding
。你最好把这些设置放在你的
.vimrc
文件中,这样你就不必在每次启动vim时手动输入它们。eyh26e7m3#
您可以将该指令放入文件的注解中:
fruv7luv4#
如果vim在打开时不能正确显示文件,请使用**:set encoding=utf8**指定编码
hgb9j2n65#
cvxl0en26#
我看了很多关于VIM编码的帖子,我发现最重要的窍门是:在打开文件之前,应先打开VIM,然后使用以下命令:edit ++enc= filename.ext它可以处理大多数关于编码和文件编码的问题。
要点包括:
1.您必须正确显示字符集!没有正确显示,任何其他操作都可能导致不可恢复的问题。
1.文件正确显示后,如果需要,可以“:set fileencoding=UTF-8”
:write”,让VIM始终能正确显示。
因为我不是一个英语母语使用者,我想我的方法是可以被验证的。
nwnhqdif7#
将以下两个函数添加到.vimrc文件中:
然后以这种方式调用函数,键入Esc并