![如何仅重新映射一个键盘上的按键?](https://linux22.com/image/974694/%E5%A6%82%E4%BD%95%E4%BB%85%E9%87%8D%E6%96%B0%E6%98%A0%E5%B0%84%E4%B8%80%E4%B8%AA%E9%94%AE%E7%9B%98%E4%B8%8A%E7%9A%84%E6%8C%89%E9%94%AE%EF%BC%9F.png)
我知道我可以用它xinput
重新映射一只鼠标上的鼠标按钮,而其他按钮保持不变。这非常有用。就我而言,我用它将两个鼠标连接到我的桌面,一只右手鼠标,另一只左手鼠标。
当连接了多个键盘时,也可以这样做吗?我可以将一个键盘上的按键重新映射到其他按键上,而其他按键保持不变吗?
在我的特定情况下,我的鼠标似乎被注册为附加键盘,并且它的第 6 和第 7 个按钮被转换为pageup和pagedown,我想将它们绑定到复制/粘贴 - 但我不想影响标准键盘上的常规pageup和pagedown键。
输出如下所示xinput
- 有问题的键盘的 ID 为 10:
$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ SteelSeries Diablo III Gaming Mouse id=9 [slave pointer (2)]
⎜ ↳ SteelSeries Diablo III Gaming Mouse id=11 [slave pointer (2)]
⎜ ↳ Logitech USB Optical 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)]
↳ Power Button id=7 [slave keyboard (3)]
↳ Creative Technology Ltd SB Tactic3D Rage USB id=8 [slave keyboard (3)]
↳ SteelSeries Diablo III Gaming Mouse id=10 [slave keyboard (3)]
↳ Logitech USB Keyboard id=13 [slave keyboard (3)]
↳ Logitech USB Keyboard id=14 [slave keyboard (3)]
↳ HP WMI hotkeys id=15 [slave keyboard (3)]
答案1
您的问题更多是关于重新映射鼠标按钮而不是键盘按钮,对吗?我认为 ImWheel 可以重新映射多个设备。我使用它并在此处写了一篇文章:http://www.gdargaud.net/Hack/LinuxMouse.html
答案2
这无法通过 xinput/xf86-input-evdev 完成,您必须直接在 evdev 中执行此操作,请查看 evtest 包。