對GBK,GB2312,GB18030字符集的支持是UBUNTU中文亂碼的罪魁禍首,其實我們可以在保持UTF-8為默認編碼的條件下添加對這幾個編碼的支持,以解決中文亂碼問題。
我想這個問題肯定有其他人已經解決了,但我在論壇找了一會兒沒找到。寫這帖子就是想方便大家以后的使用。
裝過Arch的同學都有感觸,,在Arch下字符集需要自己去選擇,你可以把GBK作為默認字符集,也可以是UTF-8,當然我建議是UTF-8,同時增加對GBK,GB2312,GB18030的支持。
在UBUNTU下實現這個也很簡單,你不用去改系統的默認編碼,也不用改Gedit的默認編碼。
系統支持編碼的修改如下:
1.
cat /usr/share/i18n/SUPPORTED
說明:查看系統支持的字符集,你需要注意的是支持字符集的格式,如對中文會有以下一些顯示(我的系統如此,我不知是否普遍)
zh_CN.GB18030 GB18030
zh_CN.GBK GBK
zh_CN.UTF-8 UTF-8
zh_CN GB2312
2.
sudo vim /var/lib/locales/supported.d/local
說明:打開系統字符集配置文件,將支持的中文字符集添加進去,格式如1中得到所示。
3.
sudo locale-gen
說明:更新。如果2中添加正確應該沒有問題,如果出問題再次編輯2,后再3直至解決。如果正確此時應該可以使用VIM查看GBK編碼的文件了,沒有編碼。但此時用Gedit還不可以,現在我們添加Gedit的字符集支持。
1.
gconf-editor
打開Gnome配置編輯器
2.
app/gedit/preferences/encodings
修改鍵值
auto_detected
添加入GBK,GB2312,GB18030
如果操作成功現在Gedit也沒亂碼了。