2ストロークキー

投稿者: | 2007-01-07

テキストエディタで、「2ストロークキー」を使っている。
「2ストロークキー」とは、そのコマンドを実行する為にキーを二つ押下すること。普通は[Ctrl]等の機能キーも組み合わせて、たとえば[Ctrl]+[K]の操作直後に二つめの[X]を押下することにより「カット」を実行する等。
これはエディタ等のアプリケーションのキー割り当てにそれが実現可能かということが大きく関わる。つまり、多くのアプリケーションでは2ストロークキーは実現できない場合がほとんど。

テキストエディタは有名な秀丸を使っているが、これも代替的に2ストロークキーを実現できている。一つめのキーに、予め作成しておいたメニューを割り当て、二つめのキーに、そのメニュー項目を割り当てる。こうすると、一つめのキー操作で、カーソル位置にメニューが表示され、二つめのキー操作でコマンドが実行されるようになり、結果として2ストロークキーが実現できる。

古くは、MS-DOSの時代のVZ Editor等がよくこの2ストロークキーを採用していて、そういう時代のエディタを使っていたユーザから継承されている機能ではないかと思う。
自分の場合は、VZは使ったことがないが、Windows環境でその後継的なWZ Editorをしばらく使っていて、このエディタも2ストロークキーをサポートしていた。
使ってみたら快適にコマンドが実行されるので、好んで使うようになったが、VZのコマンド割り当てではなく、VZのキー定義を参考に、自分でカスタマイズした定義である。

たとえば、[Ctrl]+[K]にはクリップボード系の操作を割り当て、[X]で切り抜き(カット)、[C]でコピー、[A]で全て選択、という感じだ。貼り付け・ペースト操作は、連続して行うことがある為2ストロークキーでは不便なので割り当てず、Windowsの標準的なショートカットキーである[Ctrl]+[V]で実行する。

他に、[Ctrl]+[L]にファイル操作系コマンド、[Ctrl]+[Q]に検索系コマンドを割り当てている。これは、ダイヤモンドカーソルを優先して使いたかった為で、ダイヤモンドカーソル操作の[Ctrl]+[A]、[Ctrl]+[S]、[Ctrl]+[F]がそれぞれ競合する為、その操作を2ストロークキーに対比する形で割り当てたのである。

他のアプリケーションでは2ストロークキーは実現ができないものがほとんどなので、たとえばWordを使っているときに上書きで保存するのに[Ctrl]+[L]-[S]と操作してコマンドが実行されなかったり、あるいは他のコマンドになってしまったりという干渉は多少有る。