핫키 HotKey

오토핫키라는 프로그램 이름에서 알수있듯이

오토핫키는 단축키 지정에 굉장히 특화되어 있습니다. 타 언어보다 훨씬 직관적으로요

(핫키,핫스트링 지정하는걸 Key Bind 라고 부릅니다. 헬프파일이나 외국포럼볼때 참고하세요)

 

아래 예제를 확인해볼까요! 왼쪽은 기본형, 오른쪽이 예제입니다.

 

핫키::                     F1::

명령어                    MsgBox, Hello

명령어                    MsgBox, World

return                    return

 

핫키를 선언하기위해서는 키 뒤로 :: 마크를 해줘야합니다.

위 예에서는 F1:: 으로 되어있으니, 'F1' 키가 핫키라는걸 명시해주는거겠죠

그 뒤에서부터 return 사이에 핫키를 눌렀을 때 실행하는 명령어들을 적으시면 됩니다.

return 은 해당 루틴을 종료한다는 말로 알아두시면 됩니다.

return을 적지않으시면 밑에 명령어까지 다 실행해요.

 

위 명령어를 실행해볼까요?

 

 

 

 

 

 

위 예는 핫키가 실행할 명령어가 두줄 (메시지박스 2개)이기 때문에

 

F1::

MsgBox, Hello

MsgBox, World

return

 

이런식으로 적었지만, 명렁어가 하나일 경우에는 아래와 같이 핫키선언후에 바로 이어주면 됩니다. return 도 필요없구요

 

F1:: MsgBox, Hello!

 

 

핫스트링 Hotstrings

핫키와 함께 핫스트링이라는 것이 있습니다. 

이는 핫키처럼 특정키가 아니라 문자열 등을 단축키로 설정할수 있고

줄임말을 입력할시 자동으로 긴문장으로 변환시킬수도있습니다.

 

예로 'ㅎㅇ' 라고 치면 자동으로 '안녕하세요' 로 바꿀수있습니다.

아래의 예를 확인하죠

문자열입력후, 스페이스바나 엔터같은 키를 눌러줘야 작동합니다

 

::문자열::바뀔문자열                    ::gd::안녕하세요

 

핫키도 그렇고 핫스트링 선언할때는 영어문자로 지정해야합니다.

'ㅎㅇ' 지만 키보드에서 ㅎ과 ㅇ의 위치 g와 d를 사용하세요.

 

ㅎㅇ누르고바로 바뀌시길 원하시면

 

:*:ㅎㅇ::안녕하세요

타이핑되면 바로바뀌게됩니다

그런데

ㅎㅇㅎㅇ

이렇게 치면 안바뀌죠 붙어있어서그렇습니다

그럴땐

:*?:ㅎㅇ::안녕하세요

:*!:ㅎㅇ::안녕하세요
이젠 붙어있어도 바로바로 바껴요

  1. 나그네 2015.04.27 14:31 신고

    오.... 깔끔한 설명 좋네요 ㅎㅎ

    근데 저는 scite4로 오토핫키를 짜는데 왜 저는 아무리해도 핫스트링이 안 먹힐까요..

    ::abc:: asdf1234@naver.com를 먼저 입력하고 다음 줄에서 abc를 누르고 스페이스나 엔터를 쳐도 반응이 없네요 -_-

    scite 최신버전으로 설치했는데(포터블X) 아....그것 때문에 답답해서 검색하다가 여기까지 오게됐는데 혹시 이유 아실까요?

    세팅값에서 뭘 만져줘야 하는 건지 ㄷㄷㄷ

    • BlogIcon 예지력 2015.04.28 11:42 신고

      F5(오토핫키 실행) 하신거 맞으시죠? 핫스트링도 오토핫키 파일 실행하셔야해요.
      Scite문제일 경우는 없을텐데, 핫키는 작동하는지 확인해보세요

  2. 나그네 2015.04.30 12:55 신고

    아오 ㅋㅋㅋ
    저장하고 실행해야된다는 걸 모르고 한참을 헤맸군요 -_-a
    지금 해보니 잘 되네요 그것도 모르고 며칠을 삽질했던 ㅜㅜ
    완전 답답했었는데 정말 고맙습니다~

  3. 갓예지력 2015.07.25 11:48 신고

    키가 눌린 상태로 스크립트 reload시에 눌린상태가 지속되기 때문에 다시 그 키를 눌러줘야 하는 번거러움이 있는데요.
    스크립트 실행을 그만둘시에 눌려있던키가 다 풀리게 할 수 있는 명령어나 방법이 없을까요?
    핫키가 한 스크립트내에서 중복지정이 안되기 때문에 한개를 더켜서 키 업버튼으로 대체하고 있습니다.
    !요약:crtl키가 눌린 상태로 reload시에 다시 crtl을 직접 누르거나 스크립트 하나를 더켜서 crtl up을 해주지 않는 이상 아무것도 할 수 없는데 방법이 없을까요?

    감사합니다

    • BlogIcon 예지력 2015.07.25 13:23 신고

      스크립트 최상단에
      Suspend, Off
      OnExit, Exit 추가하시고
      reload 부분을 아래처럼 수정해보세요,

      Exit:
      Suspend, On
      Reload

  4. 짱짱맨 2015.09.15 14:45 신고

    신기하네요 ㅋㅋ

+ Recent posts