AutoHotkey键绑定似乎会覆盖

时间:2017-09-02 18:33:36

标签: autohotkey

目标

我正在尝试重新绑定键盘,以便键盘快捷键的工作方式与Mac类似;具体而言,Alt + key会产生Cmd(Ctrl)+ Key

#InstallKeybdHook
SendMode Input
LAlt::LCtrl

这完美无缺!

问题

当我尝试将Alt + Tab(现在触发为Ctrl + Tab)更改为原始AltTab时,问题就会发挥作用功能。

LAlt & Tab::Send AltTab

甚至

LAlt & Tab::AltTab

似乎有效(可能有效),但它似乎会覆盖之前的Alt + Key功能,Alt将正常运作。

期望结果

Alt + s => Ctrl + s

Alt + n => Ctrl + n

Alt + o => Ctrl + o

....

Alt + tab => AltTab

任何想法我可能做错了/错过了吗?

1 个答案:

答案 0 :(得分:1)

重新定义修饰键并未充分记录。 documentation中没有关于LAlt & Tab::AltTab的内容(请注意,这是正确的方法,LAlt & Tab::Send AltTab只会发送字符串" AltTab &#34 ;)取消LAlt::LCtrl重新映射,以便我无法准确地告诉您问题所在。我确实设法通过以下方式解决它:

LAlt::LCtrl
LAlt up::Send {LAlt up}

#if GetKeyState("LAlt", "P")
*Tab::Send {LAlt down}{tab}
*+Tab::Send {LAlt down}{ShiftDown}{tab}{ShiftUp}
#If

它可以发送一些不需要的按键事件,但是从我看到的效果很好。