Como combinar três teclas como uma tecla de atalho com a Autohotkey?

14

Quero combinar CapsLock Alt kchaves em uma única tecla de atalho, como esta:

CapsLock & !k:: Send !{Up}

Isso não funciona porque a Autohotkey não permite a combinação de mais de duas chaves, exceto as teclas modificadoras.

Procurando uma solução , descobri que o uso de códigos de digitalização no lado esquerdo pode ser uma solução alternativa , como:

SC035 & !k:: Send !{Up}

Também testei esta solução, mas também não funciona corretamente. Nesse caso, pressionar pressiona CapsLock+ka tecla de atalho.

Mert Nuhoglu
fonte
(Em AutoHotkey, Ctrl é ^, Alt é !Você pode esclarecer qual deles você deseja..)
Bavi_H
Corrigi o erro.
Mert Nuhoglu

Respostas:

13

Que tal agora?

Capslock & k:: 
GetKeyState, state, Alt
if state = D
SendInput !{Up}
Return 
snitzr
fonte
Obrigado. Isso funciona mesmo. Mas agora há um pequeno atraso ao usar o CapsLock combinado com uma chave, como "CapsLock & a :: =". Esse atraso provavelmente se deve à função GetKeyState, não é?
Mert Nuhoglu
Eu testei, mas não consegui recriar esse atraso. O script deve ser independente e não afetar o desempenho de outros scripts. Os scripts que têm GetKeyState para adicionar uma terceira tecla de atalho (como a que eu tenho acima) não se comportarão exatamente como scripts com configurações normais de tecla de atalho e podem impedir a repetição do script o mais rápido possível. Espero que ajude.
snitzr
3
Eu prefiro essa sintaxe mais concisa e pensei em compartilhar com você: se não for GetKeyState ("Alt", "P")) ... Modifique de acordo com suas necessidades. Felicidades.
Mario Awad