我有一台 Genius 平板电脑,当我将其连接到 USB 时,我需要重新映射上面的一些按钮。重新映射通过以下命令完成:
xinput set-button-map 'Genius EasyPen M610X' 0 0 0 0 0 0 0 1 3 2
我正在使用 udev 调用如下脚本:
#!/bin/bash
sleep 10
/usr/bin/xinput set-button-map 'Genius EasyPen M610X' 0 0 0 0 0 0 0 1 3 2
脚本运行良好,设备插入时 udev 也会调用脚本,但是 xinput 行不会执行。Dmesg 和 syslog 没有显示任何错误,使用 udevadm 测试设备时也没有任何错误。有什么想法吗?谢谢。
答案1
最有可能的问题是调用脚本时DISPLAY
未设置环境变量。此变量告诉 X 程序它们应该连接到哪个显示器。尝试在调用之前添加以下内容xinput
。
export DISPLAY=:0
例如:
% export DISPLAY=:0
% xinput ...