Autohotkey 가 무엇일까?

Posted by 대혀니_
2015. 4. 4. 21:37 PROGRAMING/AutoHotKey



오토핫키에 대해 글을 쓰면서 한번도 오토핫키에 대해 설명한 적이 없어서 작성해보겠습니다.


무료 오픈소스 기반의 매크로 스크립트 언어이다. 쉽게 말하면 사용자가 지정한 키보드, 마우스 등의 입력을 그대로 반복해서 실행할 수 있게 도와준다.


여기서 알수 있는건 무료 와 스크립트언어 인데... 스크립트 언어라 배우기가 쉽다.. 그런데 스크립트 언어 특징상 느리다... (물론 내장된 컴파일 기능을 지원함)


이 프로그램은 2003년 경에 처음 공개되었는데

사실 이보다 이전인 1999년경에 나온 AutoIt을 만들던 제작자 그룹 중 한 명이 AutoIt V2에서 V3로 넘어가는 시점에서 컨셉에 대한 견해차이로 따로 독자적으로 만들어 AutoIt 커뮤니티에 공개하면서 나온 물건이다.

AutoIt V2를 기반으로 했기 때문에 그 문법을 그대로 차용하고 있으며, 현재의 AutoIt V3는 아예 다른 문법을 가지고 있다.[각주:1]


처음에는 AutoIt, AHK 모두 GPL 라이센스하에 소스를 공개했으나, AutoIt측은 "경쟁자가 지속적으로 우리의 소스를 베끼고 있다" 면서 소스 비공개로 바뀌었다.


Autohotkey는 여러가지 버전으로 개발되고 있으며 2010년 11월부터 Lexicos가 주도적으로 개발하고 있는 Autohotkey_L 버전이 현재는 가장 널리 사용된다.

이는 아래 사이트에서 다운로드 받을 수 있다. 

http://ahkscript.org/

 

Autohotkey_L은 2012년부터 공식적인 autohotkey로 선정되었다. 

처음 autohotkey를 개발하시던 Chris 라는 분이 2009년 9월경 1.0.48.05 버젼을 마지막으로 개발을 중단하였는데, 이는 아래 사이트에서 제공되고 있다.

(이를 통상 Autohotkey_B 버젼이라고 부른다.)

http://www.autohotkey.com/


그리하여 우리는 ahkscript.org에서 받아야 최신버젼의 스크립트 문법을 사용할수 있게 되는것이다..


AHK 는 직관적이고 꼭 필요한 기능만 담아 논리적인 센스만 조금 있다면 누구나 쉽게 접근할 수 있다.


또한, 기능상의 제약도 플러그인을 추가해주면 거의 모든 입출력 기기를 통제할 수 있게 된다.

한 때 이걸로 온라인 게임의 오토 프로그램을 만드는 사람도 있었지만 지금은 게임가드 등에 막혀서 작동이 안된다.

물론 게임가드가 없는 외산 프로그램, 예를 들자면 디아블로3 같은 데에선 무기들을 간편하게 교환하는데 매우 애용되고 있다.


AHK는 AutoIt 과 비교해 쉽게 매크로를 작성하기에는 쉽지만, 전문 분야로 갈수록 코드가 복잡해지고 관리가 힘들어 높은 숙련도가 필요한 매크로 스크립트 언어다.


이론상으로는 모든 입출력 통제를 할수있지만, 그럴빠에는 다른언어를 공부하는것이 심신건강에 좋다는것만 알고 있자.

  1. rigvedawiki [본문으로]