TrackPoint (简体中文)

From ArchWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
翻译状态:本文是 TrackPoint翻译。上次翻译日期:2016-06-08。如果英文版本有所更改,则您可以帮助同步翻译。

Tango-view-fullscreen.pngThis article or section needs expansion.Tango-view-fullscreen.png

Reason: Many pages in Category:Lenovo contain more detailed configuration, which need to be merged here. See [1] for a comparable article (untranslated) (Discuss in ArchWiki:Requests#TrackPoint)

小红点(TrackPoint)是联想所有的键盘中间的指点杆的商标。xf86-input-evdevxf86-input-libinput 都支持它。evdev是 Xorg 的默认驱动。

在默认设置中,Xorg 支持点击和指点, 但是用中键做滚轮需要更多的配置。

GUI 配置

安装 gpointing-device-settingsAUR 软件包。

用中键作滚轮

使用 xf86-input-libinput 时,用中键作滚轮的功能默认启用。

使用 xf86-input-evdev 时,用中键作滚轮的功能由 xorg-xinput 软件包的 xinput 支持。例如:

~/.xinitrc
tpset() { xinput set-prop "TPPS/2 IBM TrackPoint" "$@"; }

tpset "Evdev Wheel Emulation" 1
tpset "Evdev Wheel Emulation Button" 2
tpset "Evdev Wheel Emulation Timeout" 200
tpset "Evdev Wheel Emulation Axes" 6 7 4 5
tpset "Device Accel Constant Deceleration" 0.95
注意:
  • 可以用 xinput --listhwinfo 列出设备名。
  • "Device Accel Constant Deceleration" 一行配置小红点的敏感度。

按压选择

小红点和很多触摸板一样支持按压选择功能。要手工打开此功能:

# echo -n 1 > /sys/devices/platform/i8042/serio1/press_to_select
注意: press_to_select 文件的位置可能会因为你使用的设备而有所不同。同时带有小红点和触摸板的系统会用 /sys/devices/platform/i8042/serio1/serio2/ 路径,而只有小红点的设备会用 /sys/devices/platform/i8042/serio1/ 路径。

udev规则

这条规则增大小红点的速度并在启动时打开按压选择功能(如上所述)。 随便改变这些数值并添加其他修改到 /sys/devices/platform/i8042/serio1/serio2/ 的文件中。这个规则也使用于只有小红点的设备。

/etc/udev/rules.d/10-trackpoint.rules
ACTION=="add", SUBSYSTEM=="input", ATTR{name}=="TPPS/2 IBM TrackPoint", ATTR{device/sensitivity}="240", ATTR{device/press_to_select}="1"

Xorg配置

要打开按下中键时用小红点作滚轮的功能,创建 /etc/X11/xorg.conf.d/20-thinkpad.conf,用xinput给的设备名字替换 TPPS/2 IBM TrackPoint:

Section "InputClass"
    Identifier	"Trackpoint Wheel Emulation"
    MatchProduct	"TPPS/2 IBM TrackPoint"
    MatchDevicePath	"/dev/input/event*"
    Option		"EmulateWheel"		"true"
    Option		"EmulateWheelButton"	"2"
    Option		"Emulate3Buttons"	"false"
    Option		"XAxisMapping"		"6 7"
    Option		"YAxisMapping"		"4 5"
EndSection

故障排除

小红点没被检测到或者在X分钟后被检测到

这看起来是个内核的bug: https://bugzilla.kernel.org/show_bug.cgi?id=33292

一个方案是往 psmouse 模块传入 proto=bare 参数。但是这会禁止触摸板的滚动功能和两指中键点击功能。

modprobe psmouse proto=bare

参考