Script do AutoHotkey:
+Space::
state := GetKeyState("CapsLock", "T")
if state
SendPlay {Space}
else
SendPlay _
return
Space::
state := GetKeyState("CapsLock", "T")
if state
SendPlay _
else
SendPlay {Space}
return
O que faz:
-
Se CapsLock estiver não ativo:
-
Espaço insere espaço.
-
Deslocamento + Espaço insere o sublinhado.
-
-
Se CapsLock estiver ativo:
-
Espaço insere o sublinhado.
-
Deslocamento + Espaço insere espaço.
-
Se você quer que o Espaço se comporte normalmente quando CapsLock está não ativo, apenas elimine o primeiro bloco.
Como usar:
-
Faça o download e instale a versão mais recente.
-
Salve o script acima como
underscore.ahk
, usando seu editor de texto favorito. -
Clique duas vezes no arquivo para executar o script.
-
Se desejar, copie o script (ou um link para ele) na pasta
Startup
.
Como funciona:
-
+Space:: ... return
executa...
quando Shift + Espaço é pressionado.+Space:: ... return
executa...
quando Espaço é pressionado (sem modificadores). -
state := GetKeyState("CapsLock", "T")
verifica se o CapsLock está ativo.-
Se for,
state
étrue
e o bloco apósif state
será executado. -
Se não for,
state
éfalse
e o bloco apóselse
será executado.
-
-
SendPlay X
insere o caractere (sequência)X
.Você não pode usar
Send
aqui, pois acionaria o script recursivamente, resultando em um loop infinito. -
return
termina o script no ponto atual.O segundo
return
é opcional, o primeiro não é. Sem este último, Shift + Espaço faria com que ambos os blocos fossem executados.