After Effects with AutoHotKey (1) 簡單範例
AutoHotKey是個免費又強大的鍵盤自訂工具,網路上也有許多的應用範例。雖然用在Adobe系列軟體的討論不多,但自己用了AutoHotKey這幾個月後,想要稍微介紹一下這個軟體的厲害之處,希望拉更多人入坑(?
簡單來說,AHK可以任意的定義一組快捷鍵,然後執行想要的功能。覺得快捷鍵不好按或是功能不實用,也能夠隨時修改。
AHK有兩種使用方式,一種是執行別人封裝好的exe檔,不需要安裝程式,但也不能再編輯內容。所以這裡要介紹的是另一種可以編輯的.ahk檔,需要先安裝主程式。
首先先到 AutoHotkey官網(https://autohotkey.com/),只有windows的版本
下載安裝完AutoHotKey後,只要打開複製下面這串內容到記事本,將副檔名從txt改成ahk就是完成了一個自訂快捷鍵啦(tala~
如果貼到記事本沒有斷行,改從這邊複製內容
;----------------------------------------------
SetTitleMatchMode, 2
#If WinActive("ahk_exe AfterFX.exe")
;----------------------------------------------;雙擊shift
~LShift::
if (A_PriorHotkey <> "~LShift" or A_TimeSincePriorHotkey > 400)
{
KeyWait, LShift
return
}
;執行功能
send +{F3}
return;----------------------------------------------
#IfWinActive
;----------------------------------------------
這個範例的功能是按兩下左邊的Shift,就會輸入shift+F3(切換Timeline和GraphEditor的快捷鍵)。接下來介紹每行的功能,簡單說明一下:
;----------------------------------------------
毫無反應,只是個分隔線。只要在開頭加上 ; (分號),那麼這行文字就會被當作註解,不會有功能。
SetTitleMatchMode, 2
#If WinActive("ahk_exe AfterFX.exe")
這兩行是用來告訴ahk,接下來設定的快捷鍵只有在ae才會有效,其它程式不受影響。平常不會動到這兩行
;雙擊shift
~LShift::
if (A_PriorHotkey <> "~LShift" or A_TimeSincePriorHotkey > 400)
{
KeyWait, LShift
return
}
;執行功能
send +{F3}
return
這串就是自訂的快捷鍵了。雖然很多行,但其實需要修改的部分只有粗體的地方。這裡設定是用左邊Shift按兩下,所以上面三個粗體都是LShift。如果想要改成用ctrl也很簡單:
;雙擊ctrl
~LCtrl::
if (A_PriorHotkey <> "~LCtrl" or A_TimeSincePriorHotkey > 400)
{
KeyWait, LCtrl
return
}
;執行功能
send +{F3}
return
只要把三個LShift改成LCtrl就可以,要稍微注意的是前兩個LCtrl的前面有~(波浪符),不要不小心刪掉了。
設定好要用來啟動的快捷鍵後,決定這個快捷鍵要的功能只需要一行:
send +{F3}
send是AHK用來傳送按了鍵盤哪個鍵的指令,+代表的是shift,{F3}就是F3。組合起來shift+F3也就是切換graphEditor的快捷鍵了。用一個更容易按的快捷鍵取代原本的快捷鍵,是ahk相當方便的地方
send幾乎可以傳送大部分的快捷鍵。組合鍵的部分是用符號代替
- ! 是alt
- +是shift
- ^是ctrl
所以
- send ^+d 就是ctrl+shift+d,分割圖層
- send ![ 就是alt+[,調圖層inpoint
- send {Home} 就是Home鍵,回到comp開始的時間
至於那些鍵要加{}哪些不用,需要時再查官網的手冊(點我)就好,因為我也背不起來XDD
return
每個快捷鍵寫完一定要有return,告訴ahk這個快捷鍵要做的事到此為止。接下來還會繼續新增其他快捷鍵,如果沒有加上return就會連其他功能都一起執行
#IfWinActive
最後一行,如果把快捷鍵寫在這行底下,那就不會限定應用程式,任何程式都可以執行。所以之後寫的各種ae快捷鍵,都要放在 #If WinActive(“ahk_exe AfterFX.exe”) 和 #IfWinActive 中間,才能確定不會影響到其它程式
//
AHK運作的方式大概就是這樣。其實不只快捷鍵還有很多功能,但應該不會很多人想自己寫,所以下一篇會分享目前自己設定的快捷鍵XDD