CaspLockやF1キーなど存在意義がわからないキーを別のキーに変更する方法を紹介したいと思います。キー配列を変更するソフトもありますが、僕は自分のPCはに余計なものは入れなくない派なのでレジストリの設定を変更することで、キー配置を変更しています。
今回僕は以下の2つを実施しました。最後に簡単に仕組みも説明したので、ちゃんと理解すれば、自由自在にキーボードのキー配置を変更することができます。
○ [CapsLock]キーにShiftを割り当てる
[CapsLock]キーを間違えて押すと、アルファベットが大文字入力になってしまいます。[CaspLock]キーを[Shift]キーと打ち間違えてるので、[CaspLock]キーにShiftを割り当てました。結果として[Shift]キーが2つある状態になっています。打ち間違えても大文字入力になることがないので、作業効率が上がります。
※ちなみに僕はThinkPadのワイヤレスキーボード(英語)を使っています。
○ [F1]キーにCtrlを割り当てる
僕の場合はExcelを使っているときに、[F2]キーと間違えて[F1]キーを押してしまいヘルプが立ち上がってしまうことが多々あり非常にイライラしておりました。ちなみに [F2]キーはExcelのセル入力やファイル名などを変更入力するショートカットですので覚えておくと作業効率が上がります。
それではやり方を説明したいと思います。
1.[ファイル名を指定して実行]で「regedit」と入力してレジストリエディタを開きます。
2.以下のフォルダの配下に新規でバイナリ値を作成します
[フォルダ]
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout
[作成するエントリ]
・ファイル名:Scancode Map
・種類:バイナリ値(REG_BINARY)
3.作成したファイルの値のデータを以下のように編集します。
※以下は[CapsLock] キーに[左Shift]を割り当て、[F1]キーに、[左Ctrl]を割り当てる例です。
4.編集が完了したら、PCを再起動します。
キー配列変更の方法は以上ですが、簡単に仕組みを説明します。仕組みを理解すれば、自分が好きなようにキーのレイアウトをカスタマイズできます。
今回入力した値をテキストで表現すると次のようになります。Scancode Mapというのがキーの名前です。hexは16進数でデータを表現することを示しています。
“Scancode Map”=hex:00,00,00,00,00,00,00,00,03,00,00,00,2a,00,3a,00,1d,00,3b,00,00,00,00,00
この値は次のように4個一組で意味を持ちます。
・00,00,00,00, ← ヘッダー(バージョン)
・00,00,00,00, ← ヘッダー(フラグ)
・03,00,00,00, ← エントリー数
・2a,00,3a,00, ← エントリー1(データ)
・1d,00,3b,00, ← エントリー2 (データ)
・00,00,00,00 ← エントリー3(終端)
エントリー数はここでは3です。終端もエントリー数としてカウントするので注意してください。エントリー1はCapsLock(003a)を (002a)に変更するとう意味です。同様にエントリー2はF1(003b) を 左Ctrl(001d)に割り当てるという意味になります。
なお、Windows系のバイトオーダーはリトルエンディアン(Little Endian)となるので小さい桁からキーに格納します。図示すると以下のようになります。
上記を理解すれば、キーボードのスキャンコードを参照して自由にキーボードの配列を変更できます。
スキャンコード表
CapsLook | 003a |
F1 | 003b |
左Ctrl | 001d |
右Ctrl | e01d |
左Shift | 002a |
右Shift | 0036 |
コメント