如何使用 Wayland 显示服务器在 Ubuntu 22.04.3 上将 Caps Lock 永久重新映射到 Esc 键

如何使用 Wayland 显示服务器在 Ubuntu 22.04.3 上将 Caps Lock 永久重新映射到 Esc 键

我的目标是使用 Wayland 显示服务器永久重新映射CAPSLOCK到Ubuntu 22.04.3 下的密钥。ESC

第二个要求是无需安装额外的软件。

我需要 VIM,以便快速有效地使用文本编辑器。

我尝试了几种方法,但由于我不是经验丰富的 Linux 用户,所以失败了。
我尝试的第一件事是本文
那里写着执行以下命令: setxkbmap -option caps:escape 以便重新映射CAPSLOCKESC,它甚至可以暂时起作用。

我检查结果这里
但正如文章所说,映射只是暂时的。

因此,我将通过编辑文件使其永久生效/etc/default/keyboard。如下所示:

# KEYBOARD CONFIGURATION FILE
# Consult the keyboard(5) manual page.

XKBMODEL="pc105"
XKBLAYOUT="us"
XKBVARIANT=""
XKBOPTIONS="caps:escape"
BACKSPACE="guess"

# https://thesynack.com/posts/persistent-capslock-behavior/
# https://askubuntu.com/questions/363346/how-to-permanently-switch-caps-lock-and-esc

但是 Ubuntu 重启后它仍然不起作用,我不明白为什么?

我使用的这篇文章是否专门用于重新映射CAPSLOCKESCX11?

因为我使用的是 Wayland 显示服务器。它是我的 Ubuntu Ubuntu 22.04.3 中的默认设置。

我也仔细读过这个问题在这里以及提供的所有答案。尽管有很多知识和公认的答案,但整个线程已经有 10 年的历史了 - 早在 Wayland 成为 Ubuntu 中的默认显示服务器之前 - 因此我觉得可以再次提出这个问题。

答案1

在使用电脑两天并经过 4 或 5 次电源开关循环后,它开始像我最初希望的那样CAPSLOCK作为按键工作。ESC

我没有做任何超出问题描述的事情。我不知道为什么这个/etc/default/keyboard文件编辑在第一次重启电脑后没有生效。但我很高兴它终于开始正常工作了描述在这里

你可能还想检查另一个文件,但不能编辑。
这是/usr/share/X11/xkb/rules/base.lst文件。
您可以找到有关如何CAPSLOCK更改行为的所有选项。以下是可能性的简短列表:

  ctrl:nocaps          Caps Lock as Ctrl
  ctrl:swapcaps        Swap Ctrl and Caps Lock
  ctrl:swapcaps_hyper  Caps Lock as Control, Control as Hyper

  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  

如果您想自己使用grep该文件,请尝试以下命令:/usr/share/X11/xkb/rules/base.lst

grep "caps" /usr/share/X11/xkb/rules/base.lst

我的最终/etc/default/keyboard文件内容(永久重新映射CAPSLOCKESCUbuntu 22.04.3 下的密钥)如下:

# KEYBOARD CONFIGURATION FILE
# Consult the keyboard(5) manual page.


XKBMODEL="pc105"
XKBLAYOUT="us"
XKBVARIANT=""
XKBOPTIONS="caps:escape"
BACKSPACE="guess"


# https://thesynack.com/posts/persistent-capslock-behavior/
# https://askubuntu.com/questions/363346/how-to-permanently-switch-caps-lock-and-esc

但正如我在一开始所说的,它只在 2 天和 4 或 5 次开关机循环后才开始工作 -我不知道为什么它从一开始就不起作用。

这个帖子非常有帮助并提供了大量有关 Linux 下重新映射键如何工作的信息。

另外,我发现了这段话在同一个线程中上面我已经推荐过了。

在 Debian 系统中, 的更改/etc/default/keyboard不会立即对 X 可见。您应该重新启动系统,或使用sudo udevadm trigger --subsystem-match=input --action=change
https://linux.die.net/man/8/udevadm

为了在控制台上激活更改,请运行setupcon(1)。

相关内容