我尝试在使用 REAPER 时交换 Windows 和 ALT 键,以便我在 PC 上输入的快捷键与我在 Mac 上使用时输入的快捷键相同(就像通过肌肉记忆在相同的键盘位置上一样)。
换句话说,在 Windows/PC 键盘上,alt 键位于 Mac 键盘上 command 键的位置,而 windows 键位于 option 键的位置。由于这些键的对应/跨平台映射实际上是 alt=option 和 command=windows,我只需将这些修饰键重新映射到另一个,这样,当单独使用或与任何其他键或修饰键组合使用时,仅当我使用 REAPER 时,按下 alt 键将始终发送 windows 按键,而按下 windows 键将始终发送 alt。
我尝试了以下操作,但似乎不起作用:
#IfWinActive ahk_class reaper
!::#
#::!
我也尝试过这个:
#IfWinActive ahk_exe reaper.exe
!::#
#::!
但这也不起作用。
主要问题是 REAPER 中可以打开/激活任意数量的不同窗口,并且大多数窗口都有不同的标题和类别。所以我真的需要这个修饰键 keyswap 依赖于主动进程而不是活动窗口当 REAPER 为活动进程时,Window Spy 中显示的 ahk_exe 是 reaper.exe。
请有人帮帮我。我快要疯了,因为在工作和家之间往返,总是忘记捷径,或者走错路,做我不想做的事情。
谢谢!
答案1
“!”和“#”是修饰符号用于 Alt 键和 Windows 键。
修饰符仅用于组合键以便修改其他键。
与 Control/Alt/Shift 不同,没有通用/中性的“Win”键因为操作系统不支持它。(见修饰键)
在这种情况下,您必须使用这些键的全名,否则 AHK 会将文字键/字符 ! 重新映射到 # 并将 # 重新映射到 !:
#IfWinActive ahk_exe reaper.exe
Alt::LWin
LWin::Alt
RWin::Alt
#IfWinActive