Python 无法从/dev/input/event获取Wacom事件*
我已经创建了一个pygtk程序来监控任何应用程序(即,不仅仅是我的应用程序)的键盘状态和鼠标点击。这使用Micah Dowty的evdev,它基本上监视/dev/input/event*的输出,并以一种我可以向用户显示信息的方式对信息进行解码 该程序适用于USB键盘和鼠标,但不适用于USB Wacom(或串行Wacom),即使以root用户身份运行。在使用Wacom时,我不会从Wacom的任何/dev/input/*节点中获取任何事件。这不仅仅是我的Wacom,而且播客“遇见Gimp”(Rolf和Philippe)中的人也没有得到任何东西 代码位于 要进行测试,可以运行以下操作:Python 无法从/dev/input/event获取Wacom事件*,python,linux,pygtk,wacom,Python,Linux,Pygtk,Wacom,我已经创建了一个pygtk程序来监控任何应用程序(即,不仅仅是我的应用程序)的键盘状态和鼠标点击。这使用Micah Dowty的evdev,它基本上监视/dev/input/event*的输出,并以一种我可以向用户显示信息的方式对信息进行解码 该程序适用于USB键盘和鼠标,但不适用于USB Wacom(或串行Wacom),即使以root用户身份运行。在使用Wacom时,我不会从Wacom的任何/dev/input/*节点中获取任何事件。这不仅仅是我的Wacom,而且播客“遇见Gimp”(Rolf
sudo ./evdev.py /dev/input/event0
例如,当您移动鼠标或单击键盘时,您应该会看到任何连接到event0的事件出现。这是由于X完全控制了您的输入设备,您自己无法读取事件。您可能有以下两个问题之一:
/usr/share/X11/xorg.conf.d/10 evdev.conf
禁用“触摸屏”catchall,并删除谈论触摸屏的部分/usr/share/X11/xorg.conf.d/50 Wacom.conf
,并删除与您的设备匹配的适当部分当然,这两个问题都没有以干净的方式得到解决,并且不能让X和内核事件同时工作。(我从未找到Wacom的解决方案,如果有人找到了,请分享!)可能是最初的evdev代码不是用来捕获Wacom设备的吗?它们不是也直接在/Dev/oder/Dev/wacom/下注册自己的节点吗?(对不起,没有Linux操作系统可以检查)不,它应该像Scott尝试的那样工作。
wacdump
工作吗?有可能是由于Wacom,X驱动程序正在抓取输入设备以供专用(使用EVIOCGRAB
ioctl)。我也怀疑这一点。当我自己尝试EVIOCGRAB时,它失败了。因为这个程序通常用于一个程序(例如Gimp或Inkscape)的屏幕广播。是否有可能从我的键盘监视器程序中运行该程序,并通过pyGTK以某种方式获取事件?