モードレスな IME 操作体系の提案

前のエントリから続く
というわけで、IME の on/off をユーザが全く意識せずに使える、いわばモードレスな IME 操作体系を考えた。ポイントは「IME on 未入力」という状態をなくすことだ。

Phase16a (案)

http://mobitan.org/kb/keymap/phase16a-ime.png
入力中文字列を確定したら同時に必ず IME off へ切り替える方式。つまり (3) から (1) へ直接遷移する。前述した IME on 操作のモディファイヤ化と併用することで (2) を完全に排除できる。これにより状態遷移はきわめて単純になり、ユーザはモードから解放される。和文を打ち始めるたびに [Mod2] を押すのは疲れそうな気がするかもしれないが、実際のところ英文を打ち始めるたびに [Shift] を押して文頭を大文字にするのと大差ない。仕様上の欠点は、確定と同時に off になるので確定アンドゥができないこと。実装上の問題は、(3) の状態で [Backspace] を押して入力中文字列を全部削除すると (2) の状態になってしまうことである。
とりあえず keyhac を使って力業で実装してみた。しばらくこれで使い心地を検証してみたい。