본문 바로가기

Programing/AutoHotkey

맥의 capslock 키 한영전환을 윈도우에서 사용하기

맥의 capslock 한영전환을 사용하다가 윈도우에서 한영전환이 너무 불편해서 자료를 찾아보니 오토핫키를 이용한 방법이 있어 적용하였다

그런데 기존에 돌아다니는 코드들은 버튼을 땠을때 누르고 있던 시간을 기준으로 한영전환인지 capslock인지를 판단하기 때문에 꼐속 누르고 있을 경우 동작하지 않는 문제점이 상당히 불편하다고 느껴져서 수정하게 되었다.

 

마음대로 코드 가져가 사용하셔도되지만 가능하시다면 감사의 댓글 달아주시면 감사하겠습니다.

저는 exe 파일로 만들어 시작프로그램에 넣어 두었습니다.

shell:startup

global TIMER := 0
global STATE := 0

capslock Up::
if(STATE = 1)
{
	STATE := 0
	;MsgBox, CAP UP
	Send, {vk15sc1F2}
}
else if(STATE = 2)
{
	STATE := 0
}
return

capslock::
if(STATE = 0)
{
	STATE := 1
	;MsgBox, CAP DOWN
	TIMER := A_TickCount
	Loop
	{
		if(STATE = 1)
		{
			elapsedtime :=  A_TickCount - TIMER
			if(elapsedtime >= 250)
			{

				;MsgBox, %elapsedtime%
				SetCapsLockState % !GetKeyState("CapsLock", "T")
				STATE := 2
				break
			}
		}
		else
		{
			;MsgBox, loop exit
			break
		}
	}
}
return