[CTRL] は [A] の左じゃないと・・・ Windows RT でキー配列をいじる。
最近 Windows RT マシンを手に入れまして、便利に使っております。Windows NT/2000 時代を知らない若輩者の私としては、インテル以外のプロセッサアーキテクチャで動く Windows というのは初めての経験で、なかなか新鮮です。
しかし、なにせ x86 のバイナリが動かないわけなので、まったく困らないというとウソになります。真っ先に恋しくなったのは、 Windows Server 2003 のリソースキット ツールに入っていた remapkey.exe ですね。新しく Windows をインストールしたときはいつも、このツールで [CAPS] を [CTRL] にするのです。あと、 [変換] とか [無変換] も要らないので Windows キーなどにしてしまいます。
私の RT 機は英語キーボードなので [変換] キーとかはどうでもよいのですが、[CTRL] だけは何とかしたい。というわけで、reg コマンドで直接レジストリを編集することでスキャンコードマップを定義し、キーの配列をいじってみました。
具体的には「管理者として実行」したコマンドプロンプトで、次のコマンドを実行します。
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Keyboard Layout" /v "Scancode Map" /t REG_BINARY /d 0000000000000000020000001D003A0000000000 /f
有効にするためには、 Windows を再起動する必要があります。
shutdown -f -r -t 0
これで見事 [CAPS] が [CTRL] になります。なお、元々の [CTRL] はそのまま [CTRL] です。つまり左の [CTRL] キーが二つになります。こうしておくと、「普通の人」が使うときに無用の混乱が避けられるのです。([CAPS] キーは失われるわけですが、あんまり使いませんよね?)
さて、ここまで RT タブレットの IE10 で書きましたが、 remapkey.exe 以上に恋しいものは Windows Live Writer だと気づきました。Windows ストアアプリで出ないかな。。。
なお、Scannode Map に設定するデータについてはこちらのページを参考にさせていただきました。
https://www.jaist.ac.jp/~fujieda/scancode.html
Windows RT もリトルエンディアンだから、 DWORD をひっくり返して小さい桁から並べるんですね。
__END__