AutoHotkeyでCapsLockが押しっぱなしになる現象を解消する方法

AutoHotkeyでCapsLockが押しっぱなしになる現象を解消する方法

AutoHotkey

キーボードの入力を他のキー入力へ置き換えるソフトウェアです。
ZIP版も配布されているので、管理者権限がなくても実行可能です。

AutoHotkey
https://www.autohotkey.com/download/

CapsLockキーに設定すると…

環境によって、上手く動作しません。
特に日本語キーボードは怪しいです。
現象としては、CapsLockキーを一度押すと押しっぱなしの状態になってしまいます。
CapsLockキーをCtrlに置き換え、CapsLock+C(コピー)を一度行ったら、CapsLock(Ctrl)がずっと押しっぱなしになってしまうという事です。

対策

AutoHotkeyだけでは、どうにもなりません。
AutoHotkeyにキー入力として受け付けられる以前の問題なので、レジストリを変更してCapsLockを他のキーへ割り当てる必要があります。

ChangeKey

こちらの記事を参考にレジストリの変更をGUIで行えるChangeKeyを使ってCapsLockの割り当てを変更します。
記事中ではCtrlへ割り当てていますが、Ctrl以外に割り当てたい場合は、F13キーに割り当てましょう。

F13~F24は物理的にキーはありませんが、仮想的にキーとして割り当てることが出来ます。

F13キーのスキャンコードは「0x0064」です。
キー割り当て画面の右上の「Scan Code」から上記のコードを設定して割り当てましょう。

AutoHotkeyで割り当てよう

F13キーにCapsLockを割り当てたら、CapsLockキーを押したらF13を押したことになりました。
とはいえ、F13キーには何の動作も割り当てられていないので、AutoHotkeyを使って任意の処理を割り当てていきましょう。

AutoHotkeyは拡張子ahkで作成したテキストファイルに、割り当てるショートカットを記載します。

CapsLock(Ctrl)+pbnfで上下左右に移動する

macのショートカットの設定例です。
F13 & p::Send {Up}のように、Sendを使って割り当てると、Shiftキーを押しながらUp(F13+p)をした際に範囲選択が出来ないため、あえて::Upと割り当てます。

F13 & p::Up
F13 & b::Left
F13 & n::Down
F13 & f::Right

 

ツールカテゴリの最新記事