[Anthy-dev 1523] Re: モード番号について

Back to archive index

YamaKen yamak****@bp*****
2004年 12月 29日 (水) 13:16:43 JST


ヤマケンです。返事が遅くなってすいません。

At Sat, 25 Dec 2004 15:48:29 +0900,
h0131****@ice***** wrote:
> On Mon, Dec 20, 2004 at 01:24:19AM +0900, Masanari Yamamoto wrote:
> > uim-fepでは外部からモードを変更できるようになっていて、vimにパッチを当
> > てることによってvimのモードと連動できるのですが、rev1650ではその機能が
> > 使えないという報告がありました。
> > http://pc5.2ch.net/test/read.cgi/unix/1096785924/338
> > 
> > 原因は以下のようにモード番号が変わったことです。
> > 
> > >0 -- 直接入力       1 -- ひらがな
> > >
> > >だったのが
> > >0 -- ひらがな       1 -- カタカナ
> > >2 -- 半角カタカナ   3 -- 直接入力
> > >4 -- 全角英数
> > 
> > 仕様に書いていなことを利用した僕が悪いのですが、今までと同じように、0
> > が直接入力で1がひらがなにして頂けないでしょうか?
> > 
> > もしそれが無理なら、直接入力とひらがなのモード番号を取得する方法を用意
> > して頂けないでしょうか?
> 
> {anthy,skk,canna}-input-mode-actionsの順番によってモード番号が決まるよ
> うなので、0が直接入力、1がひらがなになるようにしてみました。
> 
> 以下の変更をコミットしても問題ないでしょうか?

はい。とりあえずそうしてください。

action.scmを導入する時にそのように直接入力を先頭に持ってこようか
迷ったんですが、ひとまず以前の並び順に従っていました。

ただし、この並び順は.uim等でカスタマイズできるようになっているの
で、変更された場合はuim-fepで意図した通りに動かなくなりますので
注意してください。

これを本質的に解決するには各IMローカルなモード群(canna_directと
かskk_latinとか)を統合するか、あるいはローカルなモード名はそのま
まに上位概念として直接入力モードを取り扱えるようにするかといった
検討と実装が必要です。実現は先の話になると思います。

ただし、そのへんの事情はaction framework内で隠蔽して解決できるよ
うにIM本体とのインタフェイスが疎になるように設計してあるので、IM
本体のコードに手を入れる事なく比較的自由に仕様変更できるようになっ
ています。ブリッジ側とのインタフェイスを変更する時はもちろんよく
検討する必要がありますが。その時になったらまた相談させてください。

> % svn diff scm
> Index: scm/canna.scm
> ===================================================================
> --- scm/canna.scm       (revision 64)
> +++ scm/canna.scm       (working copy)
> @@ -90,10 +90,10 @@
> 
>  ;; actions of widget_canna_input_mode
>  (define canna-input-mode-actions
> -  '(action_canna_hiragana
> +  '(action_canna_direct
> +    action_canna_hiragana
>      action_canna_katakana
>      action_canna_hankana
> -    action_canna_direct
>      action_canna_zenkaku))
> 
>  ;; actions of widget_canna_kana_input_method
> Index: scm/anthy.scm
> ===================================================================
> --- scm/anthy.scm       (revision 64)
> +++ scm/anthy.scm       (working copy)
> @@ -92,10 +92,10 @@
> 
>  ;; actions of widget_anthy_input_mode
>  (define anthy-input-mode-actions
> -  '(action_anthy_hiragana
> +  '(action_anthy_direct
> +    action_anthy_hiragana
>      action_anthy_katakana
>      action_anthy_hankana
> -    action_anthy_direct
>      action_anthy_zenkaku))
> 
>  ;; actions of widget_anthy_kana_input_method
> Index: scm/skk.scm
> ===================================================================
> --- scm/skk.scm (revision 64)
> +++ scm/skk.scm (working copy)
> @@ -153,10 +153,10 @@
> 
>  ;; actions of widget_skk_input_mode
>  (define skk-input-mode-actions
> -  '(action_skk_hiragana
> +  '(action_skk_latin
> +    action_skk_hiragana
>      action_skk_katakana
>      action_skk_hankana
> -    action_skk_latin
>      action_skk_wide_latin))

-------------------------------
ヤマケン yamak****@bp*****



Anthy-dev メーリングリストの案内
Back to archive index