如何在内核中禁用/重新映射键盘键?

如何在内核中禁用/重新映射键盘键?

我想将 Caps Lock 键重新映射到无任何内容或者我选择的键代码。

为了在不同的环境中(X / Wayland / 非图形 TTY)获得相同的行为,并学习如何做这样的事情,在内核级别执行此操作非常重要(因此xmodmap/xkb解决方案对我没有帮助)。

我该怎么做呢?

此外,内核模块是否足够还是需要直接更改代码?

谢谢任何提示!

答案1

内核模块和内核 hack 都不是必需的。

使用setkeycodes您可以更改正在运行的内核的扫描码到键码的转换映射,当然需要 root 权限。

要映射 Caps Lock(扫描码 0x3a)以表示字母 x 的键(键码 45),您可以使用setkeycodes 3a 45以下示例。

使用showkey -sshowkey应该能够找到所需的扫描码和密钥码。

确保从控制台而不是终端发出给定的命令。

相关内容