如何配置Logitech Marble轨迹球

您可以使用xinput配置它。

这一直是我所做的。 对于我曾经使用过的每个跟踪者来说,它都是桃子。 这是官方ubuntu页面中最后一步,最简单的一步。

~/trackman.sh

 #!/bin/bash xinput set-button-map "Logitech USB Trackball" 1 2 3 4 5 6 7 8 9 xinput set-int-prop "Logitech USB Trackball" "Evdev Wheel Emulation Button" 8 8 xinput set-int-prop "Logitech USB Trackball" "Evdev Wheel Emulation" 8 1 xinput set-int-prop "Logitech USB Trackball" "Evdev Wheel Emulation Axes" 8 6 7 4 5 xinput set-int-prop "Logitech USB Trackball" "Evdev Wheel Emulation X Axis" 8 6 xinput set-int-prop "Logitech USB Trackball" "Evdev Drag Lock Buttons" 8 9` chmod +x ~/trackman.sh 

然后,无论何时登录(或在启动脚本中), bash ~/trackman.sh

完成。 这个小小的脚本工作得多,比官方~60mb windows安装程序恕我直言:)

我有这样的配置,它工作得很好,直到我升级到Debian Stretch ….发生了什么? ‘evdev’不再使用了; 因为’libinput’取代了它。

检查使用的lib:

 xinput list-props "Logitech USB Trackball" 

如果你发现许多道具以’Evdev’开头,请忘记我的评论,如果它以’libinput’开头,那么这行可以做到这一点:

 xinput set-prop "Logitech USB Trackball" "libinput Button Scrolling Button" 8 

太,我推荐THIS for confort:

 # Enable middle button (on 9) and disable all useless and conflicting buttons and others. xmodmap -quiet -e "pointer = 1 0 3 4 5 6 7 0 2 0 0 0" 

(而不是这个: xmodmap -quiet -e "pointer = 1 0 3 4 5 6 7 8 2 10 11 12"只说使用中键(2)代替浏览器下一页(9)。你需要说使用只有滚动 – 然后没有 – 当你点击Browser Prev(8)时

RECAP所以,通过这些修改,你在轨迹球上有一个球和4个可用按钮(1-BIG 2-small 3-small 4-BIG)。

  • 如果按下按钮2,则按球 – >鼠标移动+鼠标滚动。
  • 按钮1 – >经典左键
  • 按钮2 – >按此按钮滚动球
  • 按钮3 – >中间按钮(用于复制linux中的选择)
  • 按钮4 – >经典右键

你这样做的方式并不完全正确。 启动bash shell时执行.bashrc。 除非您仅在X会话中运行的终端仿真器中使用它,否则每次登录或打开新终端时都会出错。

您可能想看看我在这里提供的解决方案

我在11.10中对此进行了测试,结果非常好。 这个选择来自“Ubuntuwiki”

避免在此版本中使用Hal,因为它已知问题。 使用gedit将以下内容放入终端:

使用以下命令编辑$HOME/bin/trackball.sh

 gedit $HOME/bin/trackball.sh 

然后将其粘贴到文件中:

 #!/bin/bash dev="Logitech USB Trackball" we="Evdev Wheel Emulation" xinput set-int-prop "$dev" "$we Button" 8 8 xinput set-int-prop "$dev" "$we" 8 1 # xinput set-int-prop "$dev" "$we" 8 1 # xinput set-int-prop "$dev" "$we Button" 8 9 # xinput set-int-prop "$dev" "$we X Axis" 8 6 7 # xinput set-int-prop "$dev" "$we Y Axis" 8 4 5 # xinput set-int-prop "$dev" "Drag Lock Buttons" 8 8 

确保trackball.sh以#!/bin/bash开头。 通过运行以下命令使脚本可执行:

 chmod +x $HOME/bin/trackball.sh` 

使用gedit $HOME/.bashrc $HOME/.bashrc添加到$HOME/.bashrc ,并将其放入文件中,即使它是空的:

 xmodmap $HOME/.Xmodmap > /dev/null 2>&1 $HOME/bin/trackball.sh 

使用: gedit $HOME/.Xmodmap编辑$ gedit $HOME/.Xmodmap

 pointer = 1 8 3 4 5 6 7 9 

退出并重新登录和中提琴!

如果您的鼠标连接了PS / 2 – > USB适配器,则可以尝试使用该命令

 lsusb 

对我来说,除其他外,它表明有一个

总线001设备018:ID 04d9:1400 Holtek Semiconductor,Inc。PS / 2键盘+鼠标控制器

USB身份代码(04d9)的第一部分标识制造商,第二部分标识产品。

现在,您可以使用该信息通过键入来发现连接到该适配器的设备的身份

 xinput list --long | grep 04d9 

我得到的是

↳HID04d9:1400 id = 9 [从指针(2)]

↳HID04d9:1400 id = 8 [从键盘(3)]

我没有键盘连接适配器,但有我的旧轨迹球鼠标,罗技TrackMan Marble FX。

所以我想知道更多关于上面标识为id = 9的设备,我用xinput命令得到我想要的东西:

 xinput list-props 9 

上市的第一行是

设备’HID 04d9:1400’:

该列表还显示了设备的属性,我使用它们来构建修改这些属性所需的命令。 我结束的是两个命令:

 xinput set-int-prop "pointer:HID 04d9:1400" "Evdev Wheel Emulation Button" 8 3 xinput set-int-prop "pointer:HID 04d9:1400" "Evdev Wheel Emulation" 8 1 

第一行将TrackMan鼠标的Button 3转换为Wheel仿真按钮。 (按钮4又名“8”似乎根本不起作用)。 命令中的“指针”指的是鼠标并防止将“键盘”与可能连接到同一适配器(不在我的系统中)的“键盘”混淆。