Ubuntu 17.10 可以libinput使用synaptics

Ubuntu 17.10 可以libinput使用synaptics

我正在使用 Xubuntu 17.10。

我正在尝试摆脱鼠标加速,并通过以下步骤实现了这一目标:

sudo nano /usr/share/X11/xorg.conf.d/50-mouse-acceleration.conf

并在此文件中粘贴以下内容:

Section "InputClass"
    Identifier "My Mouse"
    MatchIsPointer "yes"
    Option "AccelerationProfile" "-1"
    Option "AccelerationScheme" "none"
    Option "AccelSpeed" "-1"
EndSection

结果,鼠标加速被禁用。尽管设置中的鼠标灵敏度为 30,但速度非常慢。有谁知道如何停用鼠标加速的其他方法(而不会将鼠标速度降低到如此程度),或者如何将鼠标灵敏度提高到极限以上?(我尝试了一些适用于 Ubuntu 的方法,但似乎都没有用)

答案1

我用来xinput控制鼠标速度(我有一个 SteelSeries Rival 310 鼠标):

$ xinput
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ SteelSeries SteelSeries Rival 310 eSports Mouse   id=12   [slave  pointer  (2)]

注意id=12。现在发出此命令来列出您可以为鼠标操作的所有可能的属性:

$ xinput --list-props 12
Device 'SteelSeries SteelSeries Rival 310 eSports Mouse':
Device Enabled (152):   1
Coordinate Transformation Matrix (154): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Accel Speed (292): -0.700000
libinput Accel Speed Default (293): 0.000000
libinput Accel Profiles Available (294):    1, 1
libinput Accel Profile Enabled (295):   1, 0
libinput Accel Profile Enabled Default (296):   1, 0
libinput Natural Scrolling Enabled (288):   0
libinput Natural Scrolling Enabled Default (289):   0
libinput Send Events Modes Available (273): 1, 0
libinput Send Events Mode Enabled (274):    0, 0
libinput Send Events Mode Enabled Default (275):    0, 0
libinput Left Handed Enabled (297): 0
libinput Left Handed Enabled Default (298): 0
libinput Scroll Methods Available (299):    0, 0, 1
libinput Scroll Method Enabled (300):   0, 0, 0
libinput Scroll Method Enabled Default (301):   0, 0, 0
libinput Button Scrolling Button (302): 2
libinput Button Scrolling Button Default (303): 2
libinput Middle Emulation Enabled (304):    0
libinput Middle Emulation Enabled Default (305):    0
Device Node (276):  "/dev/input/event3"
Device Product ID (277):    4152, 5920
libinput Drag Lock Buttons (290):   <no items>
libinput Horizontal Scroll Enabled (291):   1

注意libinput Accel Speed (292): -0.700000。这是您要更改的属性。设置新值如下:

$ xinput --set-prop 12 "libinput Accel Speed" -0.7

尝试不同的值来找到最适合您的值。

答案2

ArchLinux 说明您可以尝试另一种控制加速度的方法。

注释掉文件中的以下三行:

# Option "AccelerationProfile" "-1"
# Option "AccelerationScheme" "none"
# Option "AccelSpeed" "-1"

并在其下方插入以下几行:

# set the following to 1 1 0 respectively to disable acceleration.
Option "AccelerationNumerator" "2"
Option "AccelerationDenominator" "1"
Option "AccelerationThreshold" "4"

首先尝试此操作,然后将数字一直减少到1,,如果需要10可以完全禁用加速。

上面链接的 ArchLinux 说明包含以下链接Xorg 文档详细说明。如果您无法获得满意的结果,请参阅这些说明。一个关键点是,decelerationacceleration单靠自己无法完成工作时,您可以集中精力。


Ubuntu 17.10 可以libinput使用synaptics

您可以使用不同的驱动程序;libinput这会改变旧的synaptics做事方式。您必须小心进行适当的更改。此问答提供了使用以下方式控制鼠标的不同方法libinputUbuntu 17.10 上的触摸板自适应加速


Logitech Performance MX 鼠标默认配置

在我的Ubuntu 16.04鼠标没有特殊的覆盖并且开箱即用:

$ xinput --list-props 10
Device 'Logitech Performance MX':
    Device Enabled (159):   1
    Coordinate Transformation Matrix (161): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    Device Accel Profile (288): 0
    Device Accel Constant Deceleration (289):   1.000000
    Device Accel Adaptive Deceleration (290):   1.000000
    Device Accel Velocity Scaling (291):    10.000000
    Device Product ID (277):    1133, 4122
    Device Node (278):  "/dev/input/event7"
    Evdev Axis Inversion (292): 0, 0
    Evdev Axes Swap (294):  0
    Axis Labels (295):  "Rel X" (169), "Rel Y" (170), "Rel Horiz Wheel" (286), "Rel Vert Wheel" (287)
    Button Labels (296):    "Button Left" (162), "Button Middle" (163), "Button Right" (164), "Button Wheel Up" (165), "Button Wheel Down" (166), "Button Horiz Wheel Left" (167), "Button Horiz Wheel Right" (168), "Button Side" (281), "Button Extra" (282), "Button Forward" (283), "Button Back" (284), "Button Task" (285), "Button Unknown" (280), "Button Unknown" (280), "Button Unknown" (280), "Button Unknown" (280), "Button Unknown" (280), "Button Unknown" (280), "Button Unknown" (280), "Button Unknown" (280), "Button Unknown" (280), "Button Unknown" (280), "Button Unknown" (280), "Button Unknown" (280)
    Evdev Scrolling Distance (297): 1, 1, 1
    Evdev Middle Button Emulation (298):    0
    Evdev Middle Button Timeout (299):  50
    Evdev Third Button Emulation (300): 0
    Evdev Third Button Emulation Timeout (301): 1000
    Evdev Third Button Emulation Button (302):  3
    Evdev Third Button Emulation Threshold (303):   20
    Evdev Wheel Emulation (304):    0
    Evdev Wheel Emulation Axes (305):   0, 0, 4, 5
    Evdev Wheel Emulation Inertia (306):    10
    Evdev Wheel Emulation Timeout (307):    200
    Evdev Wheel Emulation Button (308): 4
    Evdev Drag Lock Buttons (309):  0

我使用常规的 Ubuntu 16.04 设置菜单来设置鼠标灵敏度:

鼠标和触摸板设置.png

配置文件都是默认的:

$ ll /usr/share/X11/xorg.conf.d/
total 44
drwxr-xr-x 2 root root 4096 Mar  4 09:22 ./
drwxr-xr-x 5 root root 4096 Mar  4 09:21 ../
-rw-r--r-- 1 root root   92 Feb 15  2017 10-amdgpu.conf
-rw-r--r-- 1 root root 1099 Mar  3  2016 10-evdev.conf
-rw-r--r-- 1 root root 1350 Oct 13 07:59 10-quirks.conf
-rw-r--r-- 1 root root  590 Mar  3  2016 11-evdev-quirks.conf
-rw-r--r-- 1 root root  364 Mar  3  2016 11-evdev-trackpoint.conf
-rw-r--r-- 1 root root 1751 Mar  3  2016 50-synaptics.conf
-rw-r--r-- 1 root root  115 Mar  3  2016 50-vmmouse.conf
-rw-r--r-- 1 root root 1385 Mar  3  2016 50-wacom.conf
-rw-r--r-- 1 root root  590 Mar  3  2016 51-synaptics-quirks.conf

答案3

我已经发布了这个答案别处,但我认为它同样适用于这种情况。

xinput --list-props 11使用(列出鼠标/触摸板的所有属性我的触摸板 ID 是 11,你的会有所不同) 并查看该属性的 ID Device Accel Constant Deceleration

现在输入命令xinput --set-prop 11 268 0.3我的触摸板减速属性 ID 是 268,你的会有所不同)来降低鼠标/触摸板的减速。

由于每次登录时输入这两个命令非常繁琐,因此将这两个命令放在文件的末尾,/home/{your user name}/.bashrc以便每次登录时自动执行这两个命令。

不过,这个解决方案有一个小错误。随着时间的推移,您会注意到您的鼠标/触摸板 ID 经常会在几个值之间切换。您可能也看到了这一点。解决方法是将命令与所有这些值放在一起。例如,昨天我的触摸板 ID 是 11,但今天我运行后,发现我的触摸板 ID 已更改为 13。因此,我现在将输入两个命令,xinput --list而不是只有一个命令:xinput --set prop 11 268 0.3

xinput --set-prop 11 268 0.3
xinput --set-prop 13 268 0.3

在文件末尾~/.bashrc

现在,无论何时登录,您都会看到终端上写着一些奇怪的内容,例如property '268' doesn't exist, you need to specify its type and format。这是因为在文件中放入的这两个命令中~/.bashrc,有一个命令没有属性 268,因此出现了这个 stderr(标准错误)消息。如果您对这个愚蠢的错误不介意,您可以忽略它,否则请clear在文件中这两个命令下面放置一个命令~/.bashrc。现在,每次执行这两个命令后,终端也会被清除。

答案4

在 Ubuntu 22.04 LTS 上,我使用的命令如下:

对于我的用户:

gsettings set org.gnome.desktop.peripherals.mouse accel-profile flat

对于登录屏幕:

sudo apt-get install dbus-x11
sudo -u gdm dbus-launch --exit-with-session gsettings set org.gnome.desktop.peripherals.mouse accel-profile flat

随后您可以删除 dbus-x11。

相关内容