当使用触控笔(例如 Xournal)书写时,多点触控功能非常烦人:当我将写字的手放在显示屏上时,它会产生随机的线条和图形。
所以我想(暂时)完全停用(多点)触控,以便只接受触控笔进行输入。
有没有什么命令可以做到这一点?
答案1
您可以通过编写一个小脚本来切换多点触摸输入设备的“设备已启用”属性来实现此目的。然后,您可以将此脚本绑定到其中一个键以方便访问,或者使用您喜欢的任何其他方法执行它。
首先,您需要使用xinput
实用程序获取设备名称。打开终端并输入xinput list
。
:~$ xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Wacom ISDv4 E6 Pen stylus id=10 [slave pointer (2)]
⎜ ↳ Wacom ISDv4 E6 Finger touch id=11 [slave pointer (2)]
⎜ ↳ TPPS/2 IBM TrackPoint id=14 [slave pointer (2)]
⎜ ↳ Wacom ISDv4 E6 Pen eraser id=16 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=13 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Sleep Button id=8 [slave keyboard (3)]
↳ Integrated Camera id=9 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=12 [slave keyboard (3)]
↳ ThinkPad Extra Buttons id=15 [slave keyboard (3)]
正如您在本例中看到的,多点触控设备的名称是Wacom ISDv4 E6 手指触控其 ID 为 11。您的 ID 可能不同。您也可以使用 ID,但我更喜欢使用名称,因为添加/删除设备可能会导致某些设备的 ID 发生变化。这里有一个示例脚本可以帮助您入门。它所做的就是在两个命令之间切换——一个命令用于启用多点触控设备,另一个命令用于禁用它。
#!/bin/bash
#!/bin/sh
# This script can be used to toggle enable state of wacom multitouch screen for
# Thinkpad Tablet Series. You may need to change the name of multitouch device
# which can be found by running *xinput list* command
TOGGLE=$HOME/.multitouch_toggle
if [ ! -e $TOGGLE ]; then
touch $TOGGLE
xinput set-prop 'Wacom ISDv4 E6 Finger touch' 'Device Enabled' 0
else
rm $TOGGLE
xinput set-prop 'Wacom ISDv4 E6 Finger touch' 'Device Enabled' 1
fi
我希望这能帮助您暂时解决这个问题。如果您在自定义或运行上述脚本时需要任何帮助,请随时询问。