Você pode usar AutoHotKey para criar uma série de chaves inativas que permitirão que você inclua qualquer acento que precisar. Por exemplo, o script a seguir permitirá que você use as teclas ~ e n para tornar ñ ou Ñ .
~::
Input, key, L1, {delete}{esc}{backspace}
if(key=="n"){
Send {Asc 164}
}
else if(key=="N"){
Send {Asc 165}
}
else {
Send {Asc 126}%key%
}
return
A linha ~::
pega o ~
de pressionamento de tecla, em seguida, o comando input
pega o próximo caractere 1 (L1) e o atribui à variável key
. As chaves Delete , Esc e Backspace são listadas como chaves de escape, que retornarão apenas o original ~
que foi digitado. Caso contrário, se você digitar uma minúscula n
, o script enviará o código ASCII para ñ ( Send {Asc 130}
) e digitar uma letra maiúscula N
enviará o código ASCII para Ñ . Digitar qualquer outra coisa retorna o ~
e a próxima letra que você digitou (o comando final else
envia o ASCII para ~
, seguido pelo conteúdo da variável key
).
Para os acentos que não estão no ASCII base, você precisa usar o Unicode da seguinte forma:
^::
Input, key, L1, {delete}{esc}{backspace}
if(key=="u"){
Send {Asc 150}
}
else if(key=="U"){
Send {U+00DB}
}
else {
Send {Asc 94}%key%
}
return
Observe a diferença no comando ao gravar a letra Û .
Você pode acoplar o máximo que precisar, usando os comandos if ... else if
para tudo que usa o mesmo toque de tecla morta. Apenas certifique-se de incluir a instrução final else
e o comando return
no final antes de passar para a próxima chave inativa e conjunto de acentos. A desvantagem disso é que você precisa explicitamente soletrar todas as chaves e caracteres acentuados que deseja usar. Felizmente, todos eles seguem o mesmo padrão, tornando a configuração simples, talvez tediosa.
Mais informações sobre o comando AutoHotKey Send
: link
Mais sobre o comando AutoHotKey Input
: link
Tabela ASCII: link
Tabela Unicode: link