使用鼠标多媒体按钮调节音量

pat*_*eza 5 keyboard-shortcuts audio mouse multimedia xbindkeys

我知道互联网上有很多关于在 Linux 中设置键盘/鼠标多媒体键/按钮的问题,但我的问题更具体。

我的无线输入设备:

上述键盘有ia:

  • 提高音量,
  • 音量减小

工作正常的按键。我的鼠标有几个多媒体按钮,没有分配任何操作。我想分配给两个鼠标按钮,相同的操作,它们分配给音量增大/减小键盘键。

重要的提示:

当我按住音量增大/减小键盘键时,音量 逐渐变大/变小,直到音量达到最大/静音。我想要用鼠标达到同样的效果。

为了满足上述要求,我遵循了以下步骤:

  1. 我安装了xvkbd,这是X窗口系统的虚拟键盘,
  2. 我检查了xev鼠标按钮的代码(8- 音量减小,9- 音量增大),
  3. 我添加了以下几行~/.xbindkeysrc

    "xvkbd -text '\[XF86AudioLowerVolume]'"
      b:8
    
    "xvkbd -text '\[XF86AudioRaiseVolume]'"
      b:9
    
    Run Code Online (Sandbox Code Playgroud)
  4. 我残酷地“重装”了xbindkeys守护进程(其实我不知道它是否可以称为守护进程,因为它是从 开始的/etc/xdg/autostart):

    pkill -f xbindkeys && xbindkeys
    
    Run Code Online (Sandbox Code Playgroud)

    顺便说一句:我不知道如何优雅地重新加载它。

它几乎可以工作了。现在我可以用鼠标按钮调高/调低音量,但如果我继续按住音量调高/调低按钮,音量不会逐渐变大/变小。它在一次“迭代”后停止。只要按住按钮,我就想要“自动重复”。

问题:

  • 我该如何修复它?
  • 我还有其他方法可以做到吗?例如仅使用xmodmap, 而不是xvkbd+ xbindkeys?

为了完整起见:

小智 5

最优解

"xdotool keydown XF86AudioLowerVolume"
b:8

"xdotool keyup XF86AudioLowerVolume"
b:8 + Release

"xdotool keydown XF86AudioRaiseVolume"
b:9

"xdotool keyup XF86AudioRaiseVolume"
b:9 + Release
Run Code Online (Sandbox Code Playgroud)

这将充当键盘按键,因为它将继续改变音量,直到您释放鼠标按钮。

快乐编码...


Pet*_*des 0

一些罗技鼠标具有可编程按钮。其中一些具有板载存储,可以将配置文件存储在鼠标上。如果您可以使用可以运行 Logitech 鼠标设置软件的计算机,您可以使鼠标的 USB 键盘组件发送多媒体按键(我认为使用自动重复),而不是在 GNU/Linux 端的软件中处理它。

例如,当我按下 G602 的其中一个按钮时,即使我已将其连接到 Linux 桌面,它也会发送 F6 按键。没有板载配置文件存储的鼠标只能通过软件重新映射其按钮(例如您所做的,或在 Windows 下运行的罗技自己的软件)。

IDK 如何为映射到键盘按键的鼠标按钮设置自动重复,就像您所做的那样。