windowsのキーマップを入れ替える(その2)


windows でctrlキーとcaps lock キーを入れ替える方法。http://d.hatena.ne.jp/pyopyopyo/20050731/p1の続き。たまにしか設定しないので、再度メモ。


windows xpは、レジストリを書き換えるとキーマップを入れ替えることができる。



具体的には、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout
にバイナリで

00 00 00 00
00 00 00 00
エントリ数 + 1
xx xx yy yy
00 00 00 00

と書く。xx xx と yy yy はキーコード。 この設定で yy yy が xx xx に変換される。

たとえば、半角/全角とESC、CapLockと左Ctrl、を入れ替える場合は、キーコードがそれぞれ

キー キーコード
ESC 00 01
半角全角(漢字) 00 29
CapsLock 00 3A
左ctrl 00 1D

となる。エントリ数は4。レジストリに書き込む値は以下のようになる。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,05,00,00,00,3a,00,1d,00,1d,00,3a,00,\
01,00,29,00,29,00,01,00,00,00,00,00


参考URL: http://www.jsdlab.co.jp/~kei/tips/swap.html