如何为 Logitech Anywhere Mouse MX 的水平滚轮分配“后退”和“前进”操作?

ysa*_*sap 13 mouse mouse-wheel logitech

我在我的 Ubuntu 上使用 Logitech Anywhere Mouse MX。鼠标运行良好,但我无法将操作分配给其上可用的额外按钮。我最怀念的是分配给左右滚轮倾斜的“后退”和“前进”动作。

如何激活这些功能?

小智 19

我有同样的鼠标,我想将鼠标侧面的两个按钮绑定到前进和后退。这是我解决这个问题的方法:

1) 使用实用程序“xev”来确定您要重新映射的按钮对应的数字。您可能必须使用安装此软件包

sudo apt-get install xev  
Run Code Online (Sandbox Code Playgroud)

安装 xev 后,在终端中键入“xev”,将弹出一个带有黑框的白色 X 窗口。将鼠标移入该窗口将开始向终端注册事件。仔细阅读输出结果会告诉您鼠标按钮的数量。在我的鼠标上,左右倾斜分别映射到按钮 6 和 7。

2) 现在我们将使用实用程序“xbindkeys”将鼠标按钮重新映射到按键。如果你还没有安装这个,你可能需要安装它

sudo apt-get install xbindkeys
Run Code Online (Sandbox Code Playgroud)

3) 在您的主目录中创建一个名为“.xbindkeysrc”的文件。这是 xbindkeys 将读取的内容,以查看您正在重新映射的内容。我的 .xbindkeysrc 文件的内容是:

 "/usr/bin/xvkbd -xsendevent -text "\[Alt_L]\[Left]""
   m:0x0 + b:8

 "/usr/bin/xvkbd -xsendevent -text "\[Alt_L]\[Right]""
  m:0x0 + b:9
Run Code Online (Sandbox Code Playgroud)

因此,这会告诉我的计算机在分别按下鼠标 0 上的按钮 8 或鼠标 0 上的按钮 9 时,使用虚拟键盘 (xvkbd) 将键盘按钮按下“Alt+Left”或“Alt+Right”发送到系统。这些键对应于大多数应用程序中的前进和后退键。例如,这将适用于 Nautilus、chrome/

注意xvkbd如果您的系统上尚未安装,您可能需要安装。sudo apt-get install xvkbd


小智 9

xbindkeysxdotool.

.xbindkeysrc在您的主目录中创建一个文件。它必须包含:

# Mapping BACK to mousewheel left on old Logitech
"xdotool key Alt_L+Left"
m:0x0 + b:6

# Mapping FORWARD to mousewheel right on old Logitech
"xdotool key Alt_L+Right"
m:0x0 + b:7
Run Code Online (Sandbox Code Playgroud)

但是,使用 VMware,除了添加

mouse.vusb.enable = "TRUE"
Run Code Online (Sandbox Code Playgroud)

到主机系统中的 .vmx 文件。每次启动来宾系统时,VMware 都会打开它。


小智 5

这是我所做的。不需要sudo命令或新包:

  • 我测试了我的按钮xev--> 所有按钮都对应于某个值,这意味着它们被系统识别
  • 检查设备xinput list-->在我的情况下,鼠标以ID 9列出
  • xinput list-props 9 显示当前映射,特别是讲述按钮标签 --> 似乎向前/向后对应于我没有的按钮 8 和 9(滚轮倾斜是 6 和 7 并映射到水平滚动)
  • xmodmap通过 X 解释的重新映射绑定对我来说是最方便的解决方案。前五个按钮不应更改(左中键单击并上下滚动),但报告为按钮 6 和 7 的按钮应向前/向后导航
  • xmodmap -e "pointer = 1 2 3 4 5 8 9 6 7 10 11 12 13 14 15 16"在终端中执行将按钮 6 和 7 与 8 和 9 交换(实际上)
  • 如果此映射不适用于您恢复默认值xmodmap -e "pointer = default"并尝试不同的映射
  • 现在我的启动应用程序中有按钮交换命令要在登录后执行
  • 根据man xmodmap将此命令存储在一个名为~/.xmodmaprc或将指令附加到的文件中,似乎也有可能~/.bashrc

为我工作。希望这可以帮助。