キーを表す文字について
「AutoHotkey
との違い」の説明の方にも書こうと思っていた事ですが、
AutoHotkey
のキーの指定方法についていくつかここで説明しておこうと思います。
ショートカットキーは
Ctrl、
Alt、
Shift
のキーを組み合わせて使うものなので、
Ctrl + Alt + Shift +
といった形が本来よく見る記述です。
ですが AutoHotkey では
Ctrl | は | ^ |
Alt | は | ! |
Shift | は | + |
で表し、
Ctrl+Alt+Shift+a
は
^!+a
という表記になります。
AHKのキーの指定
AHK でキーを設定する場合、普通はホットキーラベルを使って設定します。
^!+a::
[実行する処理]
return
基本的にはこのような記述のものを使います。
ホットキーラベルと言われているもので、
キーを設定するためのサブルーチンに近いものです。
この
TextRunRun
では、サブルーチンを自由な名前で作れないので
ホットキーラベルを作ることはできません。
このホームページでは、ラベルと言われているものは
全てサブルーチンという名で呼んでいます。
HotkeyのAHKコマンドは使用できる
Hotkey という AHKコマンド があります。
AutoHotkey はこちらを使ってもキーの設定ができるようになっています。
TextRunRun では、こちらの方は使えるので、それを使っての設定は出来ます。
[ 書式 ]
キーの一覧のウインドウの常時使用のキー
この
TextRunRun
では
キーの一覧のウインドウの
常時使用
のタブの部分にあるものが同じショートカットキーを意味します。
こちらの
常時使用
のタブ内のリストに表示されるためこちらを使って設定する事を薦めます。
Hotkey を使用してキーを設定しても、 常時使用 のタブ内のリストには表示されません。
キーの登録用
のウインドウで設定する時に分かると思いますが、
キー名は基本的には
^!+a
の形式で指定する事になります。
ただし、
Ctrl+Alt+Shift+A
の形式でも指定できるようにしています。
後、スクリプトから登録したい場合は
&hotkeyAllGroundNewFromCommand
の規定のコマンドがあります。
SendのAHKコマンドについて
AHK のキーの指定の仕方についての事に話を戻します。
Send といった AHKコマンド もキーを指定して使います。
こちらも、ショートカットキーは
^!+a
という表記になります。
さて、少し間際らしい事なのですが
Send
でキーを指定する場合、
一文字のキーではなく、単語のキーを指定する場合は
{ }
で囲む必要があります。
- {Home}
- {End}
- {Tab}
- {Esc}
- {Space}
- {BackSpace}
ショートカットキーも指定するなら、
Send , ^+{Home}
などの記述になります。
ただ、{ }
で囲むのは、基本的には
Send
の
AHKコマンド
の場合だけだと思います。
{ }を使う場合と使わない場合
ホットキーラベル
または
Hotkey
の
AHKコマンド
を指定する場合は
{ }
で囲まずに指定するようです。
Send
などで指定する形式のように、
キーの部分を
{ }
で囲んだ場合はうまく登録できません。
TextRunRun上のキーの登録時では
TextRunRun上のキーの登録の場合も
Hotkey
の
AHKコマンド
を使っている関係上、同じ仕様になります。
キー名
の部分は、
{ }
を付けず、
^+Home
などの形式で指定してください。
&hotkeyAllGroundNewFromCommand
などを使った場合も、キーの指定部分はその形式になります。