> このあたりどうしましょうか?わたしのほうでは何も構想ありませんので、
> ご自由に進めていただければと思います。
>
> そろそれ 1.6 も準備しないとは、と思っていますので、既存のシステムを
> 壊さない感じでしたら、せっかくですからレポジトリにいれてもらって、
> 1.6 の uim-tutcode で使えるようになっているといいかもしれません。
ありがとうございます。
まずは今の構成でcommitしようと思います。
現状では以下の問題があることに気づいたので、修正していく予定です。
* 通常の候補ウィンドウと併用するときの問題
~/.uimにこの表形式の候補ウィンドウを使う設定を入れると、
nr-candidate-maxが40や95と大きな値になるため、 uim-qtと併用する場合に、
uim-qtの候補ウィンドウが画面に収まりきらずうまく表示されない。
** 解決方法
Qt版の表形式候補ウィンドウを作る。
それまでの対処として以下のhackを入れる予定。
(nr-candidate-maxの値は通常の候補ウィンドウ用に設定しておく)。
表形式候補ウィンドウ側はactivate時に
→accel-enum-hintに-1を指定してuim_get_candidate()を呼び出す。
Scheme側はnr-candidate-max値を表形式候補ウィンドウ用に更新し
←annotationに更新したnr-candidate-maxを入れて返す("display_limit=40")。
表形式候補ウィンドウ側は返ってきたannotationをもとにdisplay_limitを更新。
* tutcode以外のIMと併用するときの問題
uim-candwin-prog変数で表形式候補ウィンドウを使う設定にすると、
全てのIMで表形式候補ウィンドウを使うことになるが、
現在の表形式候補ウィンドウでは、ラベル文字列が同じ(""等)候補が
同一のセルに上書きされて、最後の候補しか表示されないので、
通常の候補ウィンドウの代わりとして使うには問題がある。
** 解決方法1
ラベル文字列が重複した場合、空いているセルに候補を入れていくようにする。
** 解決方法2
少なくともIMごとに候補ウィンドウを設定できるようにする(?)
> > * TODO
> > ** マウスで候補をクリックしたときに確定する
> > ** 候補ウィンドウに次/前ページ移動ボタンを追加(マウスだけで選択可能にするため)
> > (signalの追加/HELPER-CANDWINプロトコルの拡張も?)
>
> 候補のクリックによる選択と確定を区別するとなると拡張が必要ですね。
> 区別が必要でなければ、tutcode-set-candidate-index-handler で確定して
> しまってもいいと思います。
>
> あとページ移動に関しては、candwin からもページシフトを送れるようになると
> 実装が楽ですね。とりあえずは、candwin 内で次ページの先頭インデックスを
> 計算して、それを送ることでも可能でしょうけど。
Scheme側でのset-candidate-index-handlerでの確定と、
candwin側からのset-candidate-indexによるページシフトが両立しないので、
とりあえずは、candwinへのページ移動ボタンの追加はpendingに
しておこうと思います。
> 最近ようやく uim-fep、uim-el でもページ単位で候補を取得するように変更
> したので、tutcode-kigoudic に感じも入れていただいても大丈夫になりました。
使う場面はほとんど無いとは思いますが、
入れてもメモリ使用量が増えるくらいなので、漢字も入れておきます。
> また、svn trunk の generic IM で次のキーにマッチする候補も表示できる
> ようにしたので、uim-tcode なんかでキーを探すのが楽になったかもしれません。
同じ機能を作っていたのですが、少し動作が遅いので、参考にさせていただきます。
> > + 次に各キーを打ったときに入力される文字を表形式で表示(仮想鍵盤表示)
--
木原 英人 / KIHARA, Hideto / [email protected]
http://www1.interq.or.jp/~deton/
--
Google Groups "uim-ja" group
[email protected]
http://groups.google.com/group/uim-ja/about