转载---ubuntu中文输入法输入不了中文

ubuntu中文输入法输入不了中文
sudo vim /etc/profile
在最后添加下面语句
export XMODIFIERS=@im=ibus
export GTK_IM_MODULE=ibus
export QT_IM_MODULE=ibus
XMODIFIERS=@im=ibus
QT_IM_MODULE=xim
重启电脑ok

X11在初始化过程中,需要对输入法做一定的设定,其执行脚本在CentOS7.4中位于这个位置:

/etc/X11/xinit/xinitrc.d/50-xinput.sh

这个脚本可能读取多个配置文件,从而最终决定GTK_IM_MODULE和QT_IM_MODULE变量的值,而不是沿用启动X时已有的值(这就是坑啊);

配置文件的优先权顺序为:

  1. 用户的设定为最高顺位,如果有,文件位于~/.config/imsettings;
  2. 系统设定为次高级顺位,文件位于/etc/X11/xinit/xinputrc,它事实上是一个软链,链接到了/etc/X11/xinit/xinput.d/ibus.conf,没错,这个文件设定了正确的ibus输入法;
    但是(最讨厌的但是),它有个前置条件,需要检查系统的语言环境是否是非英文环境,即如果是英文环境,它会继续从后面的顺位找配置文件;
    这也解释了为什么会有人(资料二)通过修改系统语言解决这个问题,但这里并不是直接检查LANG变量,而是先检查LC_CTYPE,然后才检查LANG;
  3. xxxx,略去不写,有兴趣的自己读一下这个脚本;
  4. 最后,读一个默认的配置文件,位于/etc/X11/xinit/xinput.d//none.conf

就是这个none.conf中,把GTK_IM_MODULE和QT_IM_MODULE变量的值给改成了gtk-im-context-simple与xim。

于是,最后我在~/.bashrc中加了一条环境变量export LC_CTYPE=zh_CN.UTF-8,这样即不会把gnome的菜单改成中文菜单,又可以解决xinput.sh脚本对语言环境的检查,解决了firefox启用ibus的问题;

版权声明:本文为CSDN博主「小妖666」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_38883338/article/details/82153933

另外一个比较全的链接

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值