使用 AutoHotKey 将 Windows + JILK 映射到箭头键?
Map Windows + JILK to Arrow keys using AutoHotKey?
我似乎找不到如何绑定 X + Y => Z
。大多数在线链接显示了如何做相反的事情。我正在尝试实现此映射:
RWin + j :: Left
RWin + l :: Right
RWin + i :: Up
RWin + k :: Down
我试过这个语法 RWin&l::Right
但它没有编译。
有什么想法吗?
编辑: 我还希望它能与其他修饰键配合使用。所以当我按 RWin+j
然后 shift
它发送一个 shift+left
(与 ctrl
和 alt
相同)
编辑: 感谢@AleOtero93 这是我目前所拥有的:
; Arrows
>#j::Send,{LEFT}
>#l::Send,{RIGHT}
>#i::Send,{UP}
>#k::Send,{DOWN}
; Shift modifier
>#+j::Send,+{LEFT}
>#+l::Send,+{RIGHT}
>#+i::Send,+{UP}
>#+k::Send,+{DOWN}
; Ctrl modifier
>#^j::Send,^{LEFT}
>#^l::Send,^{RIGHT}
>#^i::Send,^{UP}
>#^k::Send,^{DOWN}
; Ctrl+Shift
>#^+j::Send,^+{LEFT}
>#^+l::Send,^+{RIGHT}
>#^+i::Send,^+{UP}
>#^+k::Send,^+{DOWN}
; Alt modifier
>#!j::Send,!{LEFT}
>#!l::Send,!{RIGHT}
>#!i::Send,!{UP}
>#!k::Send,!{DOWN}
; Alt+Ctrl
>#^!j::Send,^!{LEFT}
>#^!l::Send,^!{RIGHT}
>#^!i::Send,^!{UP}
>#^!k::Send,^!{DOWN}
; Alt+Shift
>#!+j::Send,!+{LEFT}
>#!+l::Send,!+{RIGHT}
>#!+i::Send,!+{UP}
>#!+k::Send,!+{DOWN}
; Alt+Ctrl+Shift
>#!^+j::Send,!^+{LEFT}
>#!^+l::Send,!^+{RIGHT}
>#!^+i::Send,!^+{UP}
>#!^+k::Send,!^+{DOWN}
; Insert/Delete
>#q::Send,{Insert}
>#a::Send,{Delete}
; Ctrl+Insert/Delete
>#^q::Send,^{Insert}
>#^a::Send,^{Delete}
; Shift+Insert/Delete
>#+q::Send,+{Insert}
>#+a::Send,+{Delete}
; Home/End
>#w::Send,{Home}
>#s::Send,{End}
; Ctrl+Home/End
>#^w::Send,^{Home}
>#^s::Send,^{End}
; Shift+Home/End
>#+w::Send,+{Home}
>#+s::Send,+{End}
; Ctrl+Shift+Home/End
>#^+w::Send,^+{Home}
>#^+s::Send,^+{End}
; PageUp/PageDown
>#e::Send,{PgUp}
>#d::Send,{PgDn}
; Ctrl+PageUp/PageDown
>#^e::Send,^{PgUp}
>#^d::Send,^{PgDn}
; Shift+PageUp/PageDown
>#+e::Send,+{PgUp}
>#+d::Send,+{PgDn}
; Escape
>#CapsLock::Send,{Escape}
我必须禁用 Win+L,这可以通过 registry(或地图 #l::return
完成?未测试)我很想知道是否有人有更好的解决方案重新映射修改键。
我设法解决了这个问题:
>#j:: SendInput,{LEFT}
>#l:: SendInput,{RIGHT}
>#i:: SendInput,{UP}
>#k:: SendInput,{DOWN}
>:在修饰键(例如 Alt、Shift...)中,只允许使用其中一个正确的键。
(左边使用<)
#:AHK中Win的快捷方式
在你要使用的热键后,没有空格,立即使用:
此外,+是shift键的快捷键。
并且在 AHK 中 & 仅在非修饰键(如 a & k
)、shift、alt 等时才需要。不需要 &
之后,阅读 AutoHotkey 帮助,我发现您还需要覆盖 Win+箭头,所以您添加:
>#left:: return
>#right:: return
>#up:: return
>#down:: return
此外,如果您想要禁用 Win 快捷方式,请对注册表进行以下更改:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
NoWinKeys REG_DWORD 0x00000001 (1)
但请记住这一点,Win+L 和 Win+U 不能被覆盖,根据 AHK 帮助。希望有人解决。
我似乎找不到如何绑定 X + Y => Z
。大多数在线链接显示了如何做相反的事情。我正在尝试实现此映射:
RWin + j :: Left
RWin + l :: Right
RWin + i :: Up
RWin + k :: Down
我试过这个语法 RWin&l::Right
但它没有编译。
有什么想法吗?
编辑: 我还希望它能与其他修饰键配合使用。所以当我按 RWin+j
然后 shift
它发送一个 shift+left
(与 ctrl
和 alt
相同)
编辑: 感谢@AleOtero93 这是我目前所拥有的:
; Arrows
>#j::Send,{LEFT}
>#l::Send,{RIGHT}
>#i::Send,{UP}
>#k::Send,{DOWN}
; Shift modifier
>#+j::Send,+{LEFT}
>#+l::Send,+{RIGHT}
>#+i::Send,+{UP}
>#+k::Send,+{DOWN}
; Ctrl modifier
>#^j::Send,^{LEFT}
>#^l::Send,^{RIGHT}
>#^i::Send,^{UP}
>#^k::Send,^{DOWN}
; Ctrl+Shift
>#^+j::Send,^+{LEFT}
>#^+l::Send,^+{RIGHT}
>#^+i::Send,^+{UP}
>#^+k::Send,^+{DOWN}
; Alt modifier
>#!j::Send,!{LEFT}
>#!l::Send,!{RIGHT}
>#!i::Send,!{UP}
>#!k::Send,!{DOWN}
; Alt+Ctrl
>#^!j::Send,^!{LEFT}
>#^!l::Send,^!{RIGHT}
>#^!i::Send,^!{UP}
>#^!k::Send,^!{DOWN}
; Alt+Shift
>#!+j::Send,!+{LEFT}
>#!+l::Send,!+{RIGHT}
>#!+i::Send,!+{UP}
>#!+k::Send,!+{DOWN}
; Alt+Ctrl+Shift
>#!^+j::Send,!^+{LEFT}
>#!^+l::Send,!^+{RIGHT}
>#!^+i::Send,!^+{UP}
>#!^+k::Send,!^+{DOWN}
; Insert/Delete
>#q::Send,{Insert}
>#a::Send,{Delete}
; Ctrl+Insert/Delete
>#^q::Send,^{Insert}
>#^a::Send,^{Delete}
; Shift+Insert/Delete
>#+q::Send,+{Insert}
>#+a::Send,+{Delete}
; Home/End
>#w::Send,{Home}
>#s::Send,{End}
; Ctrl+Home/End
>#^w::Send,^{Home}
>#^s::Send,^{End}
; Shift+Home/End
>#+w::Send,+{Home}
>#+s::Send,+{End}
; Ctrl+Shift+Home/End
>#^+w::Send,^+{Home}
>#^+s::Send,^+{End}
; PageUp/PageDown
>#e::Send,{PgUp}
>#d::Send,{PgDn}
; Ctrl+PageUp/PageDown
>#^e::Send,^{PgUp}
>#^d::Send,^{PgDn}
; Shift+PageUp/PageDown
>#+e::Send,+{PgUp}
>#+d::Send,+{PgDn}
; Escape
>#CapsLock::Send,{Escape}
我必须禁用 Win+L,这可以通过 registry(或地图 #l::return
完成?未测试)我很想知道是否有人有更好的解决方案重新映射修改键。
我设法解决了这个问题:
>#j:: SendInput,{LEFT}
>#l:: SendInput,{RIGHT}
>#i:: SendInput,{UP}
>#k:: SendInput,{DOWN}
>:在修饰键(例如 Alt、Shift...)中,只允许使用其中一个正确的键。 (左边使用<)
#:AHK中Win的快捷方式
在你要使用的热键后,没有空格,立即使用:
此外,+是shift键的快捷键。
并且在 AHK 中 & 仅在非修饰键(如 a & k
)、shift、alt 等时才需要。不需要 &
之后,阅读 AutoHotkey 帮助,我发现您还需要覆盖 Win+箭头,所以您添加:
>#left:: return
>#right:: return
>#up:: return
>#down:: return
此外,如果您想要禁用 Win 快捷方式,请对注册表进行以下更改:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
NoWinKeys REG_DWORD 0x00000001 (1)
但请记住这一点,Win+L 和 Win+U 不能被覆盖,根据 AHK 帮助。希望有人解决。