在 Linux 的最新版本中获取键盘扫描码

在 Linux 的最新版本中获取键盘扫描码

我正在尝试找出一组脚踏板的扫描码,以便我可以将它们重新绑定到更有用的按键。在旧版本的 Ubuntu 中,我能够使用/lib/udev/keymap讨论过的方法执行此操作这里,但该程序似乎不再存在!幸运的是,我仍然知道我的特定硬件的扫描码是什么,所以我仍然可以让一切正常工作,但我想写一篇关于如何设置脚踏板的文章。

arch-linux 维基建议使用showkey --scancodes,但这似乎给了我错误的数字(通过与我目前在文件中使用的已知、有效的扫描码进行比较/etc/udev/hwdb.d/90-custom-keyboard.hwdb):

                           hex        decimal
scancode used in config   0x70004      458756
showkey -s output         0x5d             91
xev keycode                               191

因为它与 X 键码相似,所以我猜测 X11 在某处产生了干扰。

还有其他方法可以找到扫描码吗?最好是不使用虚拟控制台的方法。

答案1

sudo evtest

应该会为您提供一个可以获取扫描代码的设备列表。其中一个应该有脚踏板的名称,因此请输入您可以在其旁边看到的事件编号。然后,一旦您使用踏板,您就会在屏幕上看到扫描代码(在“(MSC_SCAN), value”之后)。例如,这里:

Testing ... (interrupt to exit)
Event: time 1413649733.746534, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70005
Event: time 1413649733.746534, type 1 (EV_KEY), code 48 (KEY_B), value 1

是“70005”。

相关内容