您尚未登录。

#1 2015-05-03 13:10:49

东风唯笑
会员
注册时间: 2011-12-29
帖子: 11

gdm 登陆管理器导致 fcitx 不能正常输入

登陆管理器:GDM
桌面环境:Gnome
输入法:fcitx-im(包括qt5)
/etc/profile:在最后添加了:
export GTK_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
export QT_IM_MODULE=fcitx

实际测试发现,当使用gdm+gnome这样的搭配,会导致fcitx在gtk3程序中无法正常的输入,假如换用其它的登陆管理器比如sddm就没有问题。或者是在gnome-terminal中输入gedit,那么可以在gedit中正常输入。

所以初步怀疑,gdm没有读取配置文件,甚至,连自己的 /etc/gdm/Xsession 文件都没有读取(将上面的3行添加到此文件,也不生效)。

此问题,我也请Yuking-net帮我试了,最终确定还是gnome这边有问题,不知道各位情况如何,请大家协助,要是最终确定有问题,可能需要提交bug。

离线

#2 2015-05-04 16:59:28

hyslion
会员
注册时间: 2011-09-06
帖子: 1

Re: gdm 登陆管理器导致 fcitx 不能正常输入

先前和 vanitas 碰過,參考此帖
vanitas 很熱心的回報了 bug,也得到了開發者的回應

回應裡面寫得很清楚了,也有提供解決方法。基本上是因為 GNOME 3.16 的新特性所造成的。
要注意的是 "{'Gtk/IMModule':'your-im-module'}" 應該加上角括號,像是這樣 "{'Gtk/IMModule':<'fcitx'>}" 才不會出錯,這樣重新登入就可以解決了。
看想用回應裡面開發者提供的指令還是用 dconf-editor 自己找著改都可以。

但某天又發現失效了,才偶然發現 gnome-tweak-tool (可能其他設定工具也會) 會把那個欄位覆寫,所以寫了一個簡單的小程式來幫忙設定 gtk 輸入法。
使用方法是

$ ./gnome-gtk-im-helper.py fcitx

,fcitx 可以代換成其他的輸入法。
我自己使用上是怕有其他程式也動到那個設定,所以把那串也加到了

~/.xprofile

,好確保每次登入後都有輸入法可以用,也不會因為那串指令而蓋掉其他程式寫下的設定值。

最後感謝 vanitas 的討論跟回報 bug,今天才有官方提供的解決方法可以用。

离线

#3 2015-07-05 10:23:23

wtry
会员
注册时间: 2011-08-20
帖子: 56

Re: gdm 登陆管理器导致 fcitx 不能正常输入

贴吧找到你解决办法
gsettings set org.gnome.settings-daemon.plugins.xsettings overrides "{'Gtk/IMModule':<'fcitx'>}"

离线

页脚