G HUB・Logicool Gaming Softwareから脱却しませんか?
こちらの記事は、たくさんの方に読んでいただけているのですが、実際に AHK に移行したという話はあまり聞かないのが少し寂しいところです。
慣れてしまえば G HUB より何倍も使いやすいのですが、直感的な UI があるわけではないので、一見とっつきにくいのは認めざるを得ません。
そこで、G HUB にあるような設定を AHK でどう書くか、対応一覧を作成しました。
AHKの最低限の記法について
- 基本は
設定したいキー::入力したいものの形で書く。 ;より後ろはコメントになる。- 2行以上の処理を書く場合は、最後に
Returnが必要。
キー
G HUB の 割り当て 欄に近いものです。
F13::a ; a ~ z(大文字小文字区別なし)
F13::1 ; 数字
F13::vkBC ; ,(カンマ)
F13::vkBB ; ;(セミコロン)
F13::vkBA ; :(コロン)
F13::- ; -(ハイフン)
F13::. ; .(ドット)
F13::[ ; [
F13::@ ; @
F13::/ ; /(スラッシュ)
F13::^ ; ^
F13::Alt ; Alt
F13::BS ; バックスペース
F13::CapsLock ; CapsLock
F13::Ctrl ; Ctrl
F13::Del ; Delete
F13::End ; End
F13::Enter ; Enter
F13::Esc ; Esc
F13::F1 ; F1 ~ F24
F13::Home ; Home
F13::Ins ; Insert
F13::LWin ; Windows
F13::NumLock ; NumLock
F13::Numpad0 ; テンキー上の0 ~ 9
F13::NumpadDot ; 同じようにNumpadの後 Div,Mult,Add,Sub Enterでテンキー上の /,*,+,-,Enter
F13::PgUp ; PageUp
F13::PgDn ; PageDown
F13::Pause ; Pause
F13::ScrollLock ; ScrollLock
F13::Shift ; Shift
F13::Space ; Space
F13::Tab ; Tab
F13::vkF3 ; 半角/全角切り替え
F13::Left ; 同じように Right, Up, Downで矢印キーの←,→,↑,↓
うまく動かないときは、次のコマンドと同じように F13::Send,{Del} の形で書いてください。
コマンド
複数のキーを同時押しする動作です。
Windows
F13::Send,#m ; ウィンドウの最小化
F13::Send,#r ; ファイル名を指定して実行
F13::Send,#. ; 絵文字パネルを開く
F13::Send,#g ; ゲームバーを開く
F13::Send,#i ; 設定を開く
F13::Send,#l ; 画面をロック
F13::Send,#k ; デバイスを探す
F13::Send,#b ; 隠れているインジケータにフォーカス
F13::Send,#s ; 検索ウィンドウを開く
F13::Send,#x ; システムメニューを開く
F13::Send,#d ; デスクトップを隠す/見せる
F13::Send,#e ; ファイルエクスプローラーを開く
F13::Send,#{Tab} ; タスクビューを開く
F13::Send,#u ; 簡単操作の設定を開く
F13::Send,#t ; タスクバーのボタンに順にフォーカス
F13::Send,#a ; アクションセンターを開く
F13::Send,#^{Enter} ; ナレーターを起動する
F13::Send,#{^} ; 拡大鏡を開く
編集
F13::Send,^s ; 保存
F13::Send,^z ; 戻る
F13::Send,^y ; やり直す
F13::Send,^c ; コピー
F13::Send,^v ; ペースト
F13::Send,^n ; 新規作成
F13::Send,^o ; 開く
F13::Send,^x ; 切り取り
F13::Send,^a ; 全選択
F13::Send,^{^} ; ズームイン
F13::Send,^0 ; ズームリセット
F13::Send,^- ; ズームアウト
F13::Send,^t ; 新しいタブ
F13::Send,^w ; タブを閉じる
ナビゲーション
F13::Send,!{Right} ; 進む
F13::Send,!{Left} ; 戻る
操作
F13::Send,!{F4} ; アプリを閉じる
F13::Send,^+{Esc} ; タスクマネージャー
F13::Send,!{Esc} ; ウィンドウの切り替え
F13::Send,!{Tab} ; ウィンドウのリスト
F13::Send,^{Esc} ; スタートメニューを開く
特殊なキー
キー のときと違うところがあるのがわかったでしょうか?
^、!、+、#、Send、{ } が出てきます。
少しややこしいので、コピペで使うだけなら システム まで飛ばして大丈夫です。
^ ! + #
下の4つは修飾キーです。
Ctrl + W や Alt + T のように2つ以上のキーを押したいときは、以下のように置き換えます。
| Ctrl | ^(キャレット) |
|---|---|
| Alt | ! |
| Shift | + |
| Winキー | #(ハッシュ) |
修飾キー
Send
キーを入力します。
一見すると「これいる?」と思いますが、違いがあります。
- 下の例のように何個も重ねられる。
- キーを長押ししても、1回押した入力として扱える。
- キーを押す・離すなどの状態を細かく指定できる。
F13::
Send,^a
Send,{s 3} ; sを3回押す
Send,{Del Down} ; Deleteを押しっぱなしにする
Send,{LButton} ; 左クリックする
Send,{Del Up} ; Deleteを離す
Return
{ }
謎の中括弧です。これは Send とセットでよく出てきます。
Send では、キー入力ではなく 文字入力 として扱われる場合があります。
F13::Send,Del ; F13を押してみると"Del"と文字が入力される
F13::Send,{Del} ; Deleteキーを押したいなら{ }が必要
Del という文字列と Delete キーを区別するために { } が必要なんですね。
他のキーも同じです。心配なら wiki を確認すると確実です。
実はSendいらない
ややこしいのですが、細かい動作を無視すれば、以下の2つは同じ挙動をします。
F13::!Del
F13::Send,!{Del}
ただ、ソフトによってはなんでか上手く動いてくれないため、ここでは安牌をとって Send を使っています。
システム
起動アプリケーション
F13::run, Notepad.exe ; メモ帳を起動
F13::run, Notepad.exe,,max ; メモ帳を最大化して起動。(minで最小化)
F13::run, Designer.exe,C:\Program Files\Affinity\Designer ; パスを指定してAffinity Designerを起動
マウス
F13::LButton ; 左ボタン
F13::RButton ; 右ボタン
F13::MButton ; 中ボタン
F13::Click 2 ; ダブルクリック
F13::WheelUp ; スクロールアップ
F13::WheelDown ; スクロールダウン
F13::WheelLeft ; 左へスクロール
F13::WheelRight ; 右へスクロール
; DPI系はチョット難しいのでカット
編集
F13::Send,^c ; コピー
F13::Send,^v ; 貼り付け
F13::Send,^x ; 切り取り
F13::Send,^z ; 元に戻す
F13::Send,^y ; やり直し
F13::Send,#l ; 画面をロック
メディア
F13::Send,{MEDIA_PLAY_PAUSE} ; 再生/一時停止
F13::Send,{MEDIA_STOP} ; 停止
F13::Send,{VOLUME_UP} ; 音量を上げる
F13::Send,{VOLUME_DOWN} ; 音量を下げる
F13::Send,{MEDIA_NEXT} ; 次のトラック
F13::Send,{MEDIA_PREV} ; 前のトラック
F13::Send,{VOLUME_MUTE} ; ミュート
マクロ
いくつか例を書きますが、氷山の一角です。
AHK はかなり色々できるので、慣れてきたらぜひ調べてみてください。
Loop / Sleep
{ }内の動作を繰り返す / 遅延を追加する
F13::
Loop, 10 ; 以下を10回繰りかえす
{
Send, ^+{F9}
Sleep, 500 ; 0.5秒遅延を入れる
Send, {Left}
}
Return
左クリック連打
F13を押している間、左クリックが連打されます。
F13::
Loop
{
If GetKeyState("F13", "P"){ ; F13は設定するキーと同じものにしてください
MouseClick, Left
Sleep, 30 ; 数字を小さくすると連打が速くなります
}
}
Return
Return
他ボタンマウスでは使わないキーが出てくるかもしれません。そんなときは以下のようにするとなにもしなくなります。
F24::Return
#::Return とすると、 Winキー の誤爆を防いだりすることもできますね。