콘텐츠로 건너뛰기
Home » ahk2

ahk2

AutoHotkey 한영 상태 감지하기

오토핫키에서 키보드 매크로(hot string)는 키보드의 한/영 상태를 고려하지 않고 작동하기 때문에, 한/영 상태에 따라서 다른 핫스트링을 정의해야 하는 경우가 있다. 이를 위한 함수 코드가 여러 커뮤니티나 블로그를 통해서 공유되고 있는 걸 줏어서 소개한다. (물론 구글에서 검색해보면 이 글보다는 다른 글들이 먼저 보이니까, 이 글을 보시는 분들은 아마 보셨던 코드일 것이다.)

원리는 대충 윈도 API를 통해 어떤 응용 프로그램 내의 컨트롤에 ‘메시지’를 보내어 원격으로 어떤 기능을 실행할 수 있게 하는 것이 기본적인 아이디어이다. 현재 활성화된 창에서 기본 IME의 상태창을 열도록, 응용 프로그램의 기본 IME 창에게 메시지를 보낸다. 만약 현재 한글 IME가 선택된 경우에는, 이 요청을 처리하지 못하고 에러가 반환되기 때문에 이 메시지의 결과가 실패라면 한글로 선택되어 있다고 상정할 수 있는 것이다.

더 보기 »AutoHotkey 한영 상태 감지하기

AutoHotkey – 한영키와 CapsLock 키를 하나로 사용하기

최근 버전의 MacOS는 CapsLock 키와 한/영키를 하나의 키로 사용한다. 짧게 한 번 누르면 한/영 전환을 하고 약간 길게 (약 0.2~0.3초)가량 누르고 있으면 CapsLock으로 작동한다. 이를 윈도에서 흉내내기 위해서 AutoHotkey를 사용할 수 있고, 이와 관련된 스크립트가 소개된 것들이 있는데 아주 부드럽게 작동하지는 않더라. 이는 CapsLock 키는 눌렸다 떼는 시점이 아니라 누르는 시점에 대문자 고정으로 작동하기 때문에, 한/영 전환을 하려는 시점에 CapsLock으로 작동하기가 일쑤이다. 그래서 반대로, 한/영 키를 누르고 있으면 CapsLock 키처럼 작동하도록 했더니 특별히 이상하게 작동하지 않고 어느 정도 기대하는 대로 작동하는 것 같다.

더 보기 »AutoHotkey – 한영키와 CapsLock 키를 하나로 사용하기