Ubuntu 14.04 16.04 gedit 中文乱码

乱码原因【6】:

打开部分Windows下的txt文本文件的时候,中文显示为乱码。但是自己用Gedit编写新文件的时候,输入的中文却可以正常显示,保 存后再退出也可以正常显示。而且对于Windows下的文本文件,也不是全部含有中文的都显示为乱码。

整理下思路,如果真的是中文无法正常显示的问题,也就是字体设置问题,是不应该有文件能够正常显示中文的,应该全部乱码才对。而事实上并非如此,所以这个猜测可以排除。那么,会不会是文件编码的问题?Linux下默认的编码是UTF-8,而Windows下默认的编码是GB2312/GBK。难道是 编码问题引起的问题?切换到Windows系统下,输入一段中文后,保存为UTF-8的txt文件,然后再另存同一个文件为GB2312编码格式。再次切 换到Ubuntu 14.04下,打开这两个文件,果然GB2312编码的文件乱码了。

NOTE【6】中的解决方法使用的gconf-editor在Ubuntu12.04后已没有“/apps/gedit-2/”项。需要使用dconf-editor来修改。gnome2 的 “注册表编辑器” gconf-editor 正在被 dconf-editor 所取代,更多的隐藏设置也可以通过 dconf-editor 进行修改。

解决方法【7】:

1. 打开终端,在其中输入命令:

sudo dconf-editor

如果dconf-editor没安装,先使用sudo apt-get install dconf-editor 安装。

2. 在新开的窗口里,在左边依次展开/org/gnome/gedit/perferences/encodings,修改其中的配置信息,在auto-detected项的value中的'UTF-8'后面添加, 'GB18030',在shown-in-menu对应值的后面添加上, 'GB18030'(注意逗号后面有个空格)。关闭然后再次运行Gedit即可生效。

Ubuntu 14.04 16.04 gedit 中文乱码_第1张图片

更新到16.04,gedit打开中文时,依然存在乱码的问题。ubuntu官方给出的解决方案是,gedit3.x以上版本的在命令终端输入命令:
gsettings set org.gnome.gedit.preferences.encodings auto-detected “[‘GB18030’, ‘UTF-8’, ‘CURRENT’, ‘ISO-8859-15’, ‘UTF-16’]” 来解决。
但是输入命令后提示无”auto-detected”键值。
Ubuntu 14.04 16.04 gedit 中文乱码_第2张图片
难道是ubuntu16.04把这个键值给改了?
只能用dconf-editor进行查看一下。终端输入dconf-editor命令,找到
Ubuntu 14.04 16.04 gedit 中文乱码_第3张图片
看来键值真的是更改了,可以直接在dconf-editor下把”candidate-encodings”的值更改为”[‘GB18030’, ‘UTF-8’, ‘CURRENT’, ‘ISO-8859-15’, ‘UTF-16’]”。
问题找到了,如果用命令进行更改的话,可以输入命令
gsettings set org.gnome.gedit.preferences.encodings candidate-encodings “[‘GB18030’, ‘UTF-8’, ‘CURRENT’, ‘ISO-8859-15’, ‘UTF-16’]” 来解决。

 

你可能感兴趣的:(ubuntu)