配置 Thinkpad 的 TrackPoint 的最佳方法是什么?

配置 Thinkpad 的 TrackPoint 的最佳方法是什么?

以前有用的ThinkWiki 页面看起来相当过时。我正尝试永久更改 TrackPoint 灵敏度和速度设置并启用鼠标中键滚动。我以前尝试过 configure-trackpoint,但设置没有永久保存(重启后会丢失)。

我试过了gpointing-device-settings。使用它,我可以让鼠标中键滚动工作,但我无法更改指点杆的速度或灵敏度设置。我尝试过的 ThinkWiki 页面上的所有方法在 Ubuntu 11.04 中都无法按指示工作。有人能解释如何永久编辑指点杆设置,以便我可以正确使用它吗?

答案1

不幸的是,似乎没有简单的方法。我将描述如何创建一个新的 Upstart 作业,以通过 /sys 下的虚拟文件系统在启动时设置值。

  1. 找到你的指点杆的设备路径

    在 gnome-terminal 中运行以下命令(按Alt+ F2,输入gnome-terminal,然后点击Enter):

    find /sys/devices/platform/i8042 -name name | xargs grep -Fl TrackPoint | sed 's/\/input\/input[0-9]*\/name$//'
    

    就我而言,这将返回/sys/devices/platform/i8042/serio1/serio2- 按照以下步骤更改为它为您返回的任何内容。

  2. 查找灵敏度和速度的值

    在 gnome-terminal 中运行以下命令:

    echo 220 | sudo tee /sys/devices/platform/i8042/serio1/serio2/sensitivity
    

    敏感度为 220(这将要求您输入密码),并且

    echo 100 | sudo tee /sys/devices/platform/i8042/serio1/serio2/speed
    

    速度为 100。找到您满意的值后,使用 Upstart 作业使更改永久生效:

  3. 创建新的 udev 规则

    现在我们需要在系统启动时应用设置。因此,按Alt+ F2,输入gksu gedit /etc/udev/rules.d/trackpoint.rules,然后点击Enter(这将要求您输入密码)。然后粘贴以下内容:

    SUBSYSTEM=="serio", DRIVERS=="psmouse", WAIT_FOR="/sys/devices/platform/i8042/serio1/serio2/sensitivity", ATTR{sensitivity}="220", ATTR{speed}="110"
    

    (更新)正如WAIT_FOR已弃用的,在较新的系统上,您可以改用DEVPATH

    SUBSYSTEM=="serio", DRIVERS=="psmouse", DEVPATH=="/sys/devices/platform/i8042/serio1/serio2", ATTR{sensitivity}="220", ATTR{speed}="110"     
    

    保存文件并重新启动或运行上述命令:

    sudo udevadm control --reload-rules
    sudo udevadm trigger 
    

答案2

下面说明了如何使 Trackpoint 更加灵敏:

  1. 在终端中启动:

    $ xinput --list --short
    

    你会看到类似这样的内容:

    omicron@omicron:~$ xinput --list --short
    ⎡ Virtual core pointer                      id=2    [master pointer  (3)]
    ⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
    ⎜   ↳ Lite-On Technology Corp. ThinkPad USB Keyboard with TrackPoint    id=10.  [slave  pointer  (2)]
    ⎜   ↳ ImPS/2 Generic Wheel Mouse                id=12   [slave  pointer  (2)]
    ⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
        ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
        ↳ Power Button                              id=6    [slave  keyboard (3)]
        ↳ Video Bus                                 id=7    [slave  keyboard (3)]
        ↳ Power Button                              id=8    [slave  keyboard (3)]
        ↳ Lite-On Technology Corp. ThinkPad USB Keyboard with TrackPoint    id=9    [slave  keyboard (3)]
        ↳ Eee PC WMI hotkeys                        id=11   [slave  keyboard (3)]
    
  2. 找到您的 Trackpoint 设备。在我的例子中,它的 id=10。

  3. 查找您的设备可用的属性列表:

    $ xinput --list-props "10"
    
  4. 要改变速度,请执行以下操作:

    $ xinput --set-prop "10" "libinput Accel Speed" 0.5
    

    这里的“10”是设备 ID(Lite-On Technology Corp. ThinkPad USB Keyboard with TrackPoint id=10),因此请在此处输入您的 ID,“0.5”是灵敏度级别。您可以通过输入 0 到 1 之间的数字来试验灵敏度。数字越大,速度越快。

    我使用 0.4 或 0.45

  5. 重要提示:选择速度后,将命令复制到自动启动:

    启动应用程序

如果设置在某个时候停止工作,请再次检查 ID 或设备属性。您的设备表可能会发生一些变化,并且 ID 可能会发生变化。

答案3

对于我的 Thinkpad T530 和 Ubuntu 15.10。只需使用:

sudo -i gedit /etc/udev/rules.d/10-trackpoint.rules

然后添加下面的内容,然后重启,设置值会保留。

ACTION=="add",
SUBSYSTEM=="input",
ATTR{name}=="TPPS/2 IBM TrackPoint",
ATTR{device/sensitivity}="190",
ATTR{device/speed}="180",
ATTR{device/inertia}="6",
ATTR{device/press_to_select}="0"

答案4

@vitaly-dubyna 给出了正确的答案。在 Debian 上,他的方法完美无缺。为了让您的生活更轻松,请.xsessionrc在您的主目录中放置一个包含所有设置的文件,以便每次重启后都会加载它。

创建新文件使用vim,,pico--gedit

vim .xsessionrc 

然后把它粘在里面

xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation" 1
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Button" 2
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Timeout" 200
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Axes" 7 6 4 5
xinput set-prop "TPPS/2 IBM TrackPoint" "Device Accel Constant Deceleration" 0.4

其中前四行用于设置带有轨迹点的垂直和水平滚动,最后一行用于控制速度和灵敏度。

请注意,由于设备 ID 可能会根据 BIOS 中某些输入设备的启用/禁用情况而发生变化,因此最好使用引号中的设备名称。对于大多数 ThinkPad 来说,这TPPS/2 IBM TrackPoint是一个参考。


**编辑:**2015 年 11 月

#get the device ID for the trackpad. We know it contains the string "TPPS"
ibm_trackpad_id=$(xinput | grep 'TPPS' | cut -d"=" -f2 | cut -f1)
echo $ibm_trackpad_id > ~/temp/ibm_trackpad_id

#set desired params for trackpoint
xinput set-prop $ibm_trackpad_id "Evdev Wheel Emulation" 1
xinput set-prop $ibm_trackpad_id "Evdev Wheel Emulation Button" 2
xinput set-prop $ibm_trackpad_id "Evdev Wheel Emulation Timeout" 200
xinput set-prop $ibm_trackpad_id "Evdev Wheel Emulation Axes" 7 6 5 4
xinput set-prop $ibm_trackpad_id "Device Accel Constant Deceleration" 0.15

# get wireless mouse device ID 
logitech_mouse_id=$(xinput | grep "Logitech" | cut -d"=" -f2 | cut -f1)
echo $logitech_mouse_id > ~/temp/logitech_mouse_id

# this is device dependent. Map the buttons on your mouse the functionality you want. 
xinput set-button-map $logitech_mouse_id 1 2 3 4 5 6 7 9 8 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

# set props for external mouse
xinput set-prop $logitech_mouse_id "Device Accel Constant Deceleration" 1.7
xinput set-prop $logitech_mouse_id "Device Accel Adaptive Deceleration" 2
xinput set-prop $logitech_mouse_id "Evdev Wheel Emulation" 1
xinput set-prop $logitech_mouse_id "Evdev Wheel Emulation Axes" 7 6 5 4
xinput set-prop $logitech_mouse_id "Evdev Wheel Emulation Button" 8

相关内容