Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 10 自动热键:重新映射赢键-单独按下时_Windows 10_Keyboard Shortcuts_Autohotkey - Fatal编程技术网

Windows 10 自动热键:重新映射赢键-单独按下时

Windows 10 自动热键:重新映射赢键-单独按下时,windows-10,keyboard-shortcuts,autohotkey,Windows 10,Keyboard Shortcuts,Autohotkey,因为一个疯狂的笔记本电脑键盘布局和无法映射Fn组合,我想做一些重新映射。我想使用LWin键作为修饰符(如LWin+Right==>End等)。它很好用 但是,我想在单独按下和释放LWin时停止LWin,以打开Windows菜单(b/c我有时按下修改器,但随后决定不完成操作)并且我仍然希望能够相当轻松地访问Windows菜单,比如通过LAlt+LWin。(显然,LWin必须充当适当的修饰语,否则。) 所以我试着: #LAlt::Send {LWin} 哪一种工作,但丑陋(需要LWin保持按下,而

因为一个疯狂的笔记本电脑键盘布局和无法映射Fn组合,我想做一些重新映射。我想使用LWin键作为修饰符(如LWin+Right==>End等)。它很好用

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

所以我试着:

#LAlt::Send {LWin}
哪一种工作,但丑陋(需要LWin保持按下,而Alt是按下和释放)。反过来说会更自然,也就是说

!LWin::Send {LWin}
但它不起作用(即使使用
$
~
前缀也不行)

最糟糕的是,我没有成功地单独禁用LWin键,使其仍然可以用作修改器:

LWin::Return
完全杀死它

我不熟悉自动热键(我想我在键盘方面运气不错;);解决这些问题的好方法是什么


更新:这是迄今为止我的热键文件全文:

#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)
;??????????????
这应该起作用:

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

在这里使用Ctrl+Esc而不是LWin可以实现这一点

谢谢!我试过了,它确实单独处理了LWin。然而,它似乎已经杀死了我的其他组合(例如LWin+Right==>End:*#Right::Send{End})。有没有机会恢复它们?我在脚本末尾复制了这4行(见上面更新的问题),但似乎不起作用。LAlt+LWin确实会打开菜单,但LWin也会单独打开菜单,并且LWin+箭头按照Windows 10默认值工作。@fastcatch实际上初始代码工作,问题是您需要使用
我不确定我是否100%理解,但它确实是这样工作的,非常感谢!