解決這個問題是在很久之前,但是近期又遇到了,以免以後忘記了,這裡記錄一下。
首先聲明,如果安裝的ubnutu是英文版的,不知道中文版的會不會出現亂碼問題。
gedit的這個工具,嵌套在linux下,而linux又是國外的高手搞出來的東西,都知道拉,別人都是用的abc,而我們就是用的曲線型文字。實際上,在整個電腦領域,通用的就是abc,誰叫電腦是國外人搞出來的呢。好,不扯了,解決問題。
1、之所以會出現亂碼,則是編碼的字元集不同,國際通用的字元集編碼主要是UTF-8,而恰巧中文的字元編碼預設不是UTF-8,win下面編輯的中文,字元集預設也不是utf8.並且,你儲存的時候,很多人是不會去注意字元集的問題的,所以,要解決這個問題,還是得使得我們自己的文字編輯器適應其他的字元集。Gedit 使用一個編碼匹配列表,只有在這個列表中的編碼才會進行匹配,不在這個列表中的編碼將顯示為亂碼。所以要做的就是將要使用的編碼字元集 加入這個匹配列表。
2、在ubuntu11.X之前,由於使用的gedit版本不同,所以使用的命令也有所不同。所以在ubnutu11及以前,使用的大多數是gedit2.x,那麼使用如下命令:
gconftool-2 --set --type=list --list-type=string /apps/gedit-2/preferences/encodings/auto_detected "[GB18030,UTF-8,CURRENT,ISO-8859-15,UTF-16]",我們要做的,就是將自己要設定的字元集放在"[GB18030,UTF-8,CURRENT,ISO-8859-15,UTF-16]"中,比如我加上一個GB2312,那麼就成了"[GB2312,GB18030,UTF-8,CURRENT,ISO-8859-15,UTF-16]",整個命令就是gconftool-2 --set --type=list --list-type=string /apps/gedit-2/preferences/encodings/auto_detected"[GB2312,GB18030,UTF-8,CURRENT,ISO-8859-15,UTF-16]"。
在ubnutu11之後,使用的gedit也已經升級,gedit3.x了,改變了一下命令,就可以了,實際上是簡化了命令方式》具體命令如下:
gsettings set org.gnome.gedit.preferences.encodings auto-detected"['GB18030', 'GB2312', 'GBK', 'UTF-8', 'BIG5', 'CURRENT','UTF-16']"
gsettings set org.gnome.gedit.preferences.encodings shown-in-menu"['GB18030', 'GB2312', 'GBK', 'UTF-8', 'BIG5', 'CURRENT','UTF-16']"
設定過後,gedit中文亂碼問題,一般情況下會得到解決