Takuro Ashie
ashie****@clear*****
2009年 2月 5日 (木) 18:37:06 JST
足永@クリアコードです。 hidekichi さんは書きました: > アドバイスありがとうございます。 > > 遅くなりましたが、サンプルを作ってみました。 > forward_key_event()でscimでanthyを設定して送信してみましたが、メモ帳には > 確定文字のカタカナが送信されました。 > 事前に何かモードを切り換えるようなことが必要なのでしょうか? > (一応右下のscimの表示は[あ]になってます) > scim-anthyのひらがなモードかカタカナモードが有効になった状態であれば、 SCIM_KEY_kana_*(X Window SystemのkeysymではXK_kana_*)系のキーイベントが 飛んできた 場合には、入力方式がローマ字入力であっても強制的にかな入力モードとして処 理され、 アプリケーションには未確定文字列として入力されるはずです。 ですので、この場合は、入力モードに関しては問題無いかと思います。 > SCIM_KEY_kana_aでは"ァ"、SCIM_KEY_kana_A では"ア"でした。 > 症状を見ると、scim-anthyにキーイベントが届いておらず、アプリケーション側 で直接イベントが 処理されてしまっているように見えます。 send_key_event()を使用した場合は如何でしょうか? 私はforward_key_event()でもscim-anthyにキーイベントが届くと記憶していた のですが、 記憶違いだったかもしれません。 昔、SCIM用のソフトウェアキーボードを実装された方がいたのですが、 http://nop.net-p.org/modules/pukiwiki/index.php?cmd=read&page=%5B%5Bnagisa%2FRelease-0.0.1%5D%5D 今ソースを確認してみたところ、こちらではforward_key_event()ではなく send_key_event()を 使っていました。 このソフトでは、少なくとも私が試した当時は、scim-anthyにキーイベントが到 達していました。 -- Takuro Ashie <ashie****@clear*****>