2023.08.24更新
AutoHotKeyとは

AutoHotKeyは、通常割り当てられているキーボードのタイピングを変更するアプリケーションです。
通常割り当てられているキーボードのタイピングを変更するとは、例えば「a」キーを押したら「z」キーの入力がされるようにするという意味です。
他にもマウスの自動操作や、アプリケーションをボタンで起動させるランチャーなどの設定もできます。
ただし設定するためには、このアプリケーション独特のスクリプト言語というものをマスターしないといけません。
AutoHotKeyの導入手順については、以下を参照ください。
ここではWindows11を使う前提で、解説していきます。
Windows10以前と、Windows11でアプリケーションの挙動が異なるためです。
Windows10とWindows11で挙動が異なる

AutoHotKeyはWindows10までは、以下のスクリプトでキー操作の入れ替えができていました。
例はF3キーにCtrl+C(コピー)を割り当てるものです。
F3::^c
それがWindows11では動かなくなっています。
対策を試みるため、Googleで検索をしたところSendInput命令を適用することで代用できることを知りました。
例えば上記と同様にF3キーにCtrl+Cキーを割り当てるには、Windows11に関していえば以下のスクリプトに書き換えないと使えません。
F3::SendInput, ^c
ちなみにChatGPTに同様の質問をしたところ、以下のスクリプトも追加するように例を出されました。
SetWorkingDelay, 0 ;キー入力の遅延を設定
これをいれても動作はするので、安全性のため上記SetWorkingDelayをSendInputよりも前に書きました。
具体的にはスクリプトを書き込む最初のほうにSetWorkingDelay命令を1回だけ書き、後はキーの設定スクリプトを順次書き込むことをしています。
対策

上記で述べたとおりSendInput命令を適用することで、Windows11でもWindows10と同様の動作をすることを確認しました。
ただ自分の中の課題として、「半角/全角キー」と「カタカナ/ひらがなキー」がうまくマッピングしません。
この問題については、解決しだい当ブログで紹介する予定です。
※上記問題について少し古い記事ですが以下のものを発見しました。

これによると、「半角/全角キー」と「カタカナ/ひらがなキー」だけでなく、「CapsLock」キーもうまくいかないようです。
自宅ではChangeKeyというレジストリを操作するアプリを入れれば問題はないのですが、会社の場合は管理者権限の問題で、上記3つのキー設定は諦めるしかないようです。
つまり仕事では生産性がいくらか落ちることを、Windows11では覚悟しないといけないです。
まとめ

WindowsのOSが10から11に変更することによって、従来使えていたスクリプト命令文を書き換えないと使えないことが判明しました。
この対策はSetWorkingDelay命令で代用可能です。
ただ問題点として、「半角/全角キー」と「カタカナ/ひらがなキー」、「CapsLockキー」がうまくマッピングしません。
会社ではこの問題が管理者権限にあるため、作業の生産性が落ちることが懸念されます。
自宅のパソコンの場合は、自己責任なのでChangeKeyというアプリで代用できます。
ご参考になれば幸いです。
コメント