有时暂停-恢复会中断 XPS 15 上触控板的使用。我编写了一个快速 shell 脚本来再次修复它:
sudo rmmod psmouse
sudo modprobe psmouse
synclient TapButton3=2
synclient FingerHigh=40
synclient FingerLow=35
synclient HorizTwoFingerScroll=0
虽然它使触摸板再次工作,但它不会进行 synclient 调整以使中间按钮成为三指点击,也不会调整点击压力,使其在点击时不会移动。(我在“启动应用程序”中的命令中输入了这 4 个,用 ; 将它们分开,这样确实有效)
为什么 synclient 无法通过 shell 脚本运行,但之后立即运行这些命令却可以运行?
答案1
脚本是否在 X 服务器中运行?如果不是,则需要设置DISPLAY
变量
硬件是否仍在初始化?您可以尝试在后面添加一个 sleepmodprobe
以确保它在运行其余命令之前完全正常工作。(情况可能并非如此,因为内核应该在将设备交还给用户空间之前完全初始化设备)
命令是否modprobe
有效?尝试添加--first-time
以便报告是否已加载,也可以尝试替换rmmod
(modprobe -r
对于您的使用rmmod
应该有效,但这modprobe -r
是推荐的工具)
抱歉,这些大多是问题,但我没有足够的荣誉来添加评论
答案2
您可能希望每次“插入触摸板”时都运行脚本 - 包括从挂起状态恢复。为此,您应该从org.gnome.settings-daemon.peripherals.input-devices.hotplug-command
配置键指向您的脚本。dconf-editor
例如,您可以通过以下方式执行此操作,或者从 shell 运行以下命令(一次)(将双引号内的文本替换为正确的路径):
dconf write /org/gnome/settings-daemon/peripherals/input-devices/hotplug-command "/absolute/path/to/your/script"