我不希望某个鼠标启用鼠标加速,但一般情况下会启用它。为此,我之前使用了一个简单的单行代码,但在我升级到 17.04 后,该代码已停止工作。
旧的单行:
xinput --set-prop 'USB OPTICAL MOUSE' 'Device Accel Profile' -1
这可以通过查看xinpuit --list-props 'USB OPTICAL MOUSE'
现在的列表来解释:
Device 'USB OPTICAL MOUSE':
Device Enabled (140): 1
Coordinate Transformation Matrix (142): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Accel Speed (278): 0.000000
libinput Accel Speed Default (279): 0.000000
libinput Accel Profiles Available (280): 1, 1
libinput Accel Profile Enabled (281): 1, 0
libinput Accel Profile Enabled Default (282): 1, 0
(etc.)
并xinput --set-prop 'USB OPTICAL MOUSE' 281 -1, 0
没有解决问题,所以我不知道并且想知道正确的命令可能是什么。
答案1
显然,底层代码的一些变化使得您需要更改以前的命令:xinput --set-prop 'USB OPTICAL MOUSE' 'libinput Accel Profile Enabled' 0, 1
答案2
@db429 对其他鼠标的简短回答。
编辑不要依赖 ID。每次重启时它们都会改变(包括 libinput 的 ID)。
(在这种情况下,G9 出现了两次;比较xinput list-props 9
并xinput list-props 10
表明这id=9
是正确的。)
首先,使用 获取设备 ID xinput list
。
~> xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Logitech G9 Laser Mouse id=9 [slave pointer (2)]
⎜ ↳ Logitech G9 Laser Mouse id=10 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=13 [slave pointer (2)]
⎜ ↳ TPPS/2 IBM TrackPoint id=14 [slave pointer (2)]
可以使用设备的 ID 或名称。在我的例子中,我必须使用 ID,因为名称出现了两次。ID9
具有以下属性:
~> xinput list-props 9
Device 'Logitech G9 Laser Mouse':
Device Enabled (140): 1
Coordinate Transformation Matrix (142): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Accel Speed (277): 0.000000
libinput Accel Speed Default (278): 0.000000
libinput Accel Profiles Available (279): 1, 1
libinput Accel Profile Enabled (280): 0, 1
(etc.)
要更改加速度曲线,ID280
也可以这样工作:
xinput set-prop 9 280 0, 1