仅重新映射 Windows 键,保留 Windows 键组合

kri*_*ajb 5 windows autohotkey

我希望仅在单独按下时重新映射左 Windows 键,并保留每个左 Windows 键组合,例如 LWin+左/右等

到目前为止,我尝试过的解决方案都没有效果很好:有时脚本不会拦截 Windows 键,并且主要在默认 Windows 行为和自动热键脚本行为之间执行某些操作。

这是迄今为止效果最好的脚本:

$LWin::
    KeyWait, LWin, T0.3
    If !ErrorLevel {
        Send, +!{space}
    }
    Else {
        Send, {LWin Down} 
    }   
    KeyWait, LWin
Send, {LWin Up}
Return
Run Code Online (Sandbox Code Playgroud)

我尝试过的事情:

use*_*297 7

尝试这个:

LWin up::
If (A_PriorKey = "LWin") ; LWin was pressed alone
    Send, +!{space}
return

; In this case its necessary to define a custom combination by using "&" or "<#" 
; to avoid that LWin loses its original function as a modifier key:

<#d:: Send #d  ; <# means LWin
Run Code Online (Sandbox Code Playgroud)