2009年3月10日星期二

GTK+界面无法激活FCITX

升级ibus至1.1版本后无法启动。运行ibus-setup报以下错误

Traceback (most recent call last):
File "/usr/share/ibus/setup/main.py", line 359, in
Setup().run()
File "/usr/share/ibus/setup/main.py", line 77, in __init__
self.__init_ui()
File "/usr/share/ibus/setup/main.py", line 90, in __init_ui
self.__config = self.__bus.get_config()
AttributeError: 'Bus' object has no attribute 'get_config'

没办法,从fcitx svn上check了源码(3.6.0RC),打了了一个deb包。安装过程参照了英文Locale下使用中文输入法
, 重启X后, 发现所有的GTK程序无法用激活fcitx, 一番折腾后, 貌似XIM找不到正确的gtk.immodules配置文件引起的。解决办法:
1. gtk-query-immodules-2.0 > ~/.gtk-2.0/gtk.immodules
2. 在.profile文件里增加一行: export GTK_IM_MODULE_FILE=~/.gtk-2.0/gtk.immodules
3. 编辑/etc/X11/Xsession.d/95xinput

#!/bin/bash
export XMODIFIERS="@im=fcitx"
export XIM=fcitx
export XIM_PROGRAM=fcitx
export GTK_IM_MODULE="xim"
export QT_IM_MODULE="xim"
fcitx

4. 注意"xim"大小写要与~/.gtk-2.0/gtk.immodules里一致

没有评论: