AutoHotKey 快速入門


AutoHotKey 是一個免費的鍵盤宏程序,可以用於配置鍵盤快捷鍵、鼠標事件
以及搖桿事件,還可以在輸入文本的時候對文本進行擴展(自動補全)

第一個腳本

新建文件test.ahk並輸入以下內容:

^!n::
  Run, notepad
Return

保存文件,雙擊執行,可以在右下角看到腳本執行的圖標,
然后按下Ctrl+Alt+N就可以打開記事本程序。

AutoHotKey 快捷鍵命令大概可以分為三個部分:

  • ::左邊的部分表示需要按下的快捷鍵,^表示Ctrl!表示Alt
  • ::右邊部分表示需要執行的命令
  • 最后Return表示結束命令

另外除了快捷鍵(HotKey)配置, AutoHotKey 還可以配置 HotStrings,
相當於我們平時使用的 IDE 中的文本自動補全功能

在電腦右下角的腳本執行圖標上右鍵,單擊“編輯腳本”,
會彈出一個記事本程序來編輯當前運行的腳本,加入如下內容:

::hw::Hello World!

保存文件,關閉編輯器,在右下角腳本圖標上右鍵,單擊“重新加載腳本”,
然后來測試一下腳本功能,首先Ctrl+Alt+N打開記事本,
輸入hw,按下EnterTab就會進行自動補全,用Hello World!替換hw

特殊符號

^表示Ctrl這種快捷鍵中的特殊符號,意義如下:

符號 意義
# Win(鍵盤上有Windows圖標的鍵)
! Alt
^ Ctrl
+ Shift

我們除了可以像上面的一樣定義全局快捷鍵之外,
另外還有一些用於Windows的特殊命令,可以用於定義特定窗口的快捷鍵,如:

  • #IfWinActive表示窗口是否處於激活狀態,可以用於指定在特定窗口下可用的快捷鍵,
    如下腳本表示在Untitled - Notepad窗口中按下Win+P按鍵會彈出窗口
    提示“你按下了Win+P”

    #IfWinActive Untitled - Notepad
    #space::
      MsgBox, 你按下了Win+P
    Return
    #IfWinActive
    
  • #IfWinExist表示窗口是否存在

發送按鍵 - 一鍵當千

快捷鍵后的命令部分除了執行命令運行程序之外,還可以向電腦發送按鍵單擊事件,
就相當於 AutoHotKey 幫你去按下按鍵,從而獲取按下一個快捷鍵相當於一堆按鍵。

LCtrl::
  Send, AutoHotKey
Return

上述命令表示按下左邊Ctrl按鍵時會發送按鍵,依次按下AutoHotKey
對於鍵盤上的一些特殊按鍵,如Ctrl等都有對應的表示,如:^表示Ctrl
!表示Alt等等,除了這種類似快捷鍵特殊符號的表示,還可以使用{...}的方式來
表示,如:{lAlt}表示左邊的Alt鍵,{F1}-{F24}表示鍵盤上的F1F24鍵等。

; 按下Win+H就等於按下Ctrl+Alt+HOME鍵
#h::
  Send, ^!{HOME}
Return

其實,除了^!+#可以表示組合鍵之外,
其他的{...}形式的符號都只是按順序敲擊鍵盤罷了,
比如:^{HOME}表示按下Ctrl的同時按下HOME鍵,
{Ctrl}{HOME}則表示按下Ctrl松開,然后按下HOME鍵。

若是想要實現組合鍵的功能,可以使用{Ctrl Down}{Ctrl Up}這種組合,
表示按下和松開{Ctrl}鍵,在這兩個之間的符號都會在按住Ctrl的情況下執行。
也就是說:^{HOME} = {Ctrl Down}{HOME}{Ctrl Up} != {Ctrl}{HOME}

注:支持的Send鍵列表見官方文檔
但是要注意的是除了官方文檔提供的按鍵可以使用{...}形式,
其他的按鍵都不可以使用,如{a}就是一種錯誤的表達方式

另外,Send后的部分可以分多行以便於閱讀,只要用括號括起來就可以:

^j::
  Send,
    (
      Line 1
      Line 2
      A dobe
    )
Return

參考鏈接:
https://autohotkey.com/docs/Tutorial.htm


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM