# 前言
## 什么是AHK嘱丢?
AHK是Auto Hot Key的首字母縮寫汇跨,它是一種腳本語言晦墙,它讓用戶能夠快捷或自動執(zhí)行重復性任務挪拟。
詳細請點 百度百科的Autohotkey择葡,或者 AutoHotKey的維基百科 紧武。
## 如何學習AHK。
首先AHK作為一門偏小眾的語言敏储,網(wǎng)上很少有視頻講解阻星,所以我們要充分利用好它的手冊。
其次多加練習已添。這也是學習每門語言必走的路妥箕。
幸好還是找到了一個講的不錯的教學視頻。
- 鏈接:http://pan.baidu.com/s/1slJ28aD 密碼:xg8u [百度云盤]
- 教程:AHK博客
- 視頻:https://yunpan.cn/cR7eYzAieTXwk 訪問密碼 4f84 [360云盤] 注:該視頻來自上面教程博客中的資源更舞。
# 使用
首先認識兩個關鍵字畦幢。
## 熱鍵和熱字串。
### 熱鍵
內容:當按下特定的按鍵或者按鍵順序或者按鍵組合時激活某個或者某系列動作缆蝉。
表示方式: (按鍵1)...(按鍵2)::(兩個冒號)
按鍵x是指所選擇的快捷鍵宇葱。比如
#q:: ; # 為 按鍵1, q 為 按鍵2刊头。
號鍵指代的是win鍵黍瞧,所以上面代碼的意思是當你按下win鍵和q鍵時激活一個動作。
比如
#q:: ;按下win鍵和q鍵時激活運行記事本這個動作原杂。
run Notepad ;run為AHK中一個命令印颤,相當于C語言中的關鍵字或者說是函數(shù)。還有msgbox等等污尉。
return ;return為返回值膀哲,在存在多個熱鍵時需使用,不然熱鍵中會起沖突被碗。
注意:在AHK中是不區(qū)分大小寫的某宪。所以run和RUN和Run或RUn或其他作用是一樣的。
誤例:請嘗試設置多個熱鍵锐朴,并且每一個熱鍵末端不加return兴喂,試試會有什么情況發(fā)生。
#### 幾個命令
run:運行程序或者文檔或其他
> + 比如: run notepad //運行記事本
Msgbox:顯示帶兩個按鈕的對話框 (是 和 否)對話框中可加內容焚志。
> + 比如: Msgbox衣迷,你好嗎? //顯示你好嗎?的對話框酱酬。
Send :在當前窗口輸入文本內容壶谒。
> + 比如: send how are you? //在當前窗口輸入how are you膳沽?
### 熱字串
內容:擴展或者說自動替換文本汗菜,當然也可以映射任何腳本動作。
表示方式
::(被替換內容)::(替換內容)
舉例:
自動替換:
::hay::how are you? ;當你輸入hay時自動替換為how are you挑社?
::nh::你好 ;當你輸入nh時自動替換為你好
映射腳本:
::np::
run Notepad ;當輸入np加空格時激活運行記事本這個動作陨界。
return
::nh::
send 你好。 ;在當前窗口輸入你好痛阻。
return
誤例:請嘗試使用多個映射腳本和自動替換的組合菌瘪,每個映射腳本末端不加return,試試會有什么情況發(fā)生阱当。
### 自定義按鍵
內容:用來連接任何兩個或多個按鍵組合成一個新的按鍵俏扩。
命令:&
內容:(按鍵1)&(按鍵2)&...&(按鍵n)
q&n:: ;按下q和n
run notepad ;激活打開記事本這個動作。
return
## 全局變量和局部變量
命令:#IFwinactive
表示方式:#IFwinactive (在什么窗口)(熱鍵或熱字串)
舉例:
全局變量:
#q:: ;按下win鍵和q鍵
run Notepad ;** 任意窗口**激活打開記事本這個動作
return
局部變量:
#IFwinactive 新建文本文檔.txt - 記事本 ; 在**新建文本文檔.txt - 記事本**窗口下
#q:: ;按下win鍵和q鍵
run Notepad ;激活打開記事本這個動作
return
注意:同樣不區(qū)分大小寫弊添。比如ifwinactive等等动猬。
嘗試一下。
# 總結
關鍵字:
- 熱鍵 : (按鍵1)...(按鍵2)::(兩個冒號)
熱字串 : ::(被替換內容)::(替換內容)- 命令:send , run , msgbox 表箭,ifwinactive赁咙,&
- 全局和局部變量
- 自定義按鍵 : &
注意事項:
- AHK中不區(qū)分大小寫:即run和RUN沒有區(qū)別。
- 考慮你是想要在全局還是局部中激活動作免钻。
更多內容和命令請參考視頻或者手冊彼水。