因為在windows下默認是gb編碼,而我的vim默認是utf-8(gedit默認也是utf-8),所以打開會成亂碼。改動了一下配置文件,使vi支持gb編碼就好了。
$vi ~/.vimrc
let &termencoding=&encoding
set fileencodings=utf-8,gbk
$:wq
再次打開vi,顯示就正常了。
vim中編輯不同編碼的文件時須要注意的一些地方
此文解說的是vim編輯多字節編碼文檔(中文)所要了解的一些基礎知識,注意其沒有涉及gvim,純指字符終端下的vim。
vim編碼方面的基礎知識:
1,存在3個變量:
encoding—-該選項使用於緩沖的文本(你正在編輯的文件),寄存器,Vim 腳本文件等等。你能夠把 ‘encoding’ 選項當作是對 Vim 內部執行機制的設定。
fileencoding—-該選項是vim寫入文件時採用的編碼類型。
termencoding—-該選項代表輸出到客戶終端(Term)採用的編碼類型。
2,此3個變量的默認值:
encoding—-與系統當前locale同樣,所以編輯文件的時候要考慮當前locale,否則要設置的東西就比較多了。
fileencoding—-vim打開文件時自己主動辨認其編碼,fileencoding就為辨認的值。為空則保存文件時採用encoding的編碼,假設沒有改動encoding,那值就是系統當前locale了。
termencoding—-默認空值,也就是輸出到終端不進行編碼轉換。
由此可見,編輯不同編碼文件須要注意的地方不不過這3個變量,還有系統當前locale和、文件本身編碼以及自己主動編碼識別、客戶執行vim的終端所使用的編碼類型3個關鍵點,這3個關鍵點影響着3個變量的設定。
來源:http://blog.163.com/little_320/blog/static/38789520091116103325859/