Tomotaka SUWA
t-suw****@users*****
2006年 5月 3日 (水) 12:06:38 JST
諏訪です。 今回の修正は特に Branch を設けず、Main Trunk に対して直接 commit してい く予定です。 まずは最初に着手する部分について、お知らせしておきます。 ■ メッセージ通信について (1) 現在の仕様 クライアント・サーバー間のメッセージ通信のデータ区切り文字は、スペース になっています。 このため、変換候補にスペースが含まれる場合には、" " → "[20]" のように、 エンコードするようになっています。例えば、 suwa /諏訪 友崇/ というエントリがあった場合、通信時には "諏訪[20]友崇" に変換されるとい うことです。こうしないと、メッセージの区切りと見分けがつかないからです ね。 (2) 問題点 メッセージの区切り文字が使われる場所では、常に " " ⇔ "[20]" 変換が行な われてしまう(コスト増大)。単純に、コードの可読性が低下する。 (3) 改善方法 メッセージの区切り文字を「見出し語にも変換候補にも出現しない文字」にす ることで、余計な変換を回避できます。 今のところ垂直タブ(0x0b)にしようと思っていますが、反対意見などがあれば お願いします。 ■ SkkConfig について (1) 現状の仕様 キーマップを unsigned char で管理していて、これは、MacCharCodes そのも のです。 (2) 問題点 Ctrl キーシーケンスの管理が不完全になってしまう。例えば、「スペース」の MacCharCodes は 20 ですが、「Ctrl + スペース」も 20 のままです。 この結果、SkkConfig では「Ctrl + スペース」を管理していないにも関わらず、 isMappedKey() が true を返すことになります。KeyBindings がうまく動かな いのは、この仕様が原因です。 (3) 改善方法 単純に、MacCharCodes に加えて、KeyModifier も管理するようにします。合わ せて、初期値の設定を外出しにします。 - * - 以上です。よろしくお願いします。 -- Tomotaka SUWA