본문 바로가기
Dev Util

게으른 개발자의 키매핑 세팅

by 잘 까먹는 다람쥐 2025. 10. 12.

정말 오랜만에 포스팅으로 돌아왔다.

돌아오게 된 계기는 추후에 생길 귀차니즘을 대비하기 위함이다.

지금 안적어놓으면 잊어버리고 또 삽질할 것이 분명함 ㅇㅇ.

 

오늘은 키보드 키세팅에 관한 내용이다.

 

나는 점점 방향키를 위해 손목을 움직이는 것까지 귀찮아지고 있다.

 

나랑 비슷한 사람이 많아서 그런가.. (개발자의 덕목은 게으름인가보다.)

이미 잘 만든 오픈소스 프로그램이 있어서 사용 방법을 소개한다.

 


 

설정 방법

AutoHotkey

 

  1. 위 사이트에서 AutoHotkey를 다운로드 받는다.
  2.  AHK script를 생성한다. (나는 주로 방향키와 home, end 키를 많이 사용해서 아래와 같이 작성함)
  3. 만들어진 스크립트를 더블 클릭해서 잘 동작하는 지 확인한다.
  4. 시작프로그램에 스크립트를 넣어놔서 컴퓨터 키면 자동 실행하도록 한다. (윈도우 + R  > shell:startup 실행 후 스크립트 이동)
; CapsLock을 Function키처럼 사용
SetCapsLockState("AlwaysOff")  ; LED 끄기

; CapsLock + 방향키 매핑
CapsLock & j::Send("{Left}")
CapsLock & l::Send("{Right}")
CapsLock & i::Send("{Up}")
CapsLock & k::Send("{Down}")
CapsLock & u::Send("{Home}")
CapsLock & o::Send("{End}")

; CapsLock 단독 입력 무시
CapsLock::Return

 

 

위 스크립트는 간단한 방향키만 적용되지만, shift + ctrl 와 같은 추가적인 기능이 필요한 경우에는 아래 스크립트를 사용

CapsArrow.ahk
0.00MB

 

; ==================================================
; AutoHotkey v2 - CapsLock + 방향키/Home/End
; Shift/Ctrl/Shift+Ctrl 지원
; ==================================================

; CapsLock을 Function키처럼 사용
SetCapsLockState("AlwaysOff")  ; LED 끄기

; CapsLock 조합 - 왼쪽
CapsLock & j:: {
    if GetKeyState("Shift", "P") && GetKeyState("Ctrl", "P")
        Send("^+{Left}")
    else if GetKeyState("Shift", "P")
        Send("+{Left}")
    else if GetKeyState("Ctrl", "P")
        Send("^{Left}")
    else
        Send("{Left}")
}

; CapsLock 조합 - 오른쪽
CapsLock & l:: {
    if GetKeyState("Shift", "P") && GetKeyState("Ctrl", "P")
        Send("^+{Right}")
    else if GetKeyState("Shift", "P")
        Send("+{Right}")
    else if GetKeyState("Ctrl", "P")
        Send("^{Right}")
    else
        Send("{Right}")
}

; CapsLock 조합 - 위
CapsLock & i:: {
    if GetKeyState("Shift", "P") && GetKeyState("Ctrl", "P")
        Send("^+{Up}")
    else if GetKeyState("Shift", "P")
        Send("+{Up}")
    else if GetKeyState("Ctrl", "P")
        Send("^{Up}")
    else
        Send("{Up}")
}

; CapsLock 조합 - 아래
CapsLock & k:: {
    if GetKeyState("Shift", "P") && GetKeyState("Ctrl", "P")
        Send("^+{Down}")
    else if GetKeyState("Shift", "P")
        Send("+{Down}")
    else if GetKeyState("Ctrl", "P")
        Send("^{Down}")
    else
        Send("{Down}")
}

; CapsLock 조합 - Home
CapsLock & u:: {
    if GetKeyState("Shift", "P") && GetKeyState("Ctrl", "P")
        Send("^+{Home}")
    else if GetKeyState("Shift", "P")
        Send("+{Home}")
    else if GetKeyState("Ctrl", "P")
        Send("^{Home}")
    else
        Send("{Home}")
}

; CapsLock 조합 - End
CapsLock & o:: {
    if GetKeyState("Shift", "P") && GetKeyState("Ctrl", "P")
        Send("^+{End}")
    else if GetKeyState("Shift", "P")
        Send("+{End}")
    else if GetKeyState("Ctrl", "P")
        Send("^{End}")
    else
        Send("{End}")
}

; ==================================================
; Ctrl + 방향키에 Shift 선택 기능 추가
; ==================================================

; Ctrl + Left
^Left:: {
    if GetKeyState("Shift", "P")
        Send("^+{Left}")
    else
        Send("^{Left}")
}

; Ctrl + Right
^Right:: {
    if GetKeyState("Shift", "P")
        Send("^+{Right}")
    else
        Send("^{Right}")
}

; Ctrl + Up
^Up:: {
    if GetKeyState("Shift", "P")
        Send("^+{Up}")
    else
        Send("^{Up}")
}

; Ctrl + Down
^Down:: {
    if GetKeyState("Shift", "P")
        Send("^+{Down}")
    else
        Send("^{Down}")
}

 

'Dev Util' 카테고리의 다른 글

[멀티미디어 분석 툴] ffprobe.exe  (0) 2025.03.04
[동적 분석 Tool] Procmon.exe  (0) 2025.02.11
[멀티미디어 변환 툴] FFmpeg.exe  (0) 2025.01.19