이현우 프로필

CapsLock + hjkl 설정

배경 이야기

개발 뿐만아니라 다양한 프로그램을 사용하면서 방향키를 사용할 일이 많다. 키보드에서 방향키까지 손이 내려가는 것에 불편함을 겪어 vim에서의 hjkl로 방향키를 다른 환경의 프로그램에서도 적용하고자 해당 글을 쓰게 되었다.


설정하기

1. gnome-tweaks 설치

데스크탑 환경을 커스텀마이징할 수 있는 GUI툴로 폰트, 아이콘, 테마, 키보드 설정을 변경해줄 수 있는 툴이다. mac에서 키보드 단축키 설정을 Karabiner-Elements 앱으로 커스텀하듯이 linux/gnu환경에서는 gnome-tweaks를 통해 설정한다고 보면 된다. (Karabiner-Elements는 해당 caps + hjkl 스니펫이 존재한다.)

먼저 gnome-tweaks를 설치한다.

$ sudo pacman -S gnome-tweaks

2. Caps locks를 3rd trigger로 매핑하기


Additional Layout Options를 선택한다.

Screenshot From 2025-01-10 18-39-22


Caps locks는 잘 안쓰므로 Esc로 대체시킨다.

Screenshot From 2025-01-10 18-39-49


3rd level의 트리거를 Caps locks로 선택한다.

Screenshot From 2025-01-10 18-40-06


3. hjkl 키를 방향키로 매핑

Caps locks가 3rd trigger/modifier 로 설정이 되었다면, 이제 키보드 레이아웃 파일을 수정해 hjkl키를 방향키로 동작시키도록 한다.


default 키보드 레이아웃을 vim 편집를 사용하여 수정모드로 진입한다.

$ sudo nvim /usr/share/X11/xkb/symbols/us

다음과 같이 각 hjkl에 방향키 매핑을 수정시킨다.

Screenshot From 2025-01-10 19-03-18


key <AC06> {[ h, H, Left ]}; key <AC07> {[ j, J, Down ]}; key <AC08> {[ k, K, Up ]}; key <AC09> {[ l, L, Right ]};

설정 적용 끝.

$ setxkbmap