Arch Linux에서 Caps Lock을 Left Ctrl로 바꾸자 (udev + hwdb 방식)
Caps Lock 키, 자꾸 잘못 눌러서 짜증날 때 많지? 😅
우리 이 기회에 아예 Caps Lock을 Left Ctrl로 바꿔주자!
게다가 이건 커널 레벨에서 설정하는 방식이라 X11이든 Wayland든 항상 적용돼.
즉, tty에서도 잘 작동하는 깔끔한 설정이야.
🔍 먼저, 키보드 장치를 알아보자
터미널에서 아래 명령어로 내 키보드가 어떤 건지 확인해보자:
1
sudo libinput list-devices
이런 식으로 나올 거야:
1
2
Device: AT Translated Set 2 keyboard
Kernel: /dev/input/event4
또는 evtest
로 눌러보면서 알아볼 수도 있어:
1
sudo evtest
event4
같은 키보드 장치를 선택하고, Caps Lock을 눌러보자.
그러면 KEY_CAPSLOCK
이라는 이벤트가 나올 거야. 이제 이걸 바꿔주자!
⚙️ udev + hwdb 설정으로 remap해보자
1. 설정 파일을 만들어주자
아래 명령어로 설정 파일을 만들어주자:
1
sudo nano /etc/udev/hwdb.d/99-custom-keyboard.hwdb
그리고 아래 내용을 넣어주자:
1
2
3
4
# Caps Lock → Left Ctrl로 바꾸기
evdev:input:b0011v0001p0001*
NAME=="AT Translated Set 2 keyboard"
KEYBOARD_KEY_3a=leftctrl
🔎 참고:
b0011v0001p0001*
는 키보드의 버스/벤더/제품 ID야.KEYBOARD_KEY_3a
는 Caps Lock의 스캔 코드 (0x3A)
2. 설정을 반영해보자
이제 이 설정을 적용하자:
1
2
sudo systemd-hwdb update
sudo udevadm trigger /dev/input/event4
또는 전체 장치에 적용하고 싶다면:
1
sudo udevadm trigger /dev/input/event*
3. 잘 적용됐는지 확인해보자
다시 evtest
로 확인해보자:
1
sudo evtest
Caps Lock을 눌렀을 때 아래처럼 나오면 성공!
1
Event: time ..., type 1 (EV_KEY), code 29 (KEY_LEFTCTRL), value 1
📌 참고 자료
- Arch Wiki - Input remapping
/usr/lib/udev/hwdb.d/60-keyboard.hwdb
→ 다양한 키코드 참고할 수 있어
```