[Ctrl]キーは[A]の横の位置になければ使えない。JISキーボードでもUS配列でも同じだが、標準は[Ctrl]が左下の位置にあって、[Caps]がその場所にある。
[Caps]は、アルファベットを大文字固定する機能を持つキーで、そんなに使用頻度は高くない。[Ctrl]は様々なアプリケーションでコマンドと組み合わせて使う使用頻度の高い機能キーなので、ホームポジションからすぐ小指を延ばせば使える位置にないと不便である。
自分以外にも同じ考えの人は多いが、一方で[Ctrl]は標準の位置で慣れてしまったので、左下にないと困るという人も居る。小指で打鍵する場合はホームポジションから手を移動させないと押下することが困難であるはずだ。中には[Ctrl]を小指の付け根で押すという人も居るが、それは打鍵として正しいのか。
ともかく、自分は[Ctrl]キーは[A]の横になければならず、標準的なキーボードの場合は、どうにかしてそうなるように設定しなければならない。
USBで外付けのキーボードだと、そういうこだわりをもつ人のために[Ctrl]と[Caps]を入れ替えられる機能を持つ物が少なからずある。キーボードにディップスイッチがあってそれで切り替えたり、専用のソフトウエアで切り替えたり、あるいは特定のキー操作で切り替えたりできるようになっている。Realforceの一部のモデルなど、そうして入替を行った時の交換用キートップとキートップの引き抜き工具まで付属していたりする。
ノートPCの本体キーボードだと、Windowsに標準でキーの入替機能はなく、そういうことはできないので、幾つかの方法から選んでキーの入替を行うことになる。
一つ目は、キーの読み替えソフトを常駐させてWindows起動後に入替を行うこと。幾つかそういうソフトがあるようだが、常駐させるということはメモリ資源を使うということでもあるので、自分はあまり好きな方法ではない。ソフトによっては、押下したキーをアプリケーションに渡す前に仲介するようなプロセスとなるので、僅かながら動作速度への影響も考えられる。
二つ目は、レジストリにキー定義を追加して入替を行うこと。この方法だと、ソフトを常駐させなくて良いので、Windowsやアプリケーションの動作に影響はない。元に戻すときは追加したキー定義を削除する。
三つ目は、さらにその前の段階のドライバを読み込む状態で入替を行う。Microsoftが少し前に提供した「Ctrl2Cap.exe」を使うこと。これは正確にはキーの入替ではなく[Caps]も[Ctrl]にするというものである。
二つ目、三つ目の方法は、設定には再起動が必要だったり管理者権限が必要だったりするので、少し要件はある。
今、自宅ではRealforceなどキーボードでハード的にその入替を行っているので問題ないが、ノートPC本体のみで使用する時には何れかの方法で入替を行う必要があり、これまで二つ目の方法のレジストリ変更によっていた。入れ替えるときは管理者権限でログインしてレジストリのキー定義ファイル「.reg」をダブルクリックで追加し、元に戻すときはレジストリエディタで追加されたキーを削除する。
三つ目の方法だと、コマンドプロンプトを管理者権限で起動する必要はあるが、コマンドラインから設定と解除の操作ができるので、この方法でも良いのかもしれないと思っている。