Evg*_*sky 8 debian thinkpad xinput
我正在进行 debian 测试,并且在重新启动后(在 3 周左右的正常运行时间后,其中包括一堆软件包更新,我相信包括内核)前几天,微调 - 高尔夫球手会称之为推杆 -鼠标指针位置变得非常困难,感觉指针仍在移动,尽管轨迹点已经回到其中心位置。使用轨迹点不再有趣,只需几秒钟即可选择一堆单词。
我不认为这只是一个轨迹点性能配置设置。它可能是某个阈值或某个聪明算法的停用(或一个想要的聪明算法的激活)来增强跟踪点的可用性。
这是一个 IBM/Lenovo 外置 USB 键盘(它不是 ThinkPad 笔记本电脑,尽管我将这个问题标记为“thinkpad”,因为还没有“trackpoint”标签,而且我目前的声誉不允许创建标签)。
我的 xinput 版本:
$ xinput --version
xinput version 1.6.0
XI version on server: 2.2
Run Code Online (Sandbox Code Playgroud)
这里是设备的道具:
$ xinput list-props 10
Device 'Synaptics Inc. Composite TouchPad / TrackPoint':
Device Enabled (125): 0
Coordinate Transformation Matrix (127): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (247): 1
Device Accel Constant Deceleration (248): 2.500000
Device Accel Adaptive Deceleration (249): 1.000000
Device Accel Velocity Scaling (250): 12.500000
Synaptics Edges (251): 1632, 5312, 1572, 4284
Synaptics Finger (252): 25, 30, 256
Synaptics Tap Time (253): 180
Synaptics Tap Move (254): 221
Synaptics Tap Durations (255): 180, 180, 100
Synaptics ClickPad (256): 0
Synaptics Tap FastTap (257): 0
Synaptics Middle Button Timeout (258): 75
Synaptics Two-Finger Pressure (259): 282
Synaptics Two-Finger Width (260): 7
Synaptics Scrolling Distance (261): 100, 100
Synaptics Edge Scrolling (262): 1, 0, 0
Synaptics Two-Finger Scrolling (263): 0, 0
Synaptics Move Speed (264): 1.000000, 1.750000, 0.039809, 40.000000
Synaptics Edge Motion Pressure (265): 30, 160
Synaptics Edge Motion Speed (266): 1, 401
Synaptics Edge Motion Always (267): 0
Synaptics Off (268): 0
Synaptics Locked Drags (269): 0
Synaptics Locked Drags Timeout (270): 5000
Synaptics Tap Action (271): 0, 0, 0, 0, 0, 0, 0
Synaptics Click Action (272): 1, 1, 1
Synaptics Circular Scrolling (273): 0
Synaptics Circular Scrolling Distance (274): 0.100000
Synaptics Circular Scrolling Trigger (275): 0
Synaptics Circular Pad (276): 0
Synaptics Palm Detection (277): 0
Synaptics Palm Dimensions (278): 10, 200
Synaptics Coasting Speed (279): 20.000000, 50.000000
Synaptics Pressure Motion (280): 30, 160
Synaptics Pressure Motion Factor (281): 1.000000, 1.000000
Synaptics Grab Event Device (282): 1
Synaptics Gestures (283): 1
Synaptics Capabilities (284): 1, 1, 1, 1, 1, 1, 1
Synaptics Pad Resolution (285): 1, 1
Synaptics Area (286): 0, 0, 0, 0
Synaptics Noise Cancellation (287): 25, 25
Device Product ID (242): 1739, 9
Device Node (243): "/dev/input/event6"
Run Code Online (Sandbox Code Playgroud)
更新我忘了有 2 个可能相关的设备,这个实际上看起来比突触设备更相关:
$ xinput list-props 11
Device 'TPPS/2 IBM TrackPoint':
Device Enabled (135): 1
Coordinate Transformation Matrix (137): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (260): 0
Device Accel Constant Deceleration (261): 1.000000
Device Accel Adaptive Deceleration (262): 1.000000
Device Accel Velocity Scaling (263): 10.000000
Device Product ID (255): 2, 10
Device Node (256): "/dev/input/event9"
Evdev Axis Inversion (302): 0, 0
Evdev Axes Swap (304): 0
Axis Labels (305): "Rel X" (145), "Rel Y" (146)
Button Labels (306): "Button Left" (138), "Button Middle" (139), "Button Right" (140), "Button Wheel Up" (141), "Button Wheel Down" (142)
Evdev Middle Button Emulation (307): 0
Evdev Middle Button Timeout (308): 50
Evdev Third Button Emulation (309): 0
Evdev Third Button Emulation Timeout (310): 1000
Evdev Third Button Emulation Button (311): 3
Evdev Third Button Emulation Threshold (312): 20
Evdev Wheel Emulation (313): 0
Evdev Wheel Emulation Axes (314): 0, 0, 4, 5
Evdev Wheel Emulation Inertia (315): 10
Evdev Wheel Emulation Timeout (316): 200
Evdev Wheel Emulation Button (317): 4
Evdev Drag Lock Buttons (318): 0
Run Code Online (Sandbox Code Playgroud)
知道要转动什么旋钮吗?
更新我将上述属性与另一台同样运行 debian 测试的机器(TrackPoint 工作正常的联想笔记本电脑)的属性进行了比较,它们完全相同。xinput 的版本也是一样的。所以我想我们可以从我们的考虑中排除 xinput 版本以及这些设备的 xinput 设置。我会尝试使用另一个 IBM USB 键盘并检查它是否 - 毕竟 - 硬件问题......
[以下是Barry Grumbine(谢谢,伙计)对这个问题所做的编辑,但被https://unix.stackexchange.com/users/2180/shawn-j-goff(不,谢谢,伙计)拒绝了。因为我觉得它非常有用,而且 Shawn 的拒绝对我(直到现在)和其他人隐藏了这一点信息,所以我将其粘贴在这里:]
附加信息
有一个开放的 Debian 错误报告,我相信它描述了这个问题#682413该问题似乎与synaptics_usb内核模块有关。根据synaptics_usb.c,第 30 行:
[...] 触摸杆支持尚未经过过多测试[...]
小智 4
我遇到了完全相同的问题,但我想我终于找到了解决方案。
xinput --set-prop 11 'Device Accel Constant Deceleration' 3
Run Code Online (Sandbox Code Playgroud)
允许触摸杆/指点杆在近距离(即尝试选择文本时)保持稳定。向上或向下更改“3”,直到得到您喜欢的值,我尝试了 2、3 和 4,最后选择了“3”。然后一起玩,
xset m 5 1
Run Code Online (Sandbox Code Playgroud)
来调整加速度。“5”是加速乘数,“1”是在加速开始之前移动光标所需的像素数,“5”让我可以很好地在屏幕上快速移动。
最后要做的是将这些设置合并到我的 .xinitrc 中:
xinput --set-prop 11 'Device Accel Constant Deceleration' 3 &
xset m 5 1 &
exec ck-launch-session startxfce4
Run Code Online (Sandbox Code Playgroud)
我在ArchWiki上找到了所有这些信息。
最后说明:我认为这个问题的出现是因为最近添加的synaptics_usb内核模块没有合理的轨迹点默认值,因此问题是由新的内核模块“暴露”的,但不是 synaptics_usb 本身的问题。
[编辑:] 更多信息 我的 .xinitrc 无法在 Debian 测试/LightDM/XFCE 上运行,不知道为什么。决定对 xorg.conf 进行调整。
创建了配置文件:
$ cat /usr/share/X11/xorg.conf.d/50-synaptics_trackpoint.conf
Section "InputClass"
Identifier "Synaptics TrackPoint"
MatchProduct "Stick"
# set the following to 1 1 0 respectively to disable acceleration.
Option "AccelerationNumerator" "5"
Option "AccelerationDenominator" "1"
Option "AccelerationThreshold" "1"
# linear deceleration (mouse speed reduction)
Option "ConstantDeceleration" "2"
# some curved deceleration
Option "AdaptiveDeceleration" "1"
EndSection
Run Code Online (Sandbox Code Playgroud)
重启了,还是没有骰子。我发现 XFCE 覆盖了 Xorg 配置,所以我删除了它:
$ rm ~/.config/xfce4/xfconf/xfce-perchannel-xml/pointers.xml
Run Code Online (Sandbox Code Playgroud)
再次重新启动,按预期工作。
我的一些故障排除笔记:
# Get the current acceleration values.
xinput --get-feedbacks 11
# Get the current deceleration values.
xinput --list-props 11 | grep Deceleration
# What does Xorg know about this?
grep -i stick /var/log/Xorg.0.log
# Set acceleration.
xinput --set-ptr-feedback 11 1 5 1
# Set deceleration.
xinput --set-prop 11 'Device Accel Constant Deceleration' 2
Run Code Online (Sandbox Code Playgroud)
更多参考
Xorg PointerAcceleration Wiki xorg.conf 手册页
归档时间: |
|
查看次数: |
3920 次 |
最近记录: |