Windowsパソコンの自動化ソフトウェア、Autohotkeyプログラミング言語(スクリプティング言語)において、キーボードキーの同時押しショートカットキーの実装方法をマスターするためのガイドです。
AutoHotKeyでは以下のようにしてやることで、任意の3つのキーでのショートカットキーを実装することができることは、よく知られている。
#If GetKeyState("space", "P")
ctrl & d::
msgbox, debug.
return
#If
以下記事を見てみると、”SuperHotkey”というものでそれらしいことを実装できるということが書いてある。
Can you assign a four-key combination as a hotkey? – Ask for Help – AutoHotkey Community
SuperHotkey参考。
[AHK_H(+dll)] – SuperHotkey() – Scripts and Functions – AutoHotkey Community
SuperHotkeyでは、通常のAutohotkeyではエラーとなるような以下のようなシンタックスでのホットキーの設定が可能となるらしい。
^LButton & a & h::
!LButton & RButton & a::
^+a & h & k::
^+1 & 2 & 3 & 4::
しかし肝心のそのモジュールであるが、リンクが死んでおり、現在公開されていないようである。
さらに、これは僕の思い違いかもしれないが、上記ページ記載のzipダウンロードリンクを踏んだところ、thinkPHPのハッキング攻撃を受けた。どうせダウンロードできないので、上記ページは参考にしないことをおすすめする。
それに、この記事は釣りではなく、以下に示すとおり、正答を示している。以下を参考していただければ万事解決だろう。
「左矢印キー + 右矢印キー + ctrl + D」のショートカットキー(ホットキー)実装例
#If GetKeyState("left") && GetKeyState("right")
ctrl & d::
msgbox, debug.
return
#If
なかなか気づけなかったのが悔しいが、意外にあっけないものであった。
ソースは以下。
Three Key combination for AutoHotkey – Super User
これを利用することで、5つでも6つでも同時押しのホットキーの実装が可能となる。僕の場合は上記の通り、同時押しにおいて汎用性の高いctrl、space、arrow keysを使用している。
関連記事:
Node.jsでAutoHotkeyをスクリプティングする
LinuxコマンドラインからAutoHotKeyを実行する関数を実装してみた
AutohotkeyからChrome上でJavaScriptを実行する方法を考えた
Autohotkeyで文字化けする場合の対策
AutoHotKeyでファイル読み込み時に日本語が文字化けする対策
関連広告:
DX・業務効率化コース by テックアカデミー
仕事効率化・業務効率化コース by Udemy
自動化・オートメーションコース by Udemy
AutoHotkeyコース by Udemy