サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
TGS2023
ahkwiki.net
ウィンドウのタイトルバーなどのタイトルを指定する。 大文字小文字は区別される。他に、以降で説明するような指定が可能。 大抵の場合、残りの3引数は省略される。 タイトルやテキストのチェックは、デフォルトでは前方一致になっている。 SetTitleMatchMode,2というコマンドで部分一致になる。 SetTitleMatchMode,3で完全一致。 SetTitleMatchMode,RegExでは、正規表現による指定が可能。 DetectHiddenWindows,Onを行わなければ、非表示のウィンドウは無視される。 ただし、後述のLastFoundWindowがAutoHotkeyのGuiウィンドウの場合、DetectHiddenWindowsがOffでも検出される。 DetectHiddenText,Offを行うと、非表示のテキストは無視される。 WinTitleの特殊な利用法[編集
概要[編集] ホットストリングは、ユーザーが特定の文字列をタイプしたときにアクションを発生させられる機能である。 入力された文字列を別の文字列を入力する自動置換型と、ホットキーのようにスクリプトを実行するタイプがある。 NT系専用。 自動置換型[編集] ::btw::by the way 上記のように設定すると、 btwという単語を入力したときに、それがBackSpaceで削除された後、代わりに by the wayと入力される。 置換後のテキストの指定はSendコマンド同様に特殊キーなども指定できるが、(今のところ)変数を展開することは出来ない。 置換後のテキストに2バイト文字を使うことはできないので、スクリプト実行型でクリップボードを経由して貼り付けるなどの方法を取る必要がある。 この機能は主に英語圏でのテキスト入力の省力化を想定していると思われ、日本語環境では使い道が限られる。 そこ
イントロダクション[編集] キーリマップとはその名の通りキーの置き換えを行うもので、「キーAとキーBを入れ替える」といった用途に利用する。 AutoHotkeyの機能は純然たるリマップではないが、ウィンドウ毎にリマップ定義を行えたりするなどのメリットがある。 純リマップであるレジストリのスキャンコードマップを変更してリマップを行う事との違い、およびメリット・デメリットは後述する。 なおリマップ機能には以下の制限事項がある。あらかじめ注意されたし。 Win 9x/Me では利用できない(ホットキー と Send コマンドで代用する)。 ジョイスティックでの利用は出来ない(同上)。 リマップの定義方法[編集] 置換元キー::置換先キーという行を記述すると、置換元キーに置換先キーを割り当てることができる。 例えば、以下のようにすると、 Aキーを押したときに bが入力されるようになる。 a::b
ホットキーは ::(コロン2つ)を伴ったサブルーチンラベルとして記述される。 ホットキーが入力されると当該ラベルの次の行に処理が移り、最初にReturnかExitが実行されるまでが処理される。 #y:: WinActivate, Untitled - Notepad Return ホットキーに割り当てる動作が1コマンドだけなら、 :: (コロン2つ)の直後にコマンドを記述することで、1行で済ませられる。Returnは不要。 #y::WinActivate, Untitled - Notepad (備考) プログラムは擬似マルチスレッドになっている。 ホットキーイベントの実行途中に、他のホットキーイベントが実行されることも可能。
実行制御 | GUI表示 | 演算・変数 | メモリ・DLL操作 | 文字列操作 | キーボード | マウス | シェル | ウィンドウ | ウィンドウグループ ステータスバー | コントロール | サウンド | ファイル | INIファイル | レジストリ | 環境変数 | AutoHotkey | その他 | 設定関係 | オブジェクト FormatTime[編集] YYYYMMDDHH24MISS形式のタイムスタンプを指定の書式の日付時刻文字列に変換する。 FormatTime, OutputVar [, TimeStamp, Format] Parameters[編集] 引数名 説明
これらの文字は並べることで複数の修飾キーの同時押しがなされているものとすることも出来る。 大文字と小文字の区別[編集] Send系のコマンドでは、引数として与えた文字列の大文字と小文字は厳密に区別される。 Send, ABC ; "ABC" と出力される Send, abc ; "abc" と出力される 上例の二つの出力内容は、与えた文字列の大文字/小文字に依存する。 特に注意すべき点は修飾キーと組み合わせた場合である。以下の例はキーを送ってコピーをさせる場合。 Send, ^C ; × 大文字の場合は仮想キーコードが異なるので動作しない Send, ^c ; ○ キー名[編集] 英数字や、特別な意味を持たない記号は、そのまま記述すればよい。 Shiftを押しながら出てくる文字は、Shift+文字のキーが送信される。 その他のキーは、以下のように {}で囲んで指定する。 {vkXX}や{v
ここでは、AutoHotkeyで実現できる機能の一例を紹介する。 なお、例の中で自動操作などの対象となっているプログラムは、特に記述がない場合架空の物である。 キー割り当て変更[編集] リマップ機能を利用すれば、特定のキー操作に別のキーを割り当てることが出来る。 おおよそ全てのキーとマウスボタン、ジョイスティックのボタンの割り当てが可能である。 #h::left ;Win+Hに←キーを割り当て #j::down ;Win+Jに↓キーを割り当て #k::up ;Win+Kに↑キーを割り当て #l::right ;Win+Lに→キーを割り当て 特定ソフトのキーバインド変更[編集] #IfWinActive指令を使えば、特定の種類のウィンドウでのみキー割り当てを有効にすることが出来る。 ウィンドウの判別にはウィンドウタイトルやクラス名を使用できる。ウィンドウのクラス名は、付属のAU3_Spy.e
#UseHook ;ホットキーラベルの定義で、常にフックを使用するようにする vk1Dsc07B:: ;無変換 KeyWait,vk1Dsc07B,T0.3 ;0.3秒対象キーが押されたかどうか If(ErrorLevel) { ;ここに任意のコマンド 長押し KeyWait,vk1Dsc07B Return } KeyWait,vk1Dsc07B,D T0.2 ;0.2秒対象キーが押されるのを待つ If(ErrorLevel) { ;ここに任意のコマンド 1度押し KeyWait,vk1Dsc07B Return } ;ここに任意のコマンド 2度押し KeyWait,vk1Dsc07B Return
必要なファイルの準備 まず始めに以下のファイルをダウンロードしてください。 Notepad++ Installer (公式サイト) AutoHotkey公式フォーラム Notepad++用 定義ファイル [Syntax-Highlighting] [Auto-Completion] Download → 右クリック → 名前を付けてリンク先を保存 インストール ダウンロードした npp.x.x.Installer.exe を実行し、ウィザードに従ってください。 ※Vista以降のOSでは UAC(ユーザーアカウント制御)機能を無効にするか「ProgramFiles」「Windows」以外のフォルダにインストールして下さい。 ※Vista以降のOSでは UAC(ユーザーアカウント制御)機能を無効にするか「ProgramFiles」「Windows」以外のフォルダにインストールして下さい。 L
コマンドライン引数。 %0%には引数の数が格納される。 引数の渡し方などはスクリプトの項を参照。 関数や式では直接参照出来ないので以下のようにする。 var1 = %1% SomeFunc(var1)
実行制御 | GUI表示 | 演算・変数 | メモリ・DLL操作 | 文字列操作 | キーボード | マウス | シェル | ウィンドウ | ウィンドウグループ ステータスバー | コントロール | サウンド | ファイル | INIファイル | レジストリ | 環境変数 | AutoHotkey | その他 | 設定関係 | オブジェクト 実行制御[編集] 処理のブロック化・条件分岐
実行環境[編集] どれをインストールすればいいの?[編集] インストーラー/AutoHotkey_L Unicode版推奨、日本語を含む文字列の取り扱いが断然便利な為。 64ビットOSでAHKL32ビット版の使用は制約が多いので、64ビット版を強く推奨。 ※ 詳細はAutoHotkey L/イントロダクション スクリプトに書いた日本語が文字化けしちゃうんだけど...。[編集] スクリプトファイルを「UTF-8 (BOM付)」で保存する。(AHKLの場合) ※ 詳細はスクリプトファイルのエンコーディング スクリプトを見やすくしたい。[編集] 改行をいれる。 インデント(タブ文字/Tab または 半角スペース)いれる。全角スペース× ネスト(入れ子)となっている要素は、インデントを入れて1段下げる。階層化することで可読性が非常に良くなる。 コメントをいれる。 行頭が ; セミコロンの行はコメン
※外付けテンキーに関する注意 Tab や Backspace 等が付いている物もあるが、本来のテンキーには無いもので、通常キーボードのキーを出力している事が多い。 000 や 00 等が付いているものもあるが、本来のテンキーには無いもので、ハードウェア側で 0 キーを連打したことにしている事が多い。 ドライバ不要で NumLock 非連動型のものは、NumLock状態はOS側に通知されず、数値キーが押される前後にNumLockを出力している場合がある。 キーボード[編集] 分類 キー名 説明 文字入力関連
AutoHotkeyはホットキーへの機能の割り当てなど常駐ソフトの作成に特化したスクリプトエンジン。多彩なコマンドが用意されており、GUIを持ったプログラムの作成も可能。 任意のキーの割り当て変更、マクロ、ウインドウ操作 ... オープンソースの簡易プログラム言語、Windows用フリーソフト。
このページを最初にブックマークしてみませんか?
『AutoHotkey Wiki』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く