АХК рекурсивная карта? (Сопоставьте RAlt с RWin, который сопоставлен с другими ключами)
У меня есть куча RWin+X => Y
отображения. мне бы хотелось RAlt
быть сопоставленным с RWin
чтобы RWin+X
== RAlt+X
, Например:
; RWin+J => Left
>#j::SendInput,{LEFT}
Который работает нормально, я могу удерживать RWin
и нажмите j
и это будет продолжать отправку Left
, Теперь давайте добавим перед этой картой следующее:
RAlt::RWin
Если я держу RAlt
затем нажмите j
Послать Left
правильно, но если я продолжу держать RAlt
и нажмите j
Опять j
и не Left
, Я бы отпустил RAlt
и нажмите его снова.
Есть ли способ это исправить?
1 ответ
Это то, что я придумал, основываясь на вашей проблеме. Это обходное решение:
#J::
If (GetKeyState("RAlt", "P") Or GetKeyState("RWin", "P")) {
SendInput,{LEFT}
}
Return
RAlt::
While GetKeyState("RAlt", "P") {
; Add any Key in {Key} format followed by Period . that you want to act as an EndKey.
Input, Key, L1 M T1, {space}.{esc}.{shift}.{enter}
.{tab}.{backspace}.{alt}.{home}
.{delete}.{pgup}.{pgdn}.{end}
.{up}.{down}.{left}.{right}
If (Key <> "") {
SendInput, {RWin down}{%Key%}{Rwin Up}
}
If InStr(ErrorLevel, "EndKey:")
Send % "{" . StrReplace(ErrorLevel, "EndKey:") . "}"
}
Return