AutoHotKeyのスクリプトメモ
書くまでもない小さいことだが、一応記録しておく。
変数は保持されている
(当然ながら)ahkスクリプト内の一番外側にある変数はずっと保持されている:
vec := [0]
#o:: {
Loop 100 {
vec.push(vec.length)
}
MsgBox(vec.Length)
}
このようにホットキー登録の外側に置いた変数をホットキーの呼び出し内部で使用することができ、変更は反映されたままとなる。 配列でのみ確認している。ダイアログで表示される長さが100ずつ増えることから分かる。
Powershellスクリプトの呼び出し
Run
かRunWait
を使ってPowerShellスクリプトを実行することができる:
#o::
{
Run("powershell.exe -noexit -file `"C:\somewhere\AScript.ps1`"")
}
PowerShellスクリプトが呼び出せるなら、AutoHotKeyではできないようなこともできるようになるので、非常に便利になる。
-noexit
はPowerShellスクリプトの終了時にPowerShellのウィンドウを閉じないようにするもの。必要に応じて削除する。
このようにPowerShellスクリプトの呼び出しを使う場合としては、ブラウザ内の作業の自動化がある。AutohotkeyではブラウザのGUI部品、コントロールは操作できるのだが、 ページ内のHTMLタグが操作できそうになかったので、外部のPowerShellスクリプトを呼び出してそのあたりを何とかするという形にできる。
ホットキー登録には#を使っておくと悩まない
CtrlやAltは他の既存機能と競合する場合が多いので、Winキーをホットキーに含めるといい。どのキーをホットキーに使うか悩みが軽減できる。
使わない機能などは上書きしてもいいだろう。使ってないキーを割り当てるのもいい。
Windowsキーで使えるOSのショートカットキー一覧(Windows10で確認):
キー | 機能 |
---|---|
Win + A | アクションセンターを開く |
Win + C | Cortanaを開く |
Win + D | デスクトップを表示 |
Win + E | エクスプローラーを開く |
Win + F | フィードバックHubを開く |
Win + G | Xbox Game Barを開く |
Win + I | 設定を開く |
Win + M | ウィンドウをすべて最小化 |
Win + R | [ファイル名を指定して実行]ボックスを開く |
Win + S | スタートメニューで検索ボックスにフォーカスを当てて開く |
Win + V | クリップボードを開く |
Win + X | クイックリンクメニューを開く |
Win + Tab | タスクビューを開く |
調べていたら普通にWindowsのキーボードショートカット
というページタイトルで一覧があった:
おわり
PowerShellとの組み合わせは複雑になりすぎない程度に使っていきたい。 使いこなすにはまだほど遠いのでいろいろ書いておきたい。
以上です。