yusuk****@cheru*****
yusuk****@cheru*****
2005年 1月 12日 (水) 19:26:32 JST
田畑です。こんにちは。 > はじめまして。中本と申します。 > > Anthy個人辞書管理ツールの開発をしているものです。 > > 非常に汚いやり方になってしまいますが、アプリケーション側から直接uimをひ > らがなモードにする方法はないのでしょうか? 汚い方法で良いならばいくつか方法はあるのですが、 uim_helper_send_message(fd, "prop_activate\nhiragana\n"); のようにhelperのメッセージを送るとなんとかなりそうな気がします。 詳細はuim/helper/toolbar-common-gtk.cなどの見てください。 別の方法としてはフォーカスが入った時にtext widgetのポインタを取ってきて、 GtkTextViewにキャストして、text_view->im_context->filter_keypress()に shift spaceを送り込むことでなんとかする手もあり、これだとscim-anthyでも なんとかなりそうです。ただ、現在のモードがわからないと、どっちに変化するか わかりませんね。 多くのtext widgetの場合、text_view->im_contextはGtkIMMultiContextなので、 メニューによるinput method切替えと同じ処理をして、contextを作りなおせば、 状態が初期状態の英数モードであることを確定できるかと思います。 我ながら本当に汚い方法ですねえ...幻滅されそう。 -- CHAOS AND CHANCE! Yusuke TABATA (yusuk****@cheru*****)