我想以这样的方式重新映射 Tab 键:
- 按下 Tab 键时,其行为如同 Windows(超级)键等待其他键(例如 m 或 t)并执行某些操作(例如最大化窗口)(例如 WIN+m、WIN+t)。它会等待,并且 Tab 重复被阻止。
- 单独按下 Tab 键,无需额外按键,Tab 键的行为与普通 Tab 键相同(一个 Tab 字符)
如何编写这样的 AutoHotKey 脚本?
$Tab::
Send, {LWinDown}
KeyWait, Tab
if ( A_PriorKey = "LWinUp")
Send, {LWinUp}
else
Send, {Tab}
return
目前我有这样一个通用的解决方案但它仍然重复Tab。
答案1
由于Alt Tab 的类似问题Autohotkey 文档中描述。我决定使用 SharpKeys 软件(Windows 注册表修改)将 Win 键重新映射到 Tab 键,然后应用 ahk 脚本
$LWin::
KeyWait LWin, T0.15
If !ErrorLevel ; if you hold the LWin key for less than 200 miliseconds...
Send {Tab}
Else ; but if it is held for more than that...
Send {LWin Down} ; ...hold LWin down
KeyWait LWin ; and, in both cases, wait for it to be released
Send, {LWin Up}
Return
与直接使用 ahk 编写 Tab 键脚本相比,它是一种更稳定、更通用的解决方案: 相关答案: Win Up 键作为 Tab 键代替 Windows 菜单1