新买了一块游侠2 rx键盘,想着用自定义滚轮方便打开常用程序,但是发现在Armoury Crate中设置后不起作用,网上解决方案伤筋动骨,得不偿失,有一定风险。
经测试,自定义滚轮能正常执行宏定义,只是对宿主机本地的应用程序无法支持。
将按键和应用程序绑定到一起,然后用宏绑定按键,自定义滚轮绑定宏即可解决。
以下是"自定义滚轮按倒M模式的时候,向上滚动打开当前文件夹所在位置的git-bash"的步骤:
- 步骤1:下载autoHotKey,安装并启动
- 步骤2:写AHK脚本,实现y依次按下
Ctrl+Win+Alt+h → Ctrl+Win+Alt+k → Ctrl+Win+Alt+g → Ctrl+Win+Alt+i → Ctrl+Win+Alt+t,在当前文件夹打开 Git Bash
c
global seq := ""
global lastTime := 0
CheckSequence(key) {
global seq, lastTime
if (A_TickCount - lastTime > 2000)
seq := ""
lastTime := A_TickCount
seq .= key
if (StrLen(seq) > 5)
seq := SubStr(seq, -4)
if (seq = "hkgit") {
seq := ""
OpenGitBash()
}
}
; ======================
; 快捷键:Ctrl+Win+Alt+h → Ctrl+Win+Alt+k → Ctrl+Win+Alt+g → Ctrl+Win+Alt+i → Ctrl+Win+Alt+t
; 功能:在当前文件夹打开 Git Bash
; ======================
^#!h:: CheckSequence("h")
^#!k:: CheckSequence("k")
^#!g:: CheckSequence("g")
^#!i:: CheckSequence("i")
^#!t:: CheckSequence("t")
OpenGitBash() {
path := GetActiveExplorerPath()
; 如果没在浏览文件夹,就打开用户目录
if (path == "")
path := A_Desktop
Run("C:\Program Files\Git\git-bash.exe", path)
}
GetActiveExplorerPath() {
hwnd := WinGetID("A")
class := WinGetClass("ahk_id " hwnd)
if (class != "CabinetWClass")
return ""
for window in ComObject("Shell.Application").Windows {
try {
if (window.hwnd = hwnd)
return window.Document.Folder.Self.Path
}
}
return ""
}
URLDecode(str) {
static hex := "0123456789ABCDEFabcdef"
loop {
pos := RegExMatch(str, "%[" hex "{2}]")
if (!pos)
break
char := SubStr(str, pos + 1, 2)
str := StrReplace(str, "%" char, Chr(Number("0x" char)), , 1)
}
return StrReplace(str, "%20", " ")
}
- 用autohotkey加载此脚本,注册系统快捷键
- 设置宏,并再Armoury Crate绑定
-
设置宏:

-
绑定自定义滚轮

-