xbindkeys 重新映射额外的鼠标按钮

xbindkeys 重新映射额外的鼠标按钮

我正在跟进本教程但似乎无法让它工作

我使用 xev 并确认我想要映射的两个鼠标按钮是按钮 8 和按钮 9

我想将它们映射到键盘上的“a”和“s”键。

我尝试了 .xbindkeysrc 中的以下变化,但当我单击鼠标按钮时它没有任何反应(我确认将键盘键重新映射到“xterm”等命令确实有效)。

"a"
  b:8

m:0x0 + c:38
  b:8

xte 'key a'
  b:8


xte 'key 0x61'
  b:8

还尝试了“b:8 + release”这些变体

什么都没起作用,不知道为什么

答案1

格式为~/.xbindkeysrc

"command to execute"
  keys

您想要执行该命令xte 'key 0x61',因为该命令模拟按下按键a,所以您需要

"xte 'key 0x61'"
  b:2   

(这可能是您没有尝试的唯一变体...)。将除 shell 命令之外的任何内容放在双引号之间,例如am:0x0 + c:38,都是没有意义的:xbindkeys如果您在 shell 中输入它,则会尝试执行它,当然这不是像 这样的合理的 Linux 命令xte。同样,使用没有双引号的命令也不会起作用。

答案2

输入$ xev | sed -ne '/^KeyPress/,/^$/p'并捕捉键盘按键的 unicode;例如,字母aunicode 是0x61

然后,编辑~/.xbindkeysrc并在文件末尾添加您自己的快捷方式,如下所示:

#Comment of what the binding (is doing)/(is for)
"xdotool key <target key>"
       <source key>

例如,:

#Switch Workspaces
"xdotool key 'super+0xff09'"
        b:2

最后,不要忘记$xbindkeys -p更新所使用的conf。

相关内容