管理者権限のない Windows 7 でキーボードの Caps lock を Control に remap する
管理者権限のない Windows 7 でのキーボードの Caps lock を Control に remap するにはどうするか。
[:original]
そもそもなぜそんなことが必要かというと銀行というとテンプラアイスが煩いからしょうがない。 XP では管理者権限を渡してもらわないと何もできなかったのでわれわれにも管理者権限があったのだが、 Win 7 に移るということでそれがなくなったのだ。で、私はコンピラいやんすとか言われてもそれなりに順応してきたつもりだ。Windows でもまあ使えるし、Dell のキーボードでも別に構わない。そういう道具は気にしない方だと思っていたが、Control の位置だけは重要だったことに気がついた。ついに糞コンプライスレスと私の対決となったわけだ。
管理者権限があれば Registry をいじればそれまでであり、これはちょっと検索すればすぐ出てくる。
ちなみに、HKEY_CURRENT_USER/Keyboard Layout/Scancode Map で変更できるというのはデマである。Windows 7 ではこれは無視される。
管理者権限がない場合は、二つの方法がある:
常駐型アプリケーションを動かしてキーを入れ替える
AutoHotKey がうまく動いた。yamy-0.03 は Control が勝手に押下されたままになってしまう事が頻発し使えるとは言いがたい。自分は英語104キーボードを使っているので、AutoHotKey に 109キーボード特有の問題(yamy-0.03 に詳しく書かれている)があるのかどうかはよくわからない。
xkeymacs も半常駐型ではあるが Caps/Ctrl の入れ替えはレジストリで行っているので管理者権限がなければ目的を達成できない。
AutoHotkey はインストーラーでインストールさせるアプリなので管理者権限がないとインストールできないので詰むというよくあるストーリーだが家のマシンでインストールして Program Files の下のフォルダを持ってきたらレジストリをいじらなくてもそのまま動いた。
しかし…高負荷がかかると AutoHotKey も押下がおかしくなる… のかどうかよくわからない。とりあえず日本語モードにして高速にタイプしているとおかしくなりやすいようだ。英語モードオンリーにすると調子がよい。やはり yamy のドキュメントにもあるように日本語周りになると変になるのだろうか。