這裡介紹如何設定 Vim 編輯器使用 UTF8 編碼,解決中文字出現亂碼的問題。
現在許多的文字資料都會以萬國碼(Unicode)的方式來編碼,尤其是在包含中文的文字檔時,UTF8 是最常見的編碼格式,而在使用 Vim 開啟這類的文字檔案時,如果預設的編碼不是 UTF8,中文的部分就會跑出亂碼,以下教大家如何設定 Vim 來解決這個問題。
這時候可以更改 encoding
這個設定,它可用來指定 Vim 內部對於文字編碼方式:
set encoding=utf8
另外 fileencoding
是用來設定特定檔案的編碼,使用 setglobal
可以設定它的預設值。
setglobal fileencoding=utf-8
fileencoding
若設定為空字串則表示跟 encoding
所指定的編碼方式相同。
如果要立即更改 Vim 的設定,可直接使用在指令列命令模式(command-line mode)設定 fileencoding
:
通常這樣應該就可以正常顯示中文了。
如果要讓 Vim 自動可以處理這個問題,可以將這段程式碼貼進 vimrc
檔案中:
if has("multi_byte") if &termencoding == "" let &termencoding = &encoding endif set encoding=utf-8 setglobal fileencoding=utf-8 "setglobal bomb set fileencodings=ucs-bom,utf-8,latin1 endif
這樣以後使用 Vim 編輯中文的文字,就不會有亂碼了。
參考資料:wikia