urxvt で scim が使えなかった
いつ頃からか、urxvt 内で SCIM が使えなくなっていた。
firefox などでは Shift+SPACE で SCIM が使えているのに、urxv 内では Shift+SPACE を押しても何も起こらない。
試行錯誤してみたら原因が分かった。
~/.xinitrc に下記のように書いていたのだが、結論としては、これらの環境変数の設定とは別に scim を -d オプション付きで起動させておく必要があったようだ。
if [ -x /usr/local/bin/ibus-daemon ]; then # ibus export XIM=ibus export GTK_IM_MODULE=ibus export QT_IM_MODULE=xim export XMODIFIERS=@im=ibus export XIM_PROGRAM="ibus-daemon" export XIM_ARGS="--daemonize --xim" /usr/local/bin/ibus-daemon -xrRd elif [ -x /usr/local/bin/scim ]; then export XIM=scim export GTK_IM_MODULE=scim export QT_IM_MODULE=scim export XMODIFIERS="@im=SCIM" export XIM_PROGRAM="scim" export XIM_ARGS="-d" fi
差分としては下記のようになる。
export XMODIFIERS="@im=SCIM" export XIM_ARGS="-d" + /usr/local/bin/scim -d fi
この結果、scim-launcher プロセスが二つ立ち上がるようだ。
% ps -xww|grep scim 82343 - Is 0:00.03 /usr/local/lib/scim-1.0/scim-launcher -d -c simple -e all -f socket --no-stay 82347 - Is 0:00.00 /usr/local/lib/scim-1.0/scim-helper-manager 82348 - Ss 0:00.10 /usr/local/lib/scim-1.0/scim-panel-gtk --display :0 -c socket -d --no-stay 82349 - Ss 0:00.28 /usr/local/lib/scim-1.0/scim-launcher -d -c socket -e socket -f x11 82502 2 RL+ 0:00.00 grep scim