[Win] CapsLock 키로 한영전환하기 - (2) AutoHotKey 를 이용하여 매핑 / LED 제어
(1) 레지스트리 수정으로 CapsLock -> 한/영전환 매핑
글에 이어서 작성하므로 서론은 생략.
====================
우선 CapsLock 을 눌렀을 때 대신 한영전환으로 바꾸는건 부트캠프에서 Cmd+Space 로 한영전환 하기 에서도 했으니 패스.
SuperUser - Using CapsLock LED for other purposes
이 글을 참고해서 LED 변경법을 알았는데, kbd 값이 PC 마다 다른 것 같아서 그냥 0~5 까지 다 루프를 돌도록 만들었다.
현재 언어 설정을 받아오는 법이 문제였는데, 영어, 한국어 키보드 레이아웃 자체를 변경하는게 아니라
한국어 키보드 레이아웃에서 IME 자체적으로 영어/한국어 변경을 하는식이라 GetKeyboardLayoutName 으로는 무조건 한국어로만 나오는 문제가 있더라. (AutoHotKey - Detecting the currently-active language)
그래서 조금 뒤져보니 뭔가 알수 없는 방법으로 한국어 Layout 하에서 현재 상태가 한국어인지 영어인지 알아내는 법을 찾았다.
영어일때는 ErrorCode 가 0, 한국어일때 Error 가 나서 ErrorCode 가 1이 되는 뭔가 이상한 방법을 쓰는데 원리는 모르겠음.
요걸 잘 섞어서
이런 스크립트를 만들 수 있다.
led.ahk 는 위 링크에서 받아도 되지만 링크가 깨질 수도 있으니 -> led.ahk
====================
그리고 대부분이 다운받아 쓸 컴파일된 바이너리는
글에서의, CommandKeys 와 함께 쓰고싶다면
영어일때 CapsLock LED가 꺼지고 한글일때 CapsLock LED가 켜진다.
윈7, 윈10 에서 테스트 해봤음.
원래 CommandKeys 프로그램과 같이 그냥 시작메뉴에 넣어두고 쓰면 된다.
참고 URL은 위에 링크 다 걸었음.
== Git ==