xinput:如何正确设置整数值?

xinput:如何正确设置整数值?

我希望更新Synaptics Pad Resolution我的 Apple Magic Trackpad。

xinput list-props "Apple Wireless Trackpad"得到:

...
Synaptics Pad Resolution (642): 45, 46
...

如果我尝试改变它或者甚至再次设置相同的值,我会得到:

xinput set-prop "Apple Wireless Trackpad" "Synaptics Pad Resolution" 45 46
X Error of failed request:  BadValue (integer parameter out of range for operation)                                                 
  Major opcode of failed request:  142 (XInputExtension)
  Minor opcode of failed request:  57 ()
  Value in failed request:  0x282
  Serial number of failed request:  20
  Current serial number in output stream:  21

我应该如何在触摸板上设置这些整数参数?

答案1

事实证明,这个 xinput 调用没有任何问题 - 错误消息只是具有误导性。

Synaptics Pad Resolution已设为只读https://bugs.freedesktop.org/show_bug.cgi?id=18351#c33并尝试立即设置它并返回BadValue(其含义integer parameter out of range显然具有误导性property is readonly)。

另请参阅评论#23https://bugs.launchpad.net/xorg-driver-synaptics/+bug/726832

A补丁已提交在2013年初。

答案2

如果您使用逗号而不是空格来分隔参数,也会出现错误BadValue (integer parameter out of range for operation)。您经常会在互联网上看到 xinput 帮助线程建议使用逗号作为参数分隔符,因为旧版本的 xinput 接受逗号作为参数分隔符,但现在不再接受。

举例来说,不是这样的:

xinput set-prop 10 154 3,0,0,0,3,0,0,0,1

我必须运行这个:

xinput set-prop 10 154 3 0 0 0 3 0 0 0 1

相关内容