我有一些在启动时加载的 Wacom 设置,但当我关闭显示器以使用其他输入然后返回时,它们会丢失。我一直在想办法在那时再次触发脚本。如果我能找到某种方法让这些设置永久生效,我会很高兴。谢谢!
xsetwacom --set "Wacom Intuos S 2 Pen stylus" Button 2 "pan"
xsetwacom --set "Wacom Intuos S 2 Pen stylus" "PanScrollThreshold" 30
xsetwacom --set "Wacom Intuos S 2 Pen stylus" Area 0 0 15200 6000
答案1
在尝试了所有解决方案一个半星期后,我终于通过 udev 规则解决了这个问题。我需要设置 DISPLAY 和 XAUTORITY,但最初我使用了错误的设置。出于某种原因,我还需要通过中间脚本调用该脚本。
/etc/udev/rules.d/99-wacom.rules
ACTION=="add" SUBSYSTEM=="usb", ENV{ID_VENDOR_ID}=="056a", ENV{ID_MODEL_ID}=="033b", RUN+="/usr/local/bin/wacomconfig.sh"
/usr/local/bin/wacomconfig.sh(设置为 chmod +x)
#!/bin/bash
/usr/local/bin/wacom.sh &
/usr/local/bin/wacom.sh(设置为 chmod +x)
#!/bin/bash
export XAUTHORITY=/run/user/501/gdm/Xauthority
export DISPLAY=:1
sleep 1
xsetwacom --set "Wacom Intuos S 2 Pen stylus" Button 2 "pan"
xsetwacom --set "Wacom Intuos S 2 Pen stylus" "PanScrollThreshold" 30
xsetwacom --set "Wacom Intuos S 2 Pen stylus" Area 0 0 15200 6000
我发现我的 DISPLAY 和 XAUTHORITY 正在使用这些:
ps -u $(id -u) -o pid= |
xargs -I{} cat /proc/{}/environ 2>/dev/null |
tr '\0' '\n' |
grep -m1 '^XAUTHORITY='
ps -u $(id -u) -o pid= |
xargs -I{} cat /proc/{}/environ 2>/dev/null |
tr '\0' '\n' |
grep -m1 '^DISPLAY='
并发现我的 ID_VENDOR_ID 和 ID_MODEL_ID 使用
lsusb