Autohotkey:重新映射Win键-单独按下时

时间:2018-10-30 15:40:54

标签: windows-10 keyboard-shortcuts autohotkey

由于疯狂的笔记本电脑键盘布局以及无法映射Fn组合,我想进行一些重新映射。我想使用LWin键作为修饰符(例如LWin + Right ==> End等)。效果很好。

但是,我想停止LWin(单独按下并释放)以显示Windows菜单(b / c有时我按下修改器,但随后决定不完成操作)仍然希望能够相当轻松地访问Windows菜单,例如通过LAlt + LWin。 (显然,LWin必须充当适当的修饰符。)

所以我尝试了:

#LAlt::Send {LWin}

这有点奏效但是很丑陋(需要在按住Alt键并释放的同时按住LWin键)。反之,那就更自然了。

!LWin::Send {LWin}

但是它不起作用(甚至没有前缀$~)。

最糟糕的是,我无法成功地单独禁用LWin键 ,以致它仍然可以用作修饰符:

LWin::Return

完全杀死它。

我是autohotkey的新手(我猜是很幸运的键盘)。解决这些问题的好方法是什么?


更新:这是到目前为止我完整的热键文件:

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
#Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.
#InstallKeybdHook

; Win + arrows
*#Right::Send {End}
*#Left::Send {Home}
*#Down::Send {PgDn}
*#Up::Send {PgUp}

; Sane CapsLock: make it Shift, Shift+CapsLock as CapsLock
CapsLock::Shift
+CapsLock::CapsLock

; Alt-Win to Win (so that Win menu is accessible still)
;   and disable Win alone (so that it won't pop up with navigation)
;??????????????

1 个答案:

答案 0 :(得分:0)

这应该有效:

LWin up::return
<!Lwin::
    send ^{Esc}
return
<#right::
    send {end}
return

使用Ctrl + Esc代替LWin可以解决问题。