본문 바로가기
컴퓨터

핫스트링, 단축글, 줄임말, 텍스트 대치,... 오토핫키로 쉽게 만들기

by 그믐치 2022. 1. 1.

핫스트링 기능을 한국말로 뭐라 표현해야할지 모르겠습니다.

단축글? 줄임말? 텍스트 대치? 텍스트 치환?

어쨌든 여기서는 오토핫키 프로그램을 이용한 핫스트링(HotStrings)을 소개할것이므로 핫스트링이라 하겠습니다.

 

문장 작성시에 미리 정의된 짧은 단축문자를 입력하면 원하는 긴문자나 특수문자로 바꿔주는 기능이 있으면 문서작성에 크게 도움이 됩니다. 이것을 핫스트링이라 하며 오토핫키(AutoHotKey)를 이용하면 쉽게 구현 가능합니다.

 

오토핫키는 주로 PC를 전문적으로 사용하는 고급유저분들이 많이 이용하고 복잡한 코딩이 필요하기도 하지만 우리가 원하는 핫스트링 기능은 어려운 코딩없이 누구나 구현 가능합니다.

 

우리가 글 작성중에 특수문자를 입력하는 경우는 두가지입니다.

글 작성중 실행창(Win+R)을 누르고 'charmap'을 입력후 문자표에서 특정 문자를 찾거나;;

문자표
문자표

한글 자음을 쓰고 한자키를 눌러 특수문자표를 불러내 사용하는데 이게 어떤 자음에 어떤 기호문자가 있는지 기억하지 못하니까 항상 여러 자음을 불러보고 스크롤해가며 찾는게 스트레스입니다;;

특수문자 불러오기
특수문자 불러오기

참고로 이모지, 이모티콘 사용방법은 아주 간단합니다. 아래글을 참고하세요.

https://showering.tistory.com/123

 

네이버,다음, 유튜브 게시판에 이모지, 이모티콘, 특수문자 편리하게 사용하기

네이버,다음,유튜브의 카페,블로그,뉴스 게시판에 이쁜 이모지를 사용할수 있습니다. 스마트폰은 키보드에서 쉽게 사용할수 있으나 PC에선 어떻게 사용할까요. 스마트폰과 마찬가지로 간단히

showering.tistory.com

 

위와같이 글머리 기호나 특수문자를 자주 사용하고 편한 입력방법을 찾고 있다면 지금 소개할 오토핫키의 핫스트링 기능을 사용하세요.

 

또는 글자치환 기능을 찾는다면 역시 오토핫키를 사용하세요.

예를들어 82' = 빨리오세요 라고 정의해두고 문서 작성중에 82' 라고 입력하면 해당부분이 빨리오세요 로 자동 치환되게 되는 방식입니다.

 

이렇게 만들어놓으면 메모장,오피스등 모든 에디터 종류의 프로그램 사용시에 적용이 되며 인터넷 브라우저 사용시에도 적용이 됩니다. 여러가지를 그룹으로 정의해두고 필요한 그룹만 골라서 여러개 적용할 수 도 있고 불필요해지면 종료시키면 됩니다.

 

이외에도 오토핫키는 윈도우즈 단축키를 정의하는 기능, 키보드를 매핑하는 기능, 작업 자동화 기능등을 가지고 있으니 전문적인 사용을 원한다면 오토핫키 사용자 사이트를 찾아 공부해보세요.

 

혹 오토핫키 기능중에서 키보드의 특정 키 기능을 교체하는 키보드 매핑만을 원한다면 오토핫키를 사용하기보다 윈도우즈 자체의 매핑기능을 사용하시길 추천합니다.

메모리에 별도의 프로그램이 상주할 필요없고 복잡하지 않고 깔끔하거든요.

이 내용은 이전에 포스팅해두었으니 필요하시면 봐주세요.

 

키보드 매핑 원리와 수동으로 만드는 방법 

https://showering.tistory.com/136

 

키보드 매핑, 키 버튼의 위치나 기능 바꾸기 (볼륨 조절) 1

똑같은 PC지만 저마다 사용 패턴은 다릅니다. 물론 키보드의 사용패턴 또한 마찬가지구요. 저는 키보드 버튼중에 전혀 사용하지 않는 키들이 몇개 있습니다. 그래서 이 버튼들을 사운드의 볼륨

showering.tistory.com

키보드 매핑을 쉽게하는 무료 유틸리티 소개

https://showering.tistory.com/138

 

키보드 매핑, 키 버튼의 위치나 기능 바꾸기 (볼륨 조절) SharpKeys 2

이전 글에서 키보드 매핑에 관해 이야기했습니다. 간단한 원리와 나의 시스템 어디에 어떤 작업이 되는것인지를 알아야 후에 수정이나 오작동에 대한 대처를 할수 있을것 같아 그 내용을 썼습

showering.tistory.com

 

이제 핫스트링을 만드는 과정을 봅니다.

 

1. 오토핫키 다운로드 및 설치

 

오토핫키 공식 사이트를 방문해 프로그램을 다운로드합니다.

https://www.autohotkey.com/

 

AutoHotkey

AutoHotkey provides a simple, flexible syntax allowing you to focus more on the task at hand rather than every single little technicality. It supports not only the popular imperative-procedural paradigm, but also object-oriented and command-based programmi

www.autohotkey.com

AutoHotkey
AutoHotkey

다운로드 한 파일로 설치를 시작하면 기본적으로 위와같은 설치화면이 나옵니다.

그냥 Express Installation으로 설치하면 되고 문자인코딩 방식을 선택하려면 아래 Custom Installation을 선택하고 ANSI나 Unicode64. Unicode32중 선택하세요.

아무거나 선택해도 설치후에 오토핫키 프로그램 그룹에서 '오토핫키 셋업'을 실행해서 인코딩 형식을 변경할 수 있으니 고민하지 말고 설치합니다.

 

다음은 오토핫키 전용 에디터인데 설치해도 되고 안해도 됩니다.

https://www.autohotkey.com/scite4ahk/

 

SciTE4AutoHotkey

Downloads --> Installer - this program will install SciTE4AutoHotkey automatically. Other Downloads --> Portable .ZIP - designed for USB sticks. Extract this archive to your portable AutoHotkey folder. --> SciLexer.dll with AutoHotkey support - useful if y

www.autohotkey.com

SciTE4AHK
SciTE4AHK

이 에디터는 코딩을 할때 문법 하이라이트나 자동완성등의 편리한 기능을 제공합니다.

다만 이 에디터는 한글패치를 해도 한글지원이 불안정하고 불편합니다.

오토핫키 스크립트를 전문적으로 코딩할게 아니라면 그냥 윈도우즈 기본 메모장이나 노트패드++을 사용해도 충분합니다.

 

2. 핫스트링 정의 파일 만들기

 

메모장을 열고

:*:2'::●

라고 입력후에 'test1.ahk'라고 저장합니다.

방금 저장한 'test1.ahk' 더블클릭해 봅니다.

위에서 오토핫키 설치를 했다면 작업표시줄 오른쪽에 초록색 아이콘이 실행될겁니다.

 

이제 메모장이나 브라우저에 검색창등에 2' 를 입력해봅니다.

입력을 마치자 마자 ●로 변할겁니다.

 

좀전에 입력한 메모장 내용중 * (아스테리크)를 삭제합니다.

::2'::●

그리고 이름은 그대로 저장.

작업표시줄
작업표시줄

내용이 바뀌었으면 작업표시줄의 오토핫키 아이콘에서 마우스 우클릭후 'Reload This Script'를 눌러 바뀐 내용을 적용시켜줍니다.

 

다시 메모장이나 브라우저에서 2' 를 해보면 ●로 변하지 않을겁니다.

그러나 마침표를 찍거나 스페이스 혹은 엔터키등을 누르면 그제서야 ●로 변합니다.

 

바로 감이 오시죠 앞에 *가 없으면 문장이 끝날때 치환을 하고 * 있으면 문장이 끝나지 않아도 단축문자가 입력되는대로 무조건 치환되는것입니다. 

 

그러니까 :첫째:둘째::셋째 요렇게 3자리고 구분해서 가장 앞에는 옵션을 2번째는 단축문자를 3번째는 빠꾸고 싶은 문자나 문장을 넣는거구나.

쉽죠? 이것만 알면 끝난겁니다.

 

test1.ahk 문서에

:*:22'::서울특별시 서대문구 주소

이렇게 추가해주세요.

작업표시줄에서 해당 스크립트를 리로드 해주고 테스트 해 봅니다.

기다란 주소를 써야하는 란에 22'를 쓰면 자동으로 주소가 들어갑니다.

 

이런식으로 목록을 만드는겁니다.

:*:1'::ㆍ
:*:11'::º
:*:111'::⊙
:*:2'::●
:*:22'::○
:*:222'::◎
:*:3'::■
:*:33'::□
:*:333'::▣
:*:4'::√
:*:44'::▶
:*:444'::▷
:*:5'::※
:*:55'::◆
:*:555'::◇
:*:6'::☆
:*:66'::★
:*:7'::☏
:*:8'::≡
:*:c1'::①
:*:c2'::②
:*:c3'::③
:*:c4'::④
:*:c5'::⑤
:*:c6'::⑥
:*:c7'::⑦
:*:c8'::⑧
:*:c9'::⑨
:*:c10'::⑩
:*:c11'::⑪
:*:c12'::⑫
:*:c13'::⑬
:*:c14'::⑭
:*:c15'::⑮
:*:121'::홍길동
:*:122'::010-1234-5678
:*:123'::서울특별시 주소 주소 주소

 

이런 리스트를 만들었다면 키보드 각 숫자키 위에 ㆍ●■√※☆☏≡ 가 그려진 네임스티커를 붙이거나 위의 내용을 포스트잇지에 써서 모니터 옆에 붙여두고 사용합니다.

내용이 많지 않다면 그냥 외우고 있으면 되구요.

 

모든 단축단어 뒤엔 ' 를 붙였는데 이건 단축단어가 아닌 진짜 쓸려는 문자와 구분하기 위함입니다.

가령 숫자 33을 쓸경우에 자동으로 치환되버리면 불편하니까요.

어쨌든 '를 안붙여도 되고 각자가 자신의 손에 편한 다른 문자를 붙여써도 됩니다.

 

그런데 제가 만든 목록을 보면 단축키에 한글을 사용하지 않았다는걸 느끼셨나요?

:*:주'::서울특별시 주소 주소 주소

라고 한글로 만들면 더 직관적일텐데 말이죠.

 

이 오토핫키의 단점이 한글사용이 불안합니다.

전용 편집기에 한글패치가 가능하지만 패치해도 불안정하고

핫스트링도 약간의 편법들이 있지만 역시나 한글을 이용하면 불안정해집니다.

 

그렇게 한글 사용이 불안정한 이유도 있고 또 다른 이유는 한글뿐 아니라 영타도 많이 친다면 한글상태이든 영문상태이든 공통으로 적용되는 키들만 사용하여 단축 단어들을 만드는것이 효율적이기 때문이기도 합니다.

 

이 핫스트링 스크립트 문서 하나에 모두 저장할 필요는 없습니다.

분야별, 작업특성별 혹은 문자종류별로 여러개의 스크립트 문서로 만들어 두고 작업에 필요한 파일만 실행시켜 사용하면 됩니다.

 

윈도우즈 사용시 항상 필요하다면 해당 스크립트 파일(test.ahk)을 윈도우즈의 시작 폴더에 넣어두면 윈도우즈 부팅시에 자동으로 적용됩니다.

 

시작프로그램 폴더의 위치는 

C:\Users\사용자이름\AppData\Roaming\Microsoft\Windows\시작 메뉴\프로그램\시작프로그램

입니다.

 

메모장
메모장

하나 예상되는 문제는 만일 한글이 깨져 나오거나 뭔가 번쩍하면서 작동하는것 같은데 핫스트링이 작동 안한다면 문자 인코딩 상태가 잘못된것입니다.

 

이럴땐 만든 스크립트 문서를 저장시에 인코딩을 다른 형식으로 저장합니다.

ANSI 나 UTF-16 LE 로 저장하고 작업표시줄에서 오토핫키 아이콘을 우클릭후 'Reload This Script'를 눌러 스크립트를 다시 로드해줍니다.

 

사용하는 PC와 프로그램 인스톨 상태가 모두 다를 수 있으니 자신의 문자 인코딩 상태를 명확히 모른다면 저장시 인코딩 상태를 바꿔가면서 어떤 인코딩 상태로 만들어야 정상적으로 작동하는지 테스트합니다. 

댓글