これが標準的なハードウェア向けの (おそらく) 最終バージョンになる。実装方法を含め、少し詳しく記述しておこう。
概説
- 親指の 3 キーはワンショットモディファイヤ。押してる間はそれぞれ Mod1, Mod2, Mod3 に、単独で押して離すとそれぞれ [Space], [Enter], [Delete] になる。
- 平常時は上のマッピング。Mod1 (スペースキー) を押しながらだと下のマッピングになり、ホームポジションから手を動かさずに編集操作ができる。
- Mod2 または Mod3 を押しながら文字キーを押すと IME on になり、Enter を押すと IME off になる。
- Mod1+ で非自明なキーは次の通り。Mod1+[ X ] = Ctrl+Shift+[Tab], Mod1+[ C ] = Ctrl+[Tab], Mod1+[ V ] = Ctrl+[F4], Mod1+[ T ] = ウィンドウ最大化トグル, Mod1+[ G ] = Alt+[F4], Mod1+[ B ] = ウィンドウ最小化, Mod1+[ Y ] = Ctrl+[Home], Mod1+[ / ] = Ctrl+[End], Mod1+[ = ] = クリップボード履歴 (常駐ソフトのキー設定に合わせる), Mod1+[ , ] = Shift+[Tab], Mod1+[ . ] = [Tab].
変更点
Phase16 からの変更点は次のとおり。
- モードレスな IME 操作体系の提案 に基づき、IME のモード切り替えを完全にモディファイヤ化した。
- Mod1 の配列を見直し。
- Mod1+[ X ], Mod1+[ C ] をそれぞれ Ctrl+Shift+[Tab], Ctrl+[Tab] とした。隣にある Mod1+[ V ] = Ctrl+[F4] と合わせて、タブの操作を手前側に集約した。
- Mod1+[ " ], Mod1+[ \ ] をそれぞれ PgUp, PgDn とした。これはマウスホイールのないノート PC の救済用であって、使用頻度はきわめて低い。
- Mod1+[ W ], Mod1+[ R ] をそれぞれ Alt+[←], Alt+[→] とした。これも使用頻度はきわめて低く、「戻る」「進む」を割り当てる必然性もあまりない。*2。
- Mod1+Mod2+文字キー は次のようになる (図には描いてない)。
- 右手側: 範囲選択 (Ctrl+Shift+[Home], Ctrl+Shift+[←], Shift+[↑], ...)
- 左手側: よく使うモディファイヤとの組合せ (Shift+[Space], Ctrl+[Enter], ...)
- 完全な定義は設定ファイルを参照。両親指で範囲選択は便利だが、その他はアドホックな定義であって必然性はあまりない。
- 記号のペアを入れ替えた。ダブルクオートと波ダッシュがシフトなしで打てるように。
- 英語キーボード準拠じゃなくなったけど、使用頻度を考えると明らかにこちらの方が良い。
実装方針
remapkey の設定
- これは ThinkPlus USBキ-ボ-ド ウルトラナビ付 用の設定。このキーボードには [LWin], [Rwin], [Apps] がないので、近隣のキーを [LWin] や [RWin] にしている。
- remapkey は Windows Server 2003 Resource Kit Tools に含まれている。
keyhac の設定
- config.py
- ダウンロードしてファイル名を config.py に変更し keyhac.exe と同じフォルダに置く。
ATOK の設定
- 日本語入力 ON、日本語入力 OFF、確定リピート、入力文字種全角ひらがな、英語入力 ON/OFF にそれぞれ別個のキーを設定するのがキモ。これに keyhac の設定を合わせる。
- MS-IME でも同様の設定はできると思う。けど確認する気がない。
感想
- 親指がワンショットモディファイヤだらけで忙しい。全操作時間の半分は親指で Mod1 を押してるような気さえしてくる。
- 普通のキーボードで Mod1 の割り当てに耐えるキーは [Space] しかない。だから仕方ないとはいえ、スペースキーのロールオーバーが利かなくなるので、やはり英文入力時のリズムはかなり途切れがちな感じになる。
- それでも、すべての編集操作がホームポジションでできるメリットは他のデメリットを圧倒する。
- IME 切り替えのモディファイヤ化も効果は大きい。
- ただし、Mod2 と Enter が同じキーだと和字を細切れ入力するとき親指の負担が大きい。せめて Enter はロールオーバーしてほしい。
- やっぱ Space と Enter をワンショットモディファイヤにしちゃうのは無理があったかなぁ…。
- だがしかし、それでもやはり、すべての編集操作がホームポジションでできるメリットは他のデメリットを補って余りある。(大事なことなので 2 度言いました)
まとめ
Phase16b は私が 10 年かけて取り組んできた最適化の集大成です。標準的な日本語キーボードを用いる限り、操作効率の追求はこのあたりで限界に達するでしょう。この先へ進むにはどうしても 親指に 8 個のキーが必要です!
巷にはキーボード改良のアイディアがいろいろありますが、その多くは文章入力の最適化を目指したものであって、編集操作や IME 操作の最適化に関して系統的な成果を得たものは多くありません。これから最適化の道に踏み込む人は、その成果をぜひ公開してほしいです。私もニヤニヤしながら見守りたいと思います。( ̄ー ̄)