Shugo Maeda
shugo****@ruby-*****
2004年 7月 7日 (水) 02:08:36 JST
前田です。 TOKUNAGA Hiroyuki wrote: > 特定のIM(uim-anthyとか、uim-primeとか)に対してで良ければ、割と簡単にでき > ます。例えば、uim-primeで、Escapeを押した際にIMを半角英数モードにしつつ > アプリケーションにescapeを送るならこんな感じです。 > > (define prime-push-key-orig prime-push-key) > (define prime-push-key > (lambda (c key key-state) > (if (= key 'escape) > (prime-context-set-mode! (context-data c) prime-mode-latin)) > (prime-push-key-orig c key key-state))) > > 将来的にこのカスタマイズがずっと可能であると保証はできませんが、しばらく > はこれでいけると思います。 うまく行きました、ありがとうございました。 Katoさんに教えていただいたuim-skk用のコードを参考にControl-[でも同じ挙動 にして、uim-appletのモード表示も更新されるようにしてみました。 (define prime-push-key-orig prime-push-key) (set! prime-push-key (lambda (c key key-state) (if (or (= key 'escape) (and (= key 91) ;; [ (= key-state 2))) ;; control (let ((sc (context-data c)) (id (context-id c))) (prime-context-set-mode! sc prime-mode-latin) (prime-update-mode id sc))) (prime-push-key-orig c key key-state))) 何か問題がありましたら御指摘ください。 これで快適に使えそうです:) -- 前田 修吾