AutoHotkey가 이상한 문자를 보냅니다.

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
}

그러나 ctrl + '를 누른 다음 a(예를 들어)를 누르면 á(거꾸로 된 ¡)가 삽입됩니다. 그러나 스크립트에는 á를 삽입해야 한다고 나와 있습니다. 왜 이런 일을 하는가?

답변1

이는 유니코드/UTF-8 문제 및/또는 다른 문제일 수 있습니다.

virtual keyAHK 도움말 항목을 찾아보세요 .

이 문제를 해결하려면 전송하려는 문자를 유니코드에 해당하는 문자로 바꿀 수 있습니다. 즉,

Send {U+00FA}      ; Send ú

트레이 아이콘과 보기 메뉴를 통해 스크립트의 키 기록에서 가상 키 코드를 찾거나, Windows charmap유틸리티를 실행하여 유니코드 번호를 조회하면 유니코드 16진수 키가 왼쪽 하단에 표시됩니다.

관련 정보