如何在有或没有 X 的情况下在用户级别重新映射按键

如何在有或没有 X 的情况下在用户级别重新映射按键

我想重新映射 Capslock,并且希望此重新映射既能在带有 X 服务器的机器上工作,也能在不带有 X 的机器上工作。我还希望此重新映射应用于用户级别,而不是全局级别。这个答案有一个重映射解决方案,无论是否使用 X 都可以使用。但重映射是全局性的,需要 root 权限。是否可以在本地重映射一个键,并使其在有 X 和没有 X 的情况下都可以使用?

答案1

真糟糕!我做了一些研究,发现将键盘映射更改为重新映射CAPSLOCK(例如)需要root 访问权限。抱歉。


本着信息的精神,我将保留我在这里所做的工作:

您可以通过输入选项来设置仅限用户的键盘配置~/.keyboard,这些配置将覆盖在/etc/default/keyboard

  • 笔记:去读setupcon你的~/.keyboard,你必须创建~/.console-setup,一个空文件就足够了。 中的逻辑setupcon不检查 ~/.keyboard,而是查找 ~/.console-setup,然后读取两个都文件。啧啧啧

您没有指定想要CAPSLOCK映射到什么,因此我将给出几个示例。

如果愿意的话,你可以使用该/etc/default/keyboard文件作为模板,如下面这些条目中的一个~/.keyboard可能适合你:

(请记住,您实际上只需要覆盖系统默认设置的设置/etc/default/keyboard

XKBOPTIONS="ctrl:nocaps"     # CAPSLOCK => CTRL

XKBOPTIONS="caps:escape"     # CAPSLOCK => ESC

XKBOPTIONS="compose:caps"    # CAPSLOCK => Compose (my favorite!)

有 (许多!) 更多可用选项,请参阅手册页setupcon(1)文件内容:/usr/share/X11/xkb/rules/xorg.lst你的系统.k

相关内容