用AutoHotkey統一不同工具的偵錯功能鍵
筆者經常需要在不同的開發工具間切換,用IntelliJ IDEA寫Java與JSP,網頁除錯則使用Microsoft Script Editor(以下簡稱MSDE),偶爾還用Delphi拉拉視窗表單,人吃五穀雜糧,寫程式沒有都沒Bug的,因此開發工具的偵錯追蹤功能就是我輩的好朋友了。但每個系統用的功能鍵都不同,在操作時經常會發生按鍵錯亂的狀況,想要把這些功能鍵設定成一致,卻因為是系統鍵而無法設置或因操作繁瑣而放棄。今天突然靈機一動想到可以用AutoHotkey來試試。
我常用的三個偵錯按鍵如下:
系統工具\偵錯功能 | Step into(逐步執行) | Step over(不進入函式) | Resume Program(開始) |
---|---|---|---|
IntelliJ IDEA 按鍵 | F7 | F8 | F9 |
Microsoft Script Editor 按鍵 | F11 | F10 | F5 |
因為使用IDEA較頻繁,因此把按鍵統一成〔F7〕、〔F8〕、〔F9〕,基本的操作步驟如下:
- 由網頁錯誤處跳入MSDE
- 按〔F7〕做逐步執行,AutoHotkey攔截到〔F7〕後自動送出〔F11〕
- MSDE接收到〔F11〕,就做了逐步執行的動作了
其實就是對MSDE做鍵盤Remapping處理。因為這個按鍵轉換只針對MSDE,因此先寫一個函數來辨識我們是否在執行MSDE:
; 由標題判斷使用的程式. 傳回"IDEA" 或 "MSDE" getProgram(sTitle) { sProgram := "" iPos := InStr(sTitle, "IntelliJ") ;MsgBox %iPos% if iPos > 0 sProgram := "IDEA" else { iPos := InStr(sTitle, "Microsoft Script Editor") if iPos > 0 sProgram := "MSDE" } return %sProgram% }
以下就是更換按鍵的指令。程式邏輯簡述如下:
- 把目前視窗的標題存入變數sTitle
- 以標題為參數叫用getProgram,再把傳回的"IDEA"或"MSDE"存入變數sProgram
- 若程式為"MSDE"時則送出〔F11〕按鍵
;; Microsoft Script Editor的Step into用F11, Step over用F10; 將之改成慣用的F7, F8 ;; 加~會繼續執行原訂功能 ~f7:: WinGetTitle, sTitle, A sProgram := getProgram(sTitle) ;MsgBox %sProgram%-%sTitle% if (sProgram = "MSDE") Send {F11} return ~f8:: WinGetTitle, sTitle, A sProgram := getProgram(sTitle) ;MsgBox %sProgram% if (sProgram = "MSDE") Send {F10} return ~f9:: WinGetTitle, sTitle, A sProgram := getProgram(sTitle) ;MsgBox %sProgram% if (sProgram = "MSDE") Send {F5} return
程式很簡單,但解決了長久以來的困擾,而且其他各自不同的按鍵也能透過此種置換方法來達成一致。
AutoHotkey的此種運用算是小兵立大功式的系統增強吧。
- 腳本檔下載:trace.ahk
##
您可能也會有興趣的類似文章
- AutoHotkey:在FireFox裡用鍵盤瀏覽網頁 (2則留言, 2008/03/27)
- AutoHotkey腳本的4種除錯方法(AHK #5) (0則留言, 2019/05/25)
- 幾個AutoHotkey的實用範例:音量控制、滾輪回上層與語音功能(AHK #7) (3則留言, 2019/06/05)
- [Mattermost 教學#5] 方便的斜線命令與AutoHotkey (2則留言, 2018/04/17)
- [AHK#58] 擷取豆瓣電影網的超簡單AutoHotkey爬蟲腳本程式 (0則留言, 2023/03/04)
- 輕鬆學會AutoHotkey的熱鍵:熱鍵用法實例解說(AHK #4) (2則留言, 2019/05/24)
- [Tools] 常用的AutoHotKey設定 (9則留言, 2005/05/12)
- 輕鬆學會彈指神功-揭露AutoHotkey絕技 (63則留言, 2008/04/10)
- [Tools] 操作熱鍵與熱字串的超便利工具:AutoHotKey (13則留言, 2005/04/29)
- 用AutoHotkey改造ThinkPad X61按鍵 (2則留言, 2008/03/23)
- 快速建立個人常用詞庫-AutoHotkey 熱字串小工具:HotString Helper(AHK #3) (0則留言, 2019/05/18)
- 如何轉換AutoHotkey的預設分隔字元:冒號 (2則留言, 2008/03/17)
- AutoHotkey與Google+ Commander合用-以滑鼠移動訊息位置 (0則留言, 2011/10/31)
- [AHK#57] AutoHotkey v2正式釋出,2023年學習新目標 (6則留言, 2023/01/01)
- 用AutoHotkey輕鬆製作螢幕小鍵盤 (16則留言, 2008/03/16)
Sorry, 很久沒用Google sc…