Masanari Yamamoto
h0131****@ice*****
2005年 8月 28日 (日) 16:50:05 JST
uimではIMを切り替える方法として、uim-im-siwtcherによる方法と、 switch-im-keyによる方法があります。uim-im-switcherによる方法は、bridge 側からuim.cのuim_switch_imを呼びだし、switch-im-keyによる方法は、IM側 からim.scmのswitch-imを呼びだします。 switch-imではrelease-contextとcreate-contextを呼びます。 uim_switch_imではreset-handler、release-context、create-contextを呼び、 Cレベルでのプリエディットのリセット(uim_release_preedit_segments)とIM 名の変更(uc->current_im_name = strdup(engine))を行います。 switch-imでもuim_switch_imと同様の処理が必要だと思います。 少なくともcurrent_im_nameを適切に設定しなければ、switch-imを切り替えた 後にuim-im-switcherを起動するとuim-im-switcherが前のIMを指してしまいま す。 -- 山本将也