VIM編碼設置


vim里面的編碼主要跟三個參數有關:enc(encoding), fenc(fileencoding)和fencs(fileencodings)

fenc是當前文件的編碼,也就是說,一個在vim里面已經正確顯示了的文件(前提是你的系統環境跟你的enc設置匹配),你可以通過改變 fenc后再w來將此文件存成不同的編碼。比如說,我:set fenc=utf-8然后:w就把文件存成utf-8的了,:set fenc=gb18030再:w就把文件存成gb18030的了。這個值對於打開文件的時候是否能夠正確地解碼沒有任何關系。

fencs,是用來在打開文件的時候進行解碼的猜測列表。文件編碼沒有百分百正確的判斷方法,所以vim只能猜測文件編碼。

enc,其作用是顯示, 不管最后的文件是什么編碼的,vim都會將其轉換為當前系統編碼來進行處理,這樣才能在當前系統里面正確地顯示出來,因此enc就是干這個的。在windows下面,enc默認是cp936,這也就是中文windows的默認編碼,所以enc是不需要改的。在 linux下,隨着你的系統locale可能設為zh_CN.gb18030或者zh_CN.utf-8,你的enc要對應的設為gb18030或者 utf-8(或者gbk之類的)。而本人遇到系統locale是en_US.UTF-8,不設置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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM