求解决:gedit在sudo模式下不能输入中文
Tofloor
poster avatar
st******[email protected]
deepin
2012-08-06 00:57
Author
系统:deepin 12.06
      问题描述:直接点击图标打开gedit编辑文件,无任何异常;有时编辑配置文件,需要超级用户身份,于是在命令行运行 sudo gedit,但发现小企鹅输入法无论如何切换都只能在英文状态,无法在文件中输入中文。另外,使用第三方文本编辑器——SciTE,情况和gedit一样。
      这是小企鹅输入法的配置问题吗?还是locale之类的文件没有写好?求解决,谢谢!
Reply Favorite View the author
All Replies
cxbii
deepin
2012-08-06 05:21
#1
root 下,不可以用输入法,为了安全,所以不是bug,要打汉字,可以用复制粘贴。。。
Reply View the author
zamffkfc
deepin
2012-08-06 07:53
#2
将gedit写入的编码也设置成gbk或者18030,,起码我用ibus好像没这问题!!我参考了下面这篇文章解决的,,“Ubuntu设置中文编码
去论坛讨论 来源: 作者: 发布时间:2008-01-05
Ubuntu 默认采用UTF8编码,可以方便global。但对中文支持,还不细致,即便默认采用中文安装,也并不会自动添加GB*等支持,致使在Ubuntu下访问部分Win文本文件时,出现乱码。

I. 配置系统环境
执行 sudo vi /var/lib/locales/supported.d/zh
加入以下配置参数

zh_CN.GB18030 GB18030 (最新汉字编码字符集,向下兼容GBK,GB2312)
zh_CN.GBK GBK (汉字扩展编码,向下兼容GB2312, 并包含BIG5全部汉字)
zh_CN.GB2312 GB2312 (简化汉字编码字符集, 最近有客户要我们改进GB2312,太看得起我们了,我只能说:"NO!")
zh_CN.GB18031 GB18031 (数字键盘汉字编码输入,面向手持设备,我的Nokia3120从来就是发短信,接听电话,无法和PC通讯,就不用这个了。 maybe用Google Android SDK的大侠们需要这个)
zh_HK.BIG5 BIG5 (繁体)
zh_TW.BIG5 BIG5 (繁体)

然后执行 sudo locale-gen
提示以下信息,成功了
zh_CN.GB18030... done
zh_CN.GBK... done
......

II. 系统环境支持GB*内码了,但用vi, gedit等工具访问文件还会继续乱码,需要针对不同的工具分别配置,使之自己检测支持范围内的编码
e.g. vi
执行 sudo vi /etc/vim/vimrc
加入以下配置参数
let &termencoding=&encoding
set fileencodings=utf-8,gb18030,gbk,gb2312,big5

e.g. gedit
执行 sudo gconf-editor
选择 apps/gedit-2/preferences/encodings
找到 auto_detected 编辑,在Values中分别加入 GB18030,GBK,GB2312,BIG5

OK~

感谢lec的支援。
enca工具很方便,用于检测文件内码(前提是系统环境支持,如,环境不支持BIG5,是无法检测的,这个晕了我许久)
安装 sudo apt-get install enca
用法 enca filename
这个工具是在google搜索到的(http://blog.oolec.com/?p=79),绕了地球一圈才找到,猛发现文章作者就坐在我旁边,以后再找东西先问问,别瞎跑。 “
Reply View the author
zamffkfc
deepin
2012-08-06 07:56
#3
再说一句,,最后的文件名已经有所改动,,所以,,你最好到相应的目录去看下,,
Reply View the author