Notepad++ QuickText 플러그인 한글 깨짐 우회 해결 방법
notepad++ 매크로의 편리함과 불편함
notepad++을 사용할 때 매크로 기능이 굉장히 유용한데요, 짧은 내용을 쓸 때는 편하지만 내용이 길어지면 매크로 기록 자체가 너무 힘들어요.
그렇다고 매크로 설정 파일을(shortcuts.xml) 직접 수정하는 것도 별 소용 없는게, 문자열을 통짜로 넣는 방식이 아니라 한 글자씩 쪼개서 넣는 방식이라 긴 내용은 쉽게 수정하기 어려워요.
단순하게 'href'를 적으려고 해도 아래의 형태로 길게 늘어지거든요.
<Action type="1" message="2170" wParam="0" lParam="0" sParam="h" /> <Action type="1" message="2170" wParam="0" lParam="0" sParam="r" /> <Action type="1" message="2170" wParam="0" lParam="0" sParam="e" /> <Action type="1" message="2170" wParam="0" lParam="0" sParam="f" />
이러다보니 좀 복잡한 서식 같은 건 기본 매크로 기능을 사용하기 매우 까다로워요.
서식을 저장하는 QuickText 플러그인
다행히 notepad++에는 QuickText라는 플러그인이 있어서 긴 글이나 서식도 아주 간편하게 작성할 수 있어요. 미리 지정해 둔 스니펫 이름을 입력한 뒤 Ctrl+Shift+Ins를 누르면 단번에 지정된 서식을 불러올 수 있죠.
그러면 아무리 긴 내용도 단 몇 초면 완성. 거기다 헷갈리기 쉬운 각종 파라메터 역시 일정하게 유지할 수 있어요. (언어 설정은 일치해야 해요!)

사용법도 간단해서, 플러그인 -> QuickText -> Settings로 들어가서 언어 지정 후 snip 이름과 내용을 적으면 끝이에요. 이 snip 이름이 곧 단축키와 비슷한 역할을 하는 거예요.
하지만 한가지 치명적 문제가 있어요. 한글이 깨진다는 거죠.
왜 한글이 깨지는 것인가?
이유는 QuickText 플러그인의 설정 파일이 기본적으로 ANSI라서 그래요. 작업 파일은 인코딩이 UTF-8인데, QuickText 스니펫 파일은 ANSI 인코딩이면 비영어 문자는 바로 깨져서 못 알아보게 되는 거죠.
notepad++ 작업 중 QuickText 설정을 열어보면 한글이 잘 보이는데, 정작 스니펫(서식)을 불러오면 깨진단 말이죠...
제작자의 깃허브에 가 보니 2022년이 마지막 업데이트더라고요. Snippets라는 다른 플러그인으로 갈아탈까 고민도 해 봤지만 이미 쓰던거라 익숙함이 발목을 잡네요.
가능하면 쓰던 플러그인 계속 쓰려고 한참을 고민하다가 결국 단순한 결론에 다다랐죠. '인코딩만 바꾸면 되는 것 아니야?' 하고 말이에요.
해결: 설정 파일의 인코딩 변경
QuickText v0.2.5.1 기준으로, 아래의 절차를 따라주셔요.
- 플러그인 -> QuickText -> Open Snips File = QuickText.ini
- QuickText.ini 파일 백업
- QuickText.ini 파일 인코딩을 UTF-8로 변경
- 저장
- 플러그인 -> QuickText -> Refresh Configuration
이렇게 QuickText.ini 파일을 UTF-8 인코딩으로 바꿔 주시고요, 이제부턴 서식 추가 혹은 수정할 때 Settings 눌러서 하지 마시고 Open Snips File 눌러서 QuickText.ini 파일을 직접 수정하셔요. 그러면 한글 안 깨지고 잘 나와요.
그리고 줄바꿈의 경우 윈도우 기본 줄바꿈인 '\r\n'을 '\n'으로 직접 써 주면 되는데요, 직접 하나하나 써 넣으면 힘드니까 Ctrl+H 눌러서 정규식 타입 일괄 변환으로 처리하셔요.
찾을 내용에 '\r\n', 바꿀 내용에 '\\n' 요렇게 하시고 찾기 모드를 '확장' 혹은 '정규 표현식'으로 선택하면 돼요. 따옴표는 빼고 넣는 것 잊지 마시고요.
