キーボードカスタマイズはVistaでは不可能に?

LM-72007-02-17


思考の速度でパソコンを使う技術でマニアックなキーボードカスタマイズ方法*1が紹介されていたが、とても複雑で使えこなせそうに無い印象を受けた。もっとも筆者が利用しているキーバインドも他人から見れば十分複雑怪奇だと思うので、ちょっと紹介してみたい。ただ、UNIXを触ったことがあれば、ちょっとは共感していただける点もあるのではないかと思う。しかし残念なことに、こうしたキーボードカスタマイズは今後大きな問題に直面することになるので最後にふれたい。なお、右の写真は、Copyright © 2004-2005 FreePhotosBank.com である。

筆者はUNIXからWindowsに移行してきたパタンなので、UNIX風のキーバインドWindowsキーバインドの折衷型を採用している。筆者はいまやWindowsがメインなので、Windowsの作法をなるべく尊重しつつ、UNIXキーバインドを導入すると言うアプローチを取っている。もっともCtrlキーを小指のすぐ横に設定するということだけは譲れないのだが。

Windowsで標準となっている次のショートカットは多くのアプリで同様に利用するので、なるべくそのまま利用するほうが何かと役に立つ場合が多い。そこで筆者はこれらのショートカットは壊さないようにしている。もしこれらのショートカットをご存じないWindows初心者の方がおられたら、これだけでも覚えて使うようにしてみるとぐっと便利になると思う。

  • Ctrl+C:コピー
  • Ctrl+X:カット(切り取り)
  • Ctrl+V:ペースト(貼り付け)
  • Ctrl+S:セーブ(上書き保存)
  • Ctrl+Z:アンドゥ(元に戻す)

キーボードで文字入力を行う際に、カーソルキーを使うとホームポジションから離れてしまうので、どうしても効率が悪くなる。そこで、ホームポジションを保ったままカーソル移動を行うショートカットが広く利用されている。有名なのはダイヤモンドカーソルやviキーバインドだが、筆者はEmacsキーバインドを好んで利用している。Emacsキーバインドは上記のWindows標準キーバインドと干渉しないのでWindowsと親和性が高い。Emacsを使ったことが無い人から見ればとても覚えられそうに無いキーバインドだとは思うが、ホームポジションから離れることなくカーソル操作が行えるので、カーソルキーによる操作よりずっと能率的だ。

  • Ctrl+F:→キー(forward character)
  • Ctrl+B:←キー(back character)
  • Ctrl+N:↓キー(next line)
  • Ctrl+P:↑キー(previous line)
  • Ctrl+A:Homeキー(行頭)
  • Ctrl+E:Endキー(行末)
  • Ctrl+H:Backspaceキー
  • Ctrl+D:Deleteキー
  • Ctrl+U:Escキー

Ctrl+Fをカーソル移動に割り当てる関係上、Windowsの検索ショートカットが利用できなくなるが、Emacsの検索ショートカットCtrl+SはWindowsでセーブに割り当てられているため使えない。仕方が無いので検索はCtrl+Shift+Fに退避させている。同様に全選択はCtrl+Shift+Aに退避だ。人によってはCtrl+V/Esc+VをPage Down/Page Upに割り当てていると思うが、Ctrl+VはWindowsがペーストに利用しているし、Escキーはノートパソコンだときわめて押しにくいという理由があり、筆者はこれらは特に変更していない。カーソル移動に比べれば利用頻度も低いのも理由のひとつだ。

MS-IMEによる日本語文字変換では文節の調節にShift+→などカーソルキーが割り当てられているが、これもホームポジションで行えたほうが効率が良い。筆者は次のWnnキーバインドを利用している。上の2つ以外は上記と共通である。

  • Ctrl+I:文節長-1 (IME標準ではShift+←)
  • Ctrl+O:文節長+1 (IME標準ではShift+→)
  • Ctrl+F:→キー(文節右)
  • Ctrl+B:←キー(文節左)
  • Ctrl+N:↓キー(次候補)
  • Ctrl+P:↑キー(前候補)
  • Ctrl+A:Homeキー
  • Ctrl+E:Endキー
  • Ctrl+H:Backspaceキー
  • Ctrl+D:Deleteキー
  • Ctrl+U:Escキー

これらをキーボードカスタマイズソフト猫まねきで割り当て、あらゆるソフトウェアでこれらのキーバインドを有効にしている(最近は窓使いの憂鬱の利用のほうが一般的)。その際にCtrlとCaps Lockの位置を入れ替え、小指で無理なくCtrlキーが押下できるようにしている。完全に慣れてしまっているので、標準のキーバインドだとまともに文字入力ができないという弊害があるが、普段の使い勝手が大きく改善する利点のほうがずっと大きい。新たに覚えるべきキーバインドは11種類。上記のカスタマイズをしたとしてもWindowsの標準的なショートカットはそのまま利用できるので、移行のハードルは比較的小さいと思う。

ただ、目下筆者がもっとも懸念しているのがWindows Vistaへの移行だ。64bit版のVistaではデジタルサインの無いデバイスドライバは動作しないようなので*2窓使いの憂鬱Vistaに対応する可能性は無い。というのも、Vistaでの動作に必要なデジタルサインは個人および個人事業など、法人としての登記がない場合には、発行されないからである日本ベリサインQ&A「法人格のない個人でもコードサイニング証明書を取得できますか」参照)。

事実、窓使いの憂鬱の公式ページでは、「窓使いの憂鬱の開発は終了いたしました。また、Windows Vista では動作しません」というアナウンスがされている(「窓使いの憂鬱」開発終了とVistaについて参照)。猫まねきはずいぶん前に開発が停止しているし、デジタルサインを取得できない以上、個人開発のオンラインツールによる実現には同じ課題がある。ということは、このままの状態だとVista移行時には筆者はまともに文字入力もできなくなってしまうことになる

この問題は結構深刻で、思考の速度でパソコンを使う技術で紹介されていたカスタマイズ法もおそらく窓使いの憂鬱を使うと推測されるので、Vista移行時にはせっかく覚えても使えなくなってしまう。現状窓使いの憂鬱を置き換えるようなソフトは存在しないし、今後代替ソフトが提供されるかどうかも分からない*3。このままだとあらゆる特殊キーバインドを実現する方法がVistaからは奪われてしまう*4。キーボードカスタマイズの紹介を見て、ちょっと覚えてみようかなと思う人はその事実に留意したほうが良いだろう。

Microsoftが純正のキーボードカスタマイズツールを提供してくれるのが一番良いのだが、なんとかならないものだろうか。

*1:キーカスタマイズとも言う

*2:32bit版では動作するが、Blu-rayHD DVDの再生が不能になる。Vistaにおける動作制約についてはITmedia +D PC USER:第8回 Vistaにおけるデバイスドライバのゆくえ (1/2)参照

*3:デバイスドライバによる実装以外の方法として、LowLevelKeyboardProcによる実装が提案されている

*4:CtrlとCapslockを入れ替えるぐらいならレジストリの編集で可能。中道左派で行こう: Windows VistaでCaps LockキーとCtrlキーを入れ替えるには参照。