在 Linux 上,有一个名为 /etc/default/keyboard 的文件:
该键盘文件描述了键盘的属性。
bash
man 5 keyboard
所有可用键盘型号、布局、变体和选项的描述都可以在 /usr/share/X11/xkb/rules/xorg.lst 中找到。
让我们检查一下 /usr/share/X11/xkb/rules/xorg.lst,看看关于 caps lock 我们可以找到哪些选项:
bash
$ grep "caps" /usr/share/X11/xkb/rules/xorg.lst
[OUTPUT TRIMMED]
ctrl:nocaps Caps Lock as Ctrl
ctrl:swapcaps Swap Ctrl and Caps Lock
ctrl:swapcaps_hyper Caps Lock as Control, Control as Hyper
[OUTPUT TRIMMED]
caps:swapescape Swap ESC and Caps Lock
caps:escape Make Caps Lock an additional Esc
caps:escape_shifted_capslock Make unmodified Caps Lock an additional Esc, but Shift + Caps Lock behaves like regular Caps Lock
caps:super Make Caps Lock an additional Super
caps:ctrl_modifier Caps Lock is also a Ctrl
ctrl:nocaps: 将 Caps Lock 键设置为 Ctrl 键。
ctrl:swapcaps: 将 Ctrl 键和 Caps Lock 键互换。
ctrl:swapcaps_hyper: 将 Caps Lock 键设置为 Ctrl 键,并将 Ctrl 键设置为 Hyper 键。
caps:swapescape: 将 ESC 键和 Caps Lock 键互换。
caps:escape: 将 Caps Lock 键设置为一个额外的 ESC 键。
caps:escape_shifted_capslock: 将未修改的 Caps Lock 键设置为一个额外的 ESC 键,但 Shift + Caps Lock 键的行为像普通的 Caps Lock 键。
caps:super: 将 Caps Lock 键设置为一个额外的 Super 键。
caps:ctrl_modifier: 将 Caps Lock 键也设置为一个 Ctrl 键;
打开 /etc/default/keyboard 文件。您应该会看到类似以下内容
bash
# KEYBOARD CONFIGURATION FILE
# Consult the keyboard(5) manual page.
XKBMODEL="pc105"
XKBLAYOUT="us"
XKBVARIANT=""
XKBOPTIONS=""
BACKSPACE="guess"
将包含 XKBOPTIONS="" 的行更改为您想要的选项, 如:
bash
XKBOPTIONS="ctrl:nocaps"
这样就将 Caps Lock 键设置为 Ctrl 键了。
重启生效。