我最近从运行 Unity 的 Ubuntu 16.04 更新到运行 GNOME 的 17.10。升级后,我就很想念触摸板上的自适应加速功能。我非常喜欢它,因为它在较短距离上更准确。
经过一番挖掘,我发现 17.10 使用 GNOME 而libinput
不是synaptics
,但默认libinput
使用触摸板加速配置文件(flat
https://wayland.freedesktop.org/libinput/doc/1.4.3/pointer-acceleration.html#ptraccel-touchpad)。
我也尝试xserver-xorg-input-synaptics
在 17.10 上安装。效果很好,只是从命令行启用“自然滚动”太麻烦了(https://askubuntu.com/a/206006)。另一个问题是,GNOME 不显示synaptics
已安装的触摸板设置 (https://unix.stackexchange.com/a/292920)。
我也尝试gnome-tweak-tool
在侧边栏的“键盘和鼠标”子菜单下进行操作,但它有一个选项只能为鼠标选择“加速度配置文件”,而不能为触摸板选择(参见屏幕截图gnome-tweak-tool 中的鼠标加速配置文件是什么?)。
有没有一种方法可以启用触摸板自适应加速,同时libinput
又不产生上述任何副作用?
答案1
答案2
为此,请尝试speed
从架构中编辑密钥org.gnome.desktop.peripherals.touchpad
。密钥的描述如下:
Pointer speed for the touchpad. Accepted values are in the [-1..1] range (from "unaccelerated" to "fast"). A value of 0 is the system default.
这强烈表明 gnome 键与触摸板加速有关。通过命令行使用 dconf 编辑器或 gsettings,看看修改此键是否有任何效果。
答案3
编辑:抱歉,这只适用于使用 Xorg,而不是 Wayland。Arch Linux 的维基:
对于 Wayland,没有 libinput 配置文件。可配置选项取决于您的桌面环境对它们的支持进度;请参阅 #Graphical tools。
对于 Xorg,包装器的默认配置文件安装到 /usr/share/X11/xorg.conf.d/40-libinput.conf。无需额外配置即可自动检测键盘、触摸板、轨迹球和支持的触摸屏。
对于 Xorg:
根据其手册页 libinput
还支持自适应加速:
您应该能够将其作为选项添加到 xorg.conf 中,例如/usr/share/X11/xorg.conf.d/40-libinput.conf
:
Option "AccelProfile" "adaptive"
答案4
我的解决方案是在用户主文件夹中的 .xinputrc 中添加一个小脚本
DEVICE=$(xinput list-props "SynPS/2 Synaptics TouchPad"|awk '/libinput\ Accel\ Speed\ \(/ {print $4}'|tr -d [:punct:])
xinput set-prop "SynPS/2 Synaptics TouchPad" $DEVICE 1.0
其中最后一个参数(1.0)是从 0.0 到 1.0 的十进制值。
0.0 -> no accel
1.0 -> max available accel
顺便说一下,这也适用于 20.04