Eu tenho este script autohotkey:
StringCaseSense, On
^'::
{
Input, char, L1
if char = a
Send á
else if char = A
Send Á
else if char = e
Send é
else if char = E
Send É
else if char = i
Send í
else if char = I
Send Í
else if char = o
Send ó
else if char = O
Send Ó
else if char = u
Send ú
else if char = U
Send Ú
else
Send %char% ;ignores ctrl+' is if it isn't followed by any of aeioucyAEIOUCY
return
}
Porém, quando pressiono ctrl + ', então a (por exemplo), ele insere á (com o ¡ de cabeça para baixo). No entanto, o script diz que é suposto inserir um á. Por que ele faz isso?
Responder1
Este pode ser um problema de Unicode/UTF-8 e/ou outra coisa.
Tentando pesquisar virtual key
nos tópicos de ajuda do AHK.
Você provavelmente pode substituir os caracteres que está tentando enviar por equivalentes Unicode para corrigir isso... ou seja,
Send {U+00FA} ; Send ú
Você pode procurar códigos de chave virtuais no histórico de chaves do script por meio do ícone da bandeja e do menu Exibir, ou apenas procurar o número Unicode executando o charmap
utilitário Windows e a chave hexadecimal Unicode será mostrada no canto inferior esquerdo.