我想在yocto中创建图像时禁用某些键。我知道,按照用户的步调,我们可以使用xmodmap实用程序来实现此目的,但我想实现此内核本身。
我检查了drivers/try/vt/defkeymap.map
文件并根据我的要求进行了修改,但是loadkeys无法生成defkeymap.c文件。它引发此错误:
/bin/sh: 1: loadkeys: not found
。
我朝着正确的方向前进吗?还是有其他选项可以更改默认键码映射?
答案 0 :(得分:0)
原始键盘数据是扫描代码,键盘驱动程序将其转换为键代码 cf https://unix.stackexchange.com/questions/319787/how-does-the-linux-kernel-handle-keyboards-inputs-outputs。 https://wiki.archlinux.org/index.php/Linux_console/Keyboard_configuration#Creating_a_custom_keymap中提供了一种为控制台生成自定义键盘布局的方法,因此您无需编辑驱动程序文件,loadkeys
需要更改特定目录/文件:
请注意,这样的个人键盘映射是 还有助于重新定义已由 默认键盘映射:加载有loadkeys时, 当它们与新键盘冲突时将替换默认键盘映射 指令,否则保守。这样,仅更改为 键映射必须在个人键映射中指定。
源:https://wiki.archlinux.org/index.php/Linux_console/Keyboard_configuration#Creating_a_custom_keymap
如果要在内核模块级别执行此操作,则必须重写或修补整个键盘模块。
https://unix.stackexchange.com/questions/319787/how-does-the-linux-kernel-handle-keyboards-inputs-outputs中包含所有级别的许多基本信息(到源代码的链接,...),包括在内核模块级别解决此问题(编写/修补内核模块)