分類: 技巧

VIM 編輯器顯示萬國碼(Unicode)文字,解決亂碼問題

這裡介紹如何設定 Vim 編輯器使用 UTF8 編碼,解決中文字出現亂碼的問題。

現在許多的文字資料都會以萬國碼(Unicode)的方式來編碼,尤其是在包含中文的文字檔時,UTF8 是最常見的編碼格式,而在使用 Vim 開啟這類的文字檔案時,如果預設的編碼不是 UTF8,中文的部分就會跑出亂碼,以下教大家如何設定 Vim 來解決這個問題。


就我個人而言,都是習慣使用 Vim 來寫程式,偶而會在程式碼中放一些中文註解,Vim 沒有設定好編碼的話,就會像這樣出現一堆亂碼。

Vim 呈現亂碼

這時候可以更改 encoding 這個設定,它可用來指定 Vim 內部對於文字編碼方式:

set encoding=utf8

另外 fileencoding 是用來設定特定檔案的編碼,使用 setglobal 可以設定它的預設值。

setglobal fileencoding=utf-8

fileencoding 若設定為空字串則表示跟 encoding 所指定的編碼方式相同。

如果要立即更改 Vim 的設定,可直接使用在指令列命令模式(command-line mode)設定 fileencoding

更改 Vim 的編碼

通常這樣應該就可以正常顯示中文了。

Vim 顯示 UTF8 編碼文字

如果要讓 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

G. T. Wang

個人使用 Linux 經驗長達十餘年,樂於分享各種自由軟體技術與實作文章。

Share
Published by
G. T. Wang
標籤: Vim

Recent Posts

光陽 KYMCO GP 125 機車接電發動、更換電瓶記錄

本篇記錄我的光陽 KYMCO ...

2 年 ago

[開箱] YubiKey 5C NFC 實體金鑰

本篇是 YubiKey 5C ...

3 年 ago

[DIY] 自製竹火把

本篇記錄我拿竹子加上過期的苦茶...

3 年 ago