使用具有特定键盘布局的Evdev将Keycode解析为Scancode

2024-05-19 11:31:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用以下代码打印当前插入的键盘的键码和扫描码:

import evdev

device = evdev.InputDevice('/dev/input/event8') 

for event in device.read_loop():
  if event.type == evdev.ecodes.EV_KEY:
    print((evdev.categorize(event).keycode))
    print((evdev.categorize(event).scancode))

目前我有一个德国键盘布局,因为我想要的东西比我们。当我按“#”时,我得到以下输出:
键\u反斜杠
43
显然,这是错误的。在美国键盘上,这是正确的。你知道吗

因此,我的问题是:如何在不调用shell的情况下将正确的keycode/scancode发送到按下的键?你知道吗


Tags: 代码devimporteventinputdevice键盘print

热门问题