在 AutoHotKey 中,这个功能很好用
RAlt & a::Send {U+00E4} ; RightAlt + a -> ä
现在我想映射该字母的大写版本,即 RightAlt + RightShift + a -> Ä
我试过了,但没有用
RAlt & RShift & a::Send {U+00C4} ; RightAlt + RightShift + a -> Ä
>!>+a::Send {U+00C4}
我怎样才能同时映射两者
- 右 Alt + a -> ä
- 右 Alt + 右 Shift + a -> Ä
答案1
使用RShift & a
热键,然后检查的状态RShift
。
RAlt & a::
GetKeyState,isRShiftDown,RShift,P
IfEqual,isRShiftDown,D
Send {U+00C4}
else
Send {U+00E4}
return
另一种选择是:
RAlt & a::
If GetKeyState("RShift","P")=1
Send {U+00C4}
else
Send {U+00E4}
return
在这两种情况下,将模式设置为P
而不是默认模式意味着它将检查物理按键是否被按下,而不管操作系统认为它处于什么状态。例如,如果某个其他脚本已RShift
按下但按键本身未按下,则这些脚本将发送{U+00E4}
。