解决linux下面(ubnutu)的gedit打开文本中文乱码

来源:互联网 发布:哪种网络编程语言 编辑:程序博客网 时间:2024/05/14 18:40

解决这个问题是在很久之前,但是近期又遇到了,以免以后忘记了,这里记录一下!

首先声明,如果安装的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中文乱码问题,一般情况下会得到解决

0 0