一、下載vim
可到http://www.vim.org/下載最新的7.3版本的vim源碼。編輯器
二、安裝編碼
在編譯以前,先要./configure --help查看一下配置選項,
其中這個配置須要加進來:--enable-multibyte Include multibyte editing supportspa
其做用是支持多字節編碼,這一步應該是很重要。否則後面的配置貌似沒什麼用,不知道我說得對不對^_^。code
在配置好了之後,天然是常規的:make 、make install了
utf-8
三、最後是vimrc的腳本配置了源碼
編輯~/.vimrc文件,加上以下幾行:it
set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936
set termencoding=utf-8
set encoding=utf-8字符編碼
便可搞定。編譯
順便記錄一下Vim編碼的詳細介紹
Vim和全部的流行文本編輯器同樣,Vim 能夠很好的編輯各類字符編碼的文件,這固然包括 UCS-二、UTF-8 等流行的 Unicode 編碼方式。
Vim 有四個跟字符編碼方式有關的選項,encoding、fileencoding、fileencodings、termencoding (這些選項可能的取值請參考 Vim 在線幫助 :help encoding-names),它們的意義以下:
(1)encoding: Vim 內部使用的字符編碼方式,包括 Vim 的 buffer (緩衝區)、菜單文本、消息文本等。用戶手冊上建議只在 .vimrc 中改變它的值,事實上彷佛也只有在 .vimrc 中改變它的值纔有意義。
(2)fileencoding: Vim 中當前編輯的文件的字符編碼方式,Vim 保存文件時也會將文件保存爲這種字符編碼方式 (不論是否新文件都如此),網上是這樣介紹的,可是我這樣作在.vimrc中定義爲utf-8彷佛沒有做用,只能在打開vim文件時手動設置纔會起效,不 知道什麼緣由。
(3)fileencodings: Vim 啓動時會按照它所列出的字符編碼方式逐一探測即將打開的文件的字符編碼方式,而且將 fileencoding 設置爲最終探測到的字符編碼方式。所以最好將 Unicode 編碼方式放到這個列表的最前面,將拉丁語系編碼方式 latin1 放到最後面。
(4)termencoding: Vim 所工做的終端 (或者 Windows 的 Console 窗口) 的字符編碼方式。這個選項在 Windows 下對咱們經常使用的 GUI 模式的 gVim 無效,而對 Console 模式的 Vim 而言就是 Windows 控制檯的代碼頁,而且一般咱們不須要改變它。
再來記錄一下 Vim 的多字符編碼方式支持是如何工做的。
(1)Vim 啓動,根據 .vimrc 中設置的 encoding 的值來設置 buffer、菜單文本、消息文的字符編碼方式。
(2)讀取須要編輯的文件,根據 fileencodings 中列出的字符編碼方式逐一探測該文件編碼方式。並設置 fileencoding 爲探測到看起來是正確的 字符編碼方式,若是沒有找到合適的編碼,就用latin-1(ASCII)編碼打開。
(3) 對比 fileencoding 和 encoding 的值,若不一樣則調用 iconv 將文件內容轉換爲 encoding 所描述的字符編碼方式,而且把轉換後的內容放到爲此文件開闢的 buffer 裏,此時咱們就能夠開始編輯這個文件了。
(4)編輯完成後保存文件時,再次對比 fileencoding 和 encoding 的值。若不一樣,再次調用 iconv 將即將保存的 buffer 中的文本轉換爲 fileencoding 所描述的字符編碼方式,並保存到指定的文件中。
因爲 Unicode 可以包含幾乎全部的語言的字符,並且 Unicode 的 UTF-8 編碼方式又是很是具備性價比的編碼方式 (空間消耗比 UCS-2 小),所以建議 encoding 的值設置爲 utf-8。這麼作的另外一個理由是 encoding 設置爲 utf-8 時,Vim 自動探測文件的編碼方式會更準確 (或許這個理由纔是主要的 ;) 。咱們在中文 Windows 裏編輯的文件,爲了兼顧與其餘軟件的兼容性,文件編碼仍是設置爲 GB2312/GBK 比較合適,所以 fileencoding 建議設置爲 chinese (chinese 是個別名,在 Unix 裏表示 gb2312,在 Windows 裏表示 cp936,也就是 GBK 的代碼頁)。