IT 관련 팁/오토핫키 Autohotkey

오토핫키 - 다른 스크립트를 실행할 메인 스크립트 만들기

RayShines 2022. 3. 10. 11:02
반응형

메인 스크립트란 다른 스크립트를 실행시키도록 하는 명령어들을 가지고 있는 스크립트이다. 이번 포스팅에서는 오토핫키 메인스크립트를 작성하는 방법을 정리해보려고 한다.

 

1. 메인스크립트란?

오토핫키 스크립트를 시작하려면 설정해둔 단축키를 누르거나 지난번 포스팅에서 다루었던 GUI로 만든 버튼을 사용하거나 해야 한다. 그런데 핫키를 사용해서 특정 명령을 수행하거나, 혹은 다른 스크립트를 실행시키려면 그와 관련된 명령들이 주욱 들어있고, 항상 실행된 상태로 있어야 하는 스크립트 - 임의로 메인 스크립트라고 부르겠다 - 가 하나 있어야 한다. 이 메인 스크립트 역시 윈도우 시작 프로그램에 넣어두어야 한다.

 

예를 들어

 

1. 계산기를 실행시키는 단축키

 

2. GUI로 만든 버튼을 시작하는 스크립트(remote. ahk라 가정하자)를 실행시키는 단축키

 

이 두 가지를 포함하고 있는 메인 스크립트를 만들어보자.

 

오토핫키 스크립트에서는

 

control : ^

windows key : #

alt : ! 

shift : +

 

이다.

 

그리고 위의 키들의 조합과 다른 키의 조합으로 만든 단축키 뒤에는 :: (콜론 두 개)를 붙이고 마무리해야 한다.

 

 

새로운 오토핫키 파일을 하나 열고 아래 스크립트를 가져다 붙인다.

 

**** 시작 - 이 행은 스크립트에 포함시키지 않는다. ****

 

^#!c:: ; ctrl+win+alt+c 를 누르면, ::(콜론이 두 개인 것에 주의하자)
Run, calc.exe, c:\계산기의 경로 ; 경로는 각자 설정해야 한다. ; 계산기를 실행하라
return ; ctrl+win+alt+c 관련 명령 종료

 

^#!r:: ; ctrl+win+alt+r 를 누르면
Run, remote.ahk, c:\remote.ahk의 경로; 경로는 각자 설정해야 한다. ; 계산기를 실행하라
return ; ctrl+win+alt+r 관련 명령 종료

 

 

**** 끝 - 이 행은 스크립트에 포함시키지 않는다. ****

 

 

이렇게 해둔 오토핫키 파일을 윈도우 시작 프로그램에 넣어두면 ^#!c, ^#!r의 단축키가 전역에서 작동한다. 

 

 

2. 실행된 스크립트 닫기

그럼 어떻게 닫을까. 실행된 프로그램이야 닫고 싶을 때 닫으면 된다. 그리고 GUI로 만든 버튼도 닫고 싶을 때 X 버튼을 눌러서 닫으면 된다.

 

그런데 그렇게 전경에서 동작하고 있는 스크립트가 아니라 백그라운에서 작동하는 스크립트를 닫고 싶을 때는 어떻게 해야 할까. 가장 전통적인 방법은 오른쪽 아래 시계 옆에 트레이 아이콘을 찾아서 오른쪽 클릭을 하고 Exit를 눌러 닫는 것이다. 

 

하지만 더 간단한 방법은 해당 스크립트를 닫는 단축키를 만들어두는 것이다.

 

이번에는 그냥 전경에서 작동하고 있는 remote.ahk 를 닫는 방법을 알아보자. 하지만 백그라운드에서 작동하고 있는 스크립트를 종료하는 것도 완전히 동일하다. 

 

remote.ahk 스크립트를 단축키로 닫고 싶을 때는 이 포스팅에서 만든 스크립트 - 메인 스크립트에 붙이면 안된다! - 에 아래 명령어들을 추가한다.

 

 

**** 시작 - 이 행은 스크립트에 포함시키지 않는다. ****

 

^#!x:: ; ctrl+win+alt+x 를 누르면

exitApp ; 이 스크립트를 종료

 

**** 끝 - 이 행은 스크립트에 포함시키지 않는다. ****

 

 

위에서 이야기했듯 메인 스크립트는 윈도우 시작 프로그램에 넣어둔다.

 

이런 식으로 메인 스크립트에는 항상 쓰는 단축키와 그때그때 사용하고 닫아버리고 싶은 스크립트를 실행시키는 단축키들을 넣어둔다. 그리고 각각의 스크립트에는 스크립트를 종료하는 단축키를 넣어둔다. 그러면 해당 스크립트를 메인 스크립트에 포함된 실행 단축키를 이용해 소환하고, 해당 스크립트에 포함된 종료 단축키를 이용해 종료할 수 있다. 

 

그림으로 표현하면 이렇게 된다.

 

오토핫키 메인 스크립트

 

 

메인 스크립트는 가급적 종료 단축키를 만들지 않는 게 좋다. 혹여 다른 스크립트의 단축키와 겹치면서 메인 스크립트 닫혀 버리면 귀찮은 일이 발생할 수도 있기 때문이다. 

 

 

 

 

 

반응형