HID macros。
ちょっと微妙なところはあるけど、使えそうな気配なので早速設定してみましょう。
・・・とその前に、俺がHidKeySequenceをどう使っているかの説明。
左手キーボード(=ワイヤレス テンキー)で押したキーをHidKeySequenceで拾って、
普通のキーボードではあり得ない(F13+1 みたいに)キーが押されたとして出力し
AutoHotkey(以下AHK)で そのキーに応じたスクリプトを動かしている。
なので
どのデバイスの何のキーが押されたかで、任意のキー(の組み合わせ)の出力 ができればOKなのだ。
HID macrosのMacrosタブで設定を行う。
TriggerのScanボタンを押すと
こういうのが開くので、テンキーのキーを押す。
実験的に7を押してみた。
Keyb2(=ワイヤレステンキー)の7(キーコード103)が設定された。
ちなみにメインキーボードのテンキー7を押すと、Keyb4:103 (7)になる。
OKOK。
続いてAutoHotkeyで定義している任意のキーの組み合わせを呼び出そう。
検証用に新規でAHKのスクリプトファイル作る。(通常使っている物に影響を出したくない)
#NoEnv
F13 & 1::
Msgbox, Test
Return
こんな感じで。
F13を押しながら1を押すを割り当てている。
最初の2行はお約束(複数起動しない&環境変数を参照しないことでわずかな速度アップ)
F13+1が押されたら、Testと書かれたダイアログを出力する
という簡単な物。
普通のキーボードにはF13なんて付いてないから、何ともバッティングしない。
色んな組み合わせが使い放題だ。
これをtest.ahkとでもして適当なところに保存&ダブルクリックして常駐させておく。
HID macrosに戻ってきて、
Actionのsend keyboard sequenceに
({F13}1)
と入力する。
ファンクションキーは中括弧{}で囲む必要があって、1キーと同時押しをするために
小括弧()で囲んでいる。
さぁ起動だ ポチッとな。
(ぼろろ~ん)←Windows11のシステム通知の音
・・・・・?
何度押しても変わらず。
何か間違えたかな?
Helpを読むと、
+abc と指定すると Abc
+(abc)と指定すると ABC
になると書いてある。
ちょっと待て。
実際に動かしてみると
+(abc)と指定しても Abc になるぞ?
小括弧はHelpにはグルーピングと書いてあって同時押しとは書いていない。
色々なところを参照した中に同時押しの記載があったのを鵜呑みにしたのが問題か。
どっちにしろグルーピングも動いてないけど。
順番に押していくことしかできないのであれば、キーの組み合わせによる定義数が大幅に減る。
単発でF13 とかなら動くので。
更にHelpを読んでいると修飾子としてCtrl、Shift、Altが使えるとある。
試しに
^c
としてみたら、ちゃんとコピーしてくれた。
この3つの修飾子であれば組み合わせられるのか。
HelpにはF16までしか書いていなかったけど、F24まで使えることは確認できた。
修飾子が3つ組み合わせられるので12*(2^3)ってことで96個まで使える。
普通単発でしか使わないIns、Del、Home、End、PageUp、PageDownなんかも含めたら
まだ設定数は増やせる。
現状10個も登録してないし、枯渇することはないだろう。
アプリの起動は問題なし。
AutoHotkeyのファイル(.ahk)を直接指定できる。
微妙なところはあるけど、ひとまず使えるアプリであることがわかった。
普段使っているキー割り当てを複数パターンで呼び出せるようにすれば
しばらく使いながら様子見 ということもできる。
#NoEnv
F13 & 1::
^F13::
Msgbox, Test
Return
こんな感じに。
次はLuaを検証してみますか。
あまり気乗りしないけどw