...
개발자 키보드 ⌨️ 코딩 단축키 매크로 키매핑
본 포스팅은 일반 키보드를 해피해킹 처럼 단축키 매크로로 타이핑 및 이동키를 매우 편리하게 구성하기 위해 노하우를 공유하고자 작성했다.
자체 커스텀 매크로 기능을 지원하는 키보드들도 있지만, 없는 키보드들이 많기에 가장 유명한 오토핫키 프로그램을 이용하여 매크로를 구성해보았다. 따라서 어느 키보드든 윈도우 환경에서 편리한 단축키를 구성해 사용할 수 있을 것이다.
글을 따라 어떻게 커스텀하는것이 좋은지 고민해보고, 본문 마지막에는 귀찮은 분들을 위한 설정이 완료된 exe 파일을 첨부하니 한번 사용해보는걸 권장한다.
1. 개발자 키보드 단축키 구성 고민하기
보통 우리는 키보드 자판 a s d f j k l ; 에 손가락을 올려두고 타이핑한다.
하지만 코딩하다 보면 방향키 와 특수문자키 를 사용할 때 가 아주 많은데,
문제는 방향키를 누르려면 손목을 동남쪽으로 내리고 조작하고 다시 자세를 잡아야하는데 이러는게 너무 불편하고, 무엇보다 타이핑이 매끄럽게 이어지지 않고 끊기는 느낌이 심했다.
그래서 문득 단축키 조합으로 방향키 및 특수문자 매크로를 추가로 설정하면 어떨가 생각해봤다.
예를들어 fps할때 이동키를 ↑←↓→ 로 쓰지않고 w a s d 로 사용하는 것처럼 단축키 + w를 누르면 이동키로 동작이 되도록 구성하면 손목 이동 없이 매끄럽게 코타이핑(코딩) 가능하지 않을까?
우선 매크로 활성화 단축키 후보로는 alt, Fn, capslock 을 뽑았다.
alt키
우리에게 shift, ctrl 다음으로 친숙한 단축키다.
하지만 많은 응용 프로그램들이 자체 alt를 이용한 단축키를 사용하기에 후보에서 탈락 시켰다.
Fn키
보통 Fn키는 F1 ~ F12 와 함께 조합되지, 주키와 조합되지 않는다.
그래서 단축키로 이용하기에는 매우 강력한 후보였지만, 문제는 키보드 모델마나 Fn키가 있는 위치가 천차만별이다.
대부분 누르기 매우 힘든 위치해 있다.
호환성이 떨어진 점에서 탈락 시켰다.
capslock키
왜 있나 싶을정도로 정말정말로 사용하지 않는 키.
대문자를 누가 capslock를 키고 치는가? 하지만 그래도 가끔 사용할때도 있긴하다.
그러면 capslock의 대문자 키는 기능을 따로 바꾸고, capslock을 오로지 단축키 조합 용도로 쓰면 좋지 않을까?
키보드 배치 문제도 없고 shift바로 위에 있어서 접근성도 편하다.
2. AutoHotkey 설치 & 매크로 설정하기
1) 먼저 Auto Hokey 프로그램을 다운 받는다.
2) 마우스 우클릭 → 새로 만들기 → AutoHotkey Script 클릭으로 신규 파일 생성 (확장자는 .ahk이다)
3) 생성한 .ahk파일을 에디터로 열고 아래 코드를 복붙한다.
최대한 코딩하는데 있어서 손목의 이동을 최소화한 배열 매크로를 짜봤다.
물론 처음에는 익숙치 않아, 불편하겠지만 적응하면 이보다 편한것은 없어, 적극적으로 추천하는 바다.
[작동방식]
- 캡스락 + f : 본연의 capslock 대문자고정 기능 끄고/키기
- 캡스락 + i j k l : 이동 방향키
- 캡스락+ w a s d (or) 캡스락 + ↑←↓→ : home, end, pgup, pgdown
- 캡스락 + o : BACKSPACE 지우기
- 캡스락 + u : DELETE 지우기
- ... 등등
나머지는 코드를 보면서 파악하길 바란다.
그렇게 어려운 문법은 아닌지라 조금만 보면 바로 무슨 내용인지 파악 할 수 있을 것이다.
참고로 오토핫키 문법에서 ; 는 주석처리 이다.
🕹️ 이동키 : I J K L
🕹️ PgUp / PgDn / Home / End : w a s d
🕹️ 지우기 : U / R
🕹️ 자주 쓰는 문장 자동완성 단축키 : 1 ~ 5
🕹️ 커맨드
🕹️ 특수문자 매크로
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
; [ 간단 autoHokey 문법 정리 ]
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
; 키 지정 방법: https://autohotkey.com/docs/Hotkeys.htm
; 전체 키 목록: https://autohotkey.com/docs/KeyList.htm
; #: Win
; !: Alt
; ^: Ctrl
; +: Shift
; &: 두개의 키 조합
; send는 한문자 일일이 타이핑하게 되고 (속도가 느리고)
; sendinput은 복사하여 붙여넣는 스피드로 (속도가 빠르다)
; { } 안에는 특정 키를 누르게 되며, { } 없는 것은 문자열로 인식하게 되어 타이핑 쳐지게 된다.
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
; - 기본 capslock기능을 꺼둠
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SetCapsLockState, AlwaysOff
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
; - capslock + f 키로 기본 capslock를 키고 끔
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Capslock & f::Capslock
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
; - Capslock키를 누르고 있을경우
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
#If GetKeyState("Capslock","P")
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
; - 방향키
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
i::Up
j::Left
k::Down
l::Right
q & j::^Left ; 캡스락 + q + j : 빠르게 이동
q & l::^Right
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
; - 커맨드
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
w::PgUp
a::Home
s::PgDn
d::End
Left::Home
Right::End
Up::PgUp
Down::PgDn
Enter::^Enter ; - 커서를 끝까지 옮기지 않고 그자리에서 바로 엔터처리
;BackSpace::Esc
o::BackSpace
u::Del
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
; - 코딩 특수기호
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
;m::Send, {-}
;,::Send, {_}
;.::Send, {=}
;/::Send, {+}
;q & m::Send, {-}{>} ; - 인스턴스 참조
;q & ,::Send, {<}{=} ; - 논리값
;q & .::Send, {>}{=}
;q & /::Send, {=}{>} ; - 화살표함수
'::Send, {``} ; - 백틱
q & '::Send, {~}
[::Send, {/}{*} ; - 주석
]::Send, {*}{/}
q & [::Send, {<}{!}{-}{-}
q & ]::Send, {-}{-}{>}
;9::Send, {[}
;0::Send, {]}
;q & 9::Send, {{}
;q & 0::Send, {}}
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
; - 자주 쓰는 문장 자동완성 단축키
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1::SendInput, console.log(){Left}
2::SendInput, ${{}{}}{Left}
;3::SendInput,
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
; - 한/영 단축키 변경
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
; Alt::
; Send, {vk15sc138} ; shift + space를 한영키로 사용
; return
#If
4) 그리고 .ahk파일을 우클릭 → Compile Script 해주면 .exe 파일이 생성된다. (미리 만들어둔 파일을 첨부해둔다)
5. 이제 생성된 exe파일을 실행해주면 실행작업에 오토핫키가 실행되고 있는 것을 알수 있다.
이 오토핫키exe가 실행되는 동안 위에서 설정한 단축키 조합을 사용할수 있고, 사용 안하고 싶으면 exe파일을 끄거나 suspend hokey를 누르면 된다.
부팅시 데몬 자동 시작하기
컴퓨터를 재부팅하면 오토핫키 exe 실행이 멈추어 다시 실행시켜야 하는 번거로움이 있다.
Windows 시작시 자동으로 실행되도록 시작 프로그램에 등록해 놓고 사용하면 편리하다.
작성한 스크립트 데몬이 Windows 시작시 자동으로 실행되도록 하려면,
window + R 로 실행창을 열어주고 "shell:startup" 이라고 적고 확인을 누른다.
그러면 시작프로그램 폴더창이 뜨는데, 여기에다가 exe 파일을 위치시켜주면, 부팅할때마다 자동으로 실행시켜준다.
이 글이 좋으셨다면 구독 & 좋아요
여러분의 구독과 좋아요는
저자에게 큰 힘이 됩니다.