linux下使用vim打開文件亂碼問題解決方案

方案一:修改.vimrc文件php

 

添加下面一行代碼vim

set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1測試

編碼的先後順序表明了vim在識別文件編碼使用的優先次序,因此在不瞭解的狀況下不要更改上述編碼的次序編碼


注:這種方法會有一個BUG:就是 GBK 編碼的「聯通」被誤判爲 UTF-8 編碼,
不過這種狀況只發生在一個gbk編碼的文件中只有"聯通"兩個漢字。文件中包含「聯通」這個詞並不會有任何問題,插件

因此這種狀況發生的可能性是極低的,只要知道這種狀況就好了。若是這種狀況真的發生了,你能夠臨時將上面的ip

代碼改爲utf-8

set fileencoding=gb18030開發

以後再改回去便可。get

一樣,若是你遇到了其它亂碼的狀況時,若是你知道文件使用的編碼,也能夠將fileencoding暫設置成文件使用的編碼便可解決。社區

 

方案二:安裝vim插件

 

推薦水木社區的 mbbill 開發的 fencview 插件。
該插件使用詞頻統計的方式識別編碼,正確率很是高。

這裏下載:http://www.vim.org/scripts/script.php?script_id=1708

 

下載完後把它移動到vim插件目錄,vim7.2默認應該是/usr/share/vim/vim72/plugin/

啓用插件的時候,在vim命令模式下輸入如下命令

:FencAutoDetect 自動檢測文件編碼 (推薦)

:FencView 在編碼列表中選擇文件的編碼

:FencManualEncoding coding 手動設置文件編碼,用你想使用的編碼代替coding

通過個人測試,這種方法沒有上面經典的「聯通」識別錯誤的BUG
相關文章
相關標籤/搜索