vim编码设置
vim里面的編碼主要跟三個(gè)參數(shù)有關(guān):enc(encoding), fenc(fileencoding)和fencs(fileencodings)
fenc是當(dāng)前文件的編碼,也就是說(shuō),一個(gè)在vim里面已經(jīng)正確顯示了的文件(前提是你的系統(tǒng)環(huán)境跟你的enc設(shè)置匹配),你可以通過改變 fenc后再w來(lái)將此文件存成不同的編碼。比如說(shuō),我:set fenc=utf-8然后:w就把文件存成utf-8的了,:set fenc=gb18030再:w就把文件存成gb18030的了。這個(gè)值對(duì)于打開文件的時(shí)候是否能夠正確地解碼沒有任何關(guān)系。
fencs,是用來(lái)在打開文件的時(shí)候進(jìn)行解碼的猜測(cè)列表。文件編碼沒有百分百正確的判斷方法,所以vim只能猜測(cè)文件編碼。
enc,其作用是顯示, 不管最后的文件是什么編碼的,vim都會(huì)將其轉(zhuǎn)換為當(dāng)前系統(tǒng)編碼來(lái)進(jìn)行處理,這樣才能在當(dāng)前系統(tǒng)里面正確地顯示出來(lái),因此enc就是干這個(gè)的。在windows下面,enc默認(rèn)是cp936,這也就是中文windows的默認(rèn)編碼,所以enc是不需要改的。在 linux下,隨著你的系統(tǒng)locale可能設(shè)為zh_CN.gb18030或者zh_CN.utf-8,你的enc要對(duì)應(yīng)的設(shè)為gb18030或者 utf-8(或者gbk之類的)。而本人遇到系統(tǒng)locale是en_US.UTF-8,不設(shè)置enc顯式不了中文,最后配置enc為utf-8才能顯式。
最后給出Linux編碼全部是UTF-8,VIM可以顯示中文的vimrc文件的配置:
set fileencodings=utf-8,gb2312,gbk,gb18030,big5 set fenc=utf-8 set enc=utf-8總結(jié)
- 上一篇: vi(vim)常用命令汇总
- 下一篇: vim 代码提示功能,让vim可以媲美I