오토핫키 사용법은 자주 쓰는 문장을 약어로 바꾸는 것부터

자주 치는 인사말이나 메일 주소를 약어 몇 글자로 대신 치고 싶다면 오토핫키(AutoHotkey) v2를 autohotkey.com에서 받아 쓰면 됩니다. 처음 만드는 스크립트에는 세 가지를 꼭 넣으세요. 맨 위 #Requires AutoHotkey v2.0 한 줄, 매크로를 바로 끄는 키 한 줄, 그리고 영어 약어입니다. 다 만들었으면 메모장 말고 실제로 쓸 창에서 시험합니다.

이 순서는 가상 PC(윈도우 11, 한국어)에 AutoHotkey 2.0.31을 깔고 직접 돌려 보고 정했습니다. 일반 입력 창과 Edge에서는 약어가 정확히 바뀌었는데, 윈도우 11 새 메모장에서는 글자가 어긋났습니다. 한글 입력 상태에서는 영어가 자모로 깨졌습니다. 인터넷에 도는 옛날 예제는 오류 창부터 띄웠습니다. 아래에 막힌 자리마다 푼 방법을 순서대로 적었습니다.

📑 목차 보기 (12개 항목)
  1. 받기와 설치: 고를 것은 설치 폴더 정도입니다
  2. 오토핫키 사용법 첫 예제: 자주 치는 문장 · 메일 주소 · 오늘 날짜
  3. 반복 매크로를 만들 때는 끄는 키부터
  4. 한글 상태에서 영어가 자모로 깨질 때
  5. 인터넷 예제를 붙였더니 영어 오류 창이 뜰 때
  6. 잠깐 멈추기와 완전히 끄기: 트레이 아이콘
  7. 관리자로 연 프로그램에서만 안 바뀔 때
  8. PC를 켤 때 저절로 켜지게 하기, 그리고 끄기
  9. 지울 때: 내가 만든 .ahk 파일은 남습니다
  10. 돈 드는 기능과 쓰면 안 되는 곳
  11. 이 시험으로 모르는 것
  12. 오토핫키를 두고 많이 묻는 것

받기와 설치: 고를 것은 설치 폴더 정도입니다

⬇ AutoHotkey 공식 다운로드 (autohotkey.com)

받는 페이지에서 v2.0을 받습니다. 시험한 날 기준 안정판은 2.0.31이었습니다. 같은 페이지에 v1과 v2.1(alpha)도 있는데, v1은 옛 문법이고 alpha는 시험판입니다. 처음이라면 둘 다 고를 이유가 없습니다.

AutoHotkey v2.0.31 설치 창, 설치 폴더 C:\Program Files\AutoHotkey 와 Browse 단추, 설치 방식 All users, Current user, Portable 고르기, Install 단추
설치 창입니다. 폴더와 설치 방식은 그대로 두고 Install만 눌러도 됩니다.

설치가 끝나면 AutoHotkey Dash라는 작은 창이 뜹니다. 여기서 New script로 새 스크립트를 만들 수 있고 Window spy와 도움말도 이 창에서 엽니다.

AutoHotkey Dash 창, 왼쪽에 New script, Compile, Help files (F1), Window spy, Launch settings, Editor settings 항목과 오른쪽 Welcome 안내
설치 직후 뜨는 Dash 창입니다. 나중에 다시 열 때는 시작 메뉴에서 AutoHotkey를 찾으면 됩니다.

⚠️ 백신이나 스마트스크린이 경고할 수 있습니다

시험한 날 받은 2.0.31 설치 파일에는 디지털 서명이 없었습니다(윈도우가 「서명 안 됨」으로 읽음). 받는 페이지를 봐도 무료 코드 서명은 아직 「Future」(적용 전) 칸에 있습니다. 그래서 받거나 열 때 경고가 뜰 수 있습니다. 공식 문서는 이런 경고가 잘못 걸리는 경우가 많다고 설명합니다. 다만 이번 가상 PC에서는 경고 창이 뜨지 않아 직접 확인하지는 못했습니다. 받을 때는 주소창이 autohotkey.com인지 한 번 더 보세요. 다른 사이트나 블로그에 올라온 설치 파일은 받지 마세요.

오토핫키 사용법 첫 예제: 자주 치는 문장 · 메일 주소 · 오늘 날짜

가상 PC에서 실제로 돌린 스크립트입니다. 바탕 화면에 폴더를 하나 만들어 자주쓰는문장.ahk라는 이름으로 저장한 뒤 파일을 더블클릭해 켰습니다. 맨 아래 줄은 매크로를 바로 끄는 키(Ctrl+Alt+Q)입니다. 처음부터 같이 넣어 두세요.

#Requires AutoHotkey v2.0
; 약어를 치고 스페이스나 엔터를 누르면 긴 문장으로 바뀝니다
::zzhi::안녕하세요. 문의 주셔서 감사합니다.
::zzmail::example@example.com
; Ctrl+Alt+D = 오늘 날짜
^!d::SendText FormatTime(, "yyyy-MM-dd")
; 비상 정지: Ctrl+Alt+Q 누르면 이 매크로가 꺼집니다
^!q::ExitApp
AutoHotkey 약어 바꾸기 순서 그림, 1 글상자에 zzhi를 친다 아직 그대로가 정상, 2 스페이스 또는 엔터를 누른다, 3 zzhi가 지워지고 안녕하세요. 문의 주셔서 감사합니다. 문장이 들어간다, 영어가 섞인 줄은 맨 앞 ::를 :T:로 바꾸면 한글 상태에서도 안 깨진다는 안내
zzhi만 쳐서는 그대로이고, 스페이스나 엔터를 누르는 순간 문장으로 바뀝니다.
  • ::zzhi:: 줄은 zzhi를 치고 스페이스나 엔터를 누르는 순간 바뀝니다. 약어만 쳐서는 아무 일도 안 일어나는 게 정상입니다.
  • ^는 Ctrl, !는 Alt입니다. Ctrl+Alt+D를 누르면 그날 날짜가 「2026-11-11」 모양으로 들어갑니다.
  • 켜 둔 스크립트를 고쳤다면 저장한 뒤 아래 트레이 메뉴의 Reload Script를 누르세요. 저장만 하고 다시 읽히지 않으면 옛 내용대로 돕니다.
입력시험 창에 안녕하세요. 문의 주셔서 감사합니다. 한 줄과 example@example.com 두 줄이 정확히 들어간 모습
일반 입력 창에서는 zzhi와 zzmail이 정확히 바뀌었습니다. Edge 글상자도 같았습니다.

윈도우 11 메모장에서는 글자가 어긋났습니다

같은 스크립트를 윈도우 11 새 메모장(11.2607)에서 써 보니 결과가 엉망이었습니다. 약어 일부가 안 지워져 「zzh안녕하세요…」가 되거나, 앞 글자가 먹혀 「zz녕하세요…」가 되고 zzmail이 그대로 남기도 했습니다. 붙여넣기 방식으로 바꿔 보고 메모장의 맞춤법 자동 고침도 꺼 봤지만 메모장에서는 고쳐지지 않았습니다. 같은 때 다른 창에서는 멀쩡했습니다. 원인은 끝내 찾지 못했습니다.

그래서 처음 시험할 때는 메모장을 피하세요. 실제로 쓸 곳인 브라우저나 메신저, 문서 프로그램에서 바로 확인하는 편이 헛걸음이 없습니다. 메모장에서 안 된다고 스크립트가 틀린 것은 아닐 수 있습니다.

윈도우 11 메모장에 /example@example.com, /인안녕하세요. 문의 주셔서 감사합니다., zzh안녕하세요, zzm, /m, 2026-11-11 줄이 섞여 있는 모습
메모장에서 생긴 줄입니다. 약어 조각이 남은 줄, 안 바뀐 줄, /가 남은 줄이 섞였습니다. 날짜만 제대로 들어갔습니다.

약어를 /로 시작하면 /가 남습니다

위 그림에서 「/example@…」처럼 맨 앞에 /가 붙은 줄이 그 결과입니다. 메모장에서 /m 같은 약어를 써 봤더니 바뀐 글 앞에 /가 그대로 남았습니다(다른 창에서는 확인하지 못했습니다). 약어는 zz처럼 평소에 칠 일이 없는 영어 두 글자로 시작하길 권합니다. 이 글의 예제도 그렇게 만들었습니다. 그래야 보통 낱말을 치다가 잘못 바뀌는 일도 없습니다.

반복 매크로를 만들 때는 끄는 키부터

매크로가 잘못 짜이면 같은 글자를 끝없이 치기도 합니다. 그럴 때 키보드를 쥔 매크로를 마우스로 끄려고 하면 손이 늦습니다. 그래서 이 글의 전체 스크립트 예제에는 끄는 줄을 함께 넣었습니다.

시험 삼아 일부러 망가진 매크로를 만들었습니다. F8을 누르면 0.5초마다 점(.)을 계속 찍고, Esc를 누르면 스크립트 전체가 꺼지는 짧은 스크립트입니다.

#Requires AutoHotkey v2.0
; F8 = 0.5초마다 점(.)을 계속 찍기 시작 (일부러 만든 폭주 예제)
F8::SetTimer(TypeDot, 500)
TypeDot() {
    SendText "."
}
; 비상 정지: Esc 누르면 매크로 전체가 꺼집니다
Esc::ExitApp

Edge 글상자에 대고 F8을 누르니 3초 뒤 6자, 2초 더 지나 10자가 찍혔습니다. 여기서 Esc를 누르자 10자에서 멈췄고 3초를 더 기다려도 10자 그대로였습니다. AutoHotkey 프로세스도 하나도 남지 않았습니다.

끄는 키는 스크립트 성격에 맞게 고릅니다. 반복하는 매크로라면 손이 가장 빨리 가는 Esc가 좋습니다. 하지만 하루 종일 켜 두는 문장 스크립트에 Esc를 걸면 다른 프로그램에서 Esc를 누를 때마다 스크립트가 꺼집니다. 그래서 위 문장 스크립트에는 평소에 잘 안 누르는 Ctrl+Alt+Q를 걸었습니다.

한글 상태에서 영어가 자모로 깨질 때

한국어 자판을 쓰면 꼭 한 번 만나는 문제입니다. 보통 방식(::약어::)으로 만든 줄은 한/영 키가 한글에 있을 때 바뀐 글의 영어 부분을 한글 자판으로 쳐 버립니다. Edge 글상자에서 영문 상태와 한글 상태로 각각 쳐 본 결과입니다.

스크립트 줄 영문 상태 한글 상태
::zza::A방식 mail@example.com (보통) 정상 「ㅁ ㅡ먀ㅣ@ㄷㅌ므ㅔㅣㄷ.채ㅡ」로 깨지고 「방식」이 줄을 따로 차지함
:T:zzb::B방식 mail@example.com (앞에 :T) 정상 정상
zzc → 클립보드에 넣고 Ctrl+V로 붙여넣기 정상 정상
::ㅇㄴ::안녕하세요 (한글 자모 약어) – 안 바뀜 · ㅇㄴ 그대로
Edge 글상자에 A방식, B방식, C방식 mail@example.com 줄과 한글 상태에서 깨진 ㅁ ㅡ먀ㅣ@ㄷㅌ므ㅔㅣㄷ.채ㅡ 줄, 따로 떨어진 방식 줄이 보이는 모습
한글 상태에서 A방식만 깨졌습니다. :T를 붙인 B방식과 붙여넣기로 넣은 C방식은 멀쩡했습니다.

고치는 법은 두 가지입니다. 가장 간단한 것은 줄 맨 앞의 ::를 :T:로 바꾸는 것입니다. 메일 주소처럼 영어가 섞인 줄에는 처음부터 :T:를 붙여 두길 권합니다.

:T:zzb::B방식 mail@example.com

붙여넣기 방식은 줄이 길지만 한/영 상태와 상관없이 들어갔습니다. 잠깐 클립보드에 넣었다가 붙이고 원래 클립보드 내용으로 돌려놓는 방식입니다.

zzc(*) {
    saved := ClipboardAll()
    A_Clipboard := "C방식 mail@example.com"
    ClipWait 1
    Send "^v"
    Sleep 200
    A_Clipboard := saved
}
:X:zzc::zzc()

ㅇㄴ처럼 한글 자모로 만든 약어는 한글 상태에서 쳐도 안 바뀌었습니다. 약어는 영어로 만들고, 한글로 쓰다가도 한/영을 눌러 영어로 치는 습관을 들이는 편이 낫습니다. 한/영 키 자체가 말을 안 듣는다면 한영 전환이 안 될 때 점검 순서를 먼저 보세요.

인터넷 예제를 붙였더니 영어 오류 창이 뜰 때

블로그나 카페에 올라온 오래된 예제를 그대로 저장해 더블클릭하면 이런 창이 뜹니다. 시험에서는 ^j:: 다음 줄에 Send, 안녕하세요, 그다음 줄에 return을 쓴 세 줄짜리 예제로 띄웠습니다.

AutoHotkey 창, It looks like the script you are trying to run requires AutoHotkey v1, which is not installed 문구와 Script: 옛날예제.ahk, Download and install AutoHotkey v1.1.37.02? 질문, 예와 아니요 단추
v1 문법으로 쓴 예제를 열었을 때 뜬 창입니다. v1을 따로 받겠냐고 묻습니다.

내용은 「이 스크립트는 옛 버전(v1)용인데 v1이 깔려 있지 않다, 받겠느냐」입니다. Send,처럼 명령 뒤에 쉼표를 붙이는 것, 단축키 아래에 return을 쓰는 것이 v1 문법의 흔한 표시입니다. 저는 여기서 아니요를 눌렀습니다. 버전을 둘 다 깔면 앞으로 예제마다 어느 쪽 문법인지 따져야 하기 때문입니다.

대신 예제를 v2 문법으로 고쳐 씁니다. 위 예제라면 Send "안녕하세요"처럼 쉼표를 빼고 글을 따옴표로 감싸면 됩니다. 이 글의 예제처럼 맨 위에 #Requires AutoHotkey v2.0을 넣어 둔 스크립트는 이 창 없이 바로 돌았습니다. 예제를 찾을 때는 제목이나 본문에 「v2」가 적혀 있는지부터 보면 고칠 일이 줄어듭니다.

잠깐 멈추기와 완전히 끄기: 트레이 아이콘

스크립트가 켜지면 작업 표시줄 오른쪽에 AutoHotkey 아이콘이 생깁니다. 시험한 PC에서는 바로 보이지 않고 숨겨진 아이콘(^) 안에 들어가 있었습니다. 아이콘을 오른쪽 클릭하면 영어 메뉴가 나옵니다.

AutoHotkey 트레이 아이콘 오른쪽 클릭 메뉴, Open, Help, Window Spy, Reload Script, Edit Script, Suspend Hotkeys, Pause Script, Exit 항목
트레이 아이콘의 오른쪽 클릭 메뉴입니다.
  • Suspend Hotkeys: 잠깐 멈춤입니다. 켜 둔 동안에는 zzhi를 쳐도 그대로 남았고, 한 번 더 누르니 다시 바뀌었습니다. 약어 그대로 쳐야 할 글을 쓸 때 씁니다.
  • Exit: 스크립트를 완전히 끕니다. 누른 뒤 AutoHotkey 프로세스가 하나도 남지 않았습니다. 끄는 키를 깜빡 안 넣었을 때도 이 메뉴로 끌 수 있습니다.
  • Reload Script: 고친 내용을 다시 읽습니다. Edit Script는 스크립트 파일을 엽니다.

창 이름과 좌표를 볼 때는 Window Spy

나중에 「이 프로그램에서만 돌게」, 「화면의 이 자리를 눌러라」 같은 스크립트를 짜려면 창 이름과 좌표가 필요합니다. 메뉴의 Window Spy를 켜고 마우스를 원하는 창에 올리면 바로 보입니다.

Window Spy for AHKv2 창, Microsoft Edge 창의 ahk_class Chrome_WidgetWin_1, ahk_exe msedge.exe, 마우스 위치 Screen 300, 200 Window 290, 190 Client 282, 190, 색 FFFFFF
Edge 위에 마우스를 올렸을 때입니다. 같은 지점도 Screen, Window, Client 좌표가 서로 달랐습니다.

좌표는 기준이 셋입니다. 시험은 1024×768 화면 한 가지로만 했기 때문에, 화면 배율이 다른 PC에서 같은 좌표가 같은 자리를 누를지는 확인하지 못했습니다. 좌표로 누르는 스크립트는 쓸 PC에서 다시 재 보세요.

관리자로 연 프로그램에서만 안 바뀔 때

다른 데서는 잘 되는데 특정 프로그램 하나에서만 약어가 그대로 남는다면 그 프로그램이 관리자 권한으로 떠 있는지 보세요. 관리자로 띄운 입력 창을 하나 만들어 시험했습니다.

관리자 권한 창이라는 제목의 입력 창에 zzhi 만 쳐진 채 바뀌지 않은 모습
AutoHotkey를 보통 권한으로 켰을 때입니다. 관리자 창에서는 zzhi가 그대로였습니다.
같은 관리자 권한 창에 앞에 남은 zzhi 뒤로 안녕하세요. 문의 주셔서 감사합니다. 문장이 들어간 모습
AutoHotkey도 관리자 권한으로 켜자 같은 창에서 문장으로 바뀌었습니다. 맨 앞 zzhi는 바로 위 그림에서 안 바뀌고 남은 글자입니다.

공식 FAQ에 따르면 관리자로 뜬 프로그램이 앞에 있을 때 단축키와 약어가 듣지 않는 것은 정상입니다. 보통 권한 프로그램이 관리자 프로그램을 조종하지 못하게 윈도우가 막기 때문입니다. FAQ가 먼저 권하는 방법은 탐색기에서 스크립트를 오른쪽 클릭해 「Run with UI access」로 켜는 것입니다(AutoHotkey가 Program Files에 깔려 있어야 함). 이 방법은 이번에 시험하지 않았습니다.

스크립트를 관리자로 켜면 확실히 됐지만, FAQ 설명대로 그 스크립트가 여는 프로그램까지 관리자로 뜹니다. 그러니 관리자 창에서 꼭 써야 할 때만 그 스크립트를 관리자로 켜고, 평소에는 보통 권한으로 두는 편이 안전합니다.

PC를 켤 때 저절로 켜지게 하기, 그리고 끄기

  1. 키보드에서 Win+R을 누르고 shell:startup을 쳐서 엔터를 누릅니다. 「시작프로그램」 폴더가 열립니다.
  2. 스크립트 파일의 바로 가기를 만들어 이 폴더에 넣습니다. 원본 .ahk 파일은 옮기지 말고 제자리에 둡니다.
  3. 다시 시작하고 로그인하면 트레이에 아이콘이 생깁니다. 시험한 가상 PC에서는 부팅하고 1분이 안 돼 켜졌습니다.
시작프로그램 폴더 안에 자주쓰는문장.ahk - 바로 가기 파일 하나, 크기 734바이트
시작프로그램 폴더에 넣은 바로 가기입니다.

끌 때는 이 폴더에서 바로 가기를 지우는 것이 확실했습니다. 지우고 다시 시작하니 켜지지 않았습니다.

설정 › 앱 › 시작 프로그램에도 이 스크립트가 「켬」으로 보입니다. 그런데 시험한 가상 PC(빌드 26300)에서는 여기서 「끔」으로 바꾸고 다시 시작해도 계속 켜졌습니다. PC 한 대에서 본 결과라 다른 PC도 그렇다고는 말할 수 없습니다. 설정에서 껐는데도 켜진다면 시작프로그램 폴더를 열어 보세요.

윈도우 11 설정 앱 시작 프로그램 목록에 자주쓰는문장 항목이 측정되지 않음, 켬 상태로 보이는 모습
설정의 시작 프로그램 목록입니다. 이 PC에서는 여기서 끄는 것만으로 멈추지 않았습니다.

지울 때: 내가 만든 .ahk 파일은 남습니다

설정 › 앱 › 설치된 앱에서 AutoHotkey를 찾아 제거를 누르면 영어 창이 하나 뜹니다. 2.0.31 칸에 체크가 안 돼 있어 망설여지는데, Remove all을 누르면 됩니다. 시험에서는 6초쯤 걸렸고 다른 창은 뜨지 않았습니다.

AutoHotkey Setup 창, Remove which versions? 질문과 체크 안 된 2.0.31 칸, Remove all 단추와 흐린 Remove checked 단추
제거 창입니다. 칸에 체크가 없으면 Remove checked는 흐리게 막혀 있습니다.

지운 뒤 Program Files의 AutoHotkey 폴더와 앱 목록 항목이 없어졌고, .ahk 파일에 연결된 프로그램도 없어졌습니다. 바탕 화면 폴더에 만들어 둔 .ahk 파일 6개는 그대로 남았습니다. 나중에 다시 깔 생각이면 지우지 말고 두세요. 시작프로그램 폴더에 바로 가기를 넣어 뒀다면 그것도 같이 지우세요.

돈 드는 기능과 쓰면 안 되는 곳

AutoHotkey는 공식 사이트가 무료·오픈소스(GNU GPLv2)라고 밝힌 프로그램입니다. 받는 페이지에도 돈을 내는 판은 따로 없습니다. 이 글의 기능은 전부 무료판 그대로 쓴 것입니다.

⚠️ 온라인 게임에는 쓰지 마세요

공식 FAQ는 게임 보안 프로그램이 깔린 게임에서는 AutoHotkey가 안 돌 가능성이 높다고 적었습니다. 공식 설명서에는 그런 보호를 우회하려다 계정이 정지될 수 있다는 경고도 있습니다. 게임마다 약관도 다릅니다. 이 글은 게임에서 시험하지 않았고, 게임용 스크립트도 다루지 않습니다.

키 하나를 다른 키로 바꾸는 정도라면 스크립트 없이 마우스로 고르는 PowerToys의 Keyboard Manager가 더 쉽습니다. 문장을 바꿔 넣거나 여러 동작을 묶으려면 AutoHotkey가 맞습니다.

이 시험으로 모르는 것

시험은 2026년 11월 11일, 윈도우 11 Pro 26H2(빌드 26300, 한국어) 가상 PC 한 대와 Windows 샌드박스에서 했습니다. 화면은 1024×768이었고 스크립트는 전부 직접 짠 것입니다. 메일 주소도 example.com 가짜 주소를 썼습니다. 그래서 아래는 확인하지 못했습니다.

  • 엑셀, 카카오톡 PC판, 회사 전용 프로그램에서의 동작. Edge, 일반 입력 창, 메모장에서만 해 봤습니다.
  • 새 메모장에서 글자가 어긋나는 이유
  • 백신이나 스마트스크린 경고가 실제로 어떤 모양으로 뜨는지
  • 화면 배율이 다른 실제 PC에서의 좌표 차이
  • FAQ가 권하는 「Run with UI access」

오토핫키를 두고 많이 묻는 것

스크립트는 어디에 저장해야 하나요?

정해진 자리는 없습니다. 이번 시험에서는 바탕 화면에 매크로 폴더를 하나 만들어 모아 두었습니다. 다만 시작프로그램에 바로 가기를 넣었다면 원본 파일을 옮기거나 이름을 바꾸지 마세요. 바로 가기가 엉뚱한 곳을 가리키게 됩니다.

약어가 하나도 안 바뀌어요.

세 가지를 차례로 봅니다. 트레이에 AutoHotkey 아이콘이 있는지(없으면 스크립트가 꺼진 것), 약어 다음에 스페이스나 엔터를 눌렀는지, Suspend Hotkeys가 켜져 있지 않은지입니다. 한 프로그램에서만 안 된다면 그 프로그램이 관리자로 떠 있는 경우입니다.

스크립트를 고쳤는데 그대로예요.

저장만 하면 켜져 있는 스크립트에는 들어가지 않습니다. 트레이 아이콘 메뉴에서 Reload Script를 눌러 새 내용을 읽게 하세요. 끄고 다시 켜도 됩니다.

v1을 같이 깔아도 되나요?

오류 창에서 「예」를 누르면 v1을 받습니다. AutoHotkey 공식 저장소(GitHub)는 v1을 더 이상 손보지 않고 지원은 사용자 모임이 맡는다고 밝히고 있어서, 새로 배우는 분이라면 v2 하나로 가는 편이 덜 헷갈립니다. 꼭 써야 하는 옛 스크립트가 있을 때만 생각해 보세요.

사진: Cedric Fauntleroy / Pexels

댓글 남기기

0%