다음 명령을 사용하여 키맵을 성공적으로 업데이트할 수 있습니다.
/usr/bin/setxkbmap -option "ctrl:swapcaps"
이것은 내 수정자 맵을 변경하지 않는 것 같습니다.
[OP@localhost ~]$ xmodmap
xmodmap: up to 4 keys per modifier, (keycodes in parentheses):
shift Shift_L (0x32), Shift_R (0x3e)
lock Caps_Lock (0x25)
control Control_L (0x42), Control_R (0x69)
mod1 Alt_L (0x40), Alt_R (0x6c), Meta_L (0xcd)
mod2 Num_Lock (0x4d)
mod3
mod4 Super_L (0x85), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf)
mod5 ISO_Level3_Shift (0x5c), Mode_switch (0xcb)
그러나 모든 것이 작동하는 것 같습니다. 내 질문은 다음과 같습니다이것이 수정자 맵을 변경하지 않는 이유는 무엇이며, 작동한다면 수정자 맵은 무엇을 위해 사용됩니까?
답변1
변경할 것이 없기 때문에 수정자 맵은 변경되지 않습니다. ;)
무슨 일이 일어나면 xkb
그 Control_L열쇠 기호는 그 열쇠 기호가 속한 키 코드 66에 귀속됩니다 CapsLock.
CapsLockkeyym은 더 이상 키코드의 영향을 받지 않지만 여전히 Caps Lock 수정자입니다.
Control_Lkeysym은 이미 Modmap에 있으므로 추가할 필요가 없습니다.
실제로 두 개의 Shift 키를 동시에 누르면 shift:both_capslock
활성화/비활성화되는 또 다른 옵션을 추가할 수도 있습니다. CapsLockCapsLock은 Modmap에서 제거되지 않았으므로 여전히 작동합니다.
자, 이 모드맵은 어떤 용도로 사용되나요? 고려해야 할 다른 수정자가 있습니다.
⮱ ISO_Level5_shift다중 언어, 유니코드 기호, "EIGTH_LEVEL" 키가 있는 확장 키보드에 적합합니다.
ISO_Prev_Group⮱ 여러 그룹에 적용됩니다 .
⮱사용자들 사이에서 매우 Hyper인기가 있습니다 Emacs
.
...등 xkb
각 수정자(shift, 래치, 잠금)에는 다양한 변형이 있지만 이러한 기능이 모두 와 관련이 있는 것은 아닙니다 Xmodmap
.
그럼에도 불구하고, 이 앱은 사용하기에 매우 좋으며 setxkbmap
대부분의 사용자가 알고 있는 것보다 더 많은 내용을 담고 있습니다.
man Xkeyboard-config
localectl
동일한 옵션을 사용하여 변경 사항을 영구적으로 적용할 수 있습니다 (약간의 의미 변경에 유의하세요).