![使用 setkeycodes 将按下和释放映射到不同的“键”](https://linux22.com/image/24991/%E4%BD%BF%E7%94%A8%20setkeycodes%20%E5%B0%86%E6%8C%89%E4%B8%8B%E5%92%8C%E9%87%8A%E6%94%BE%E6%98%A0%E5%B0%84%E5%88%B0%E4%B8%8D%E5%90%8C%E7%9A%84%E2%80%9C%E9%94%AE%E2%80%9D.png)
我有一个键盘它有一个滚轮,但它在 Ubuntu 上不起作用,并且xev
移动它时命令不会显示任何内容。但通过dmesg
命令我发现了这个:
向上移动滚轮时:
atkbd serio0: Unknown key pressed (translated set 2, code 0x8b on isa0060/serio0).
atkbd serio0: Use 'setkeycodes e00b <keycode>' to make it known.
向下移动滚轮时:
atkbd serio0: Unknown key released (translated set 2, code 0x8b on isa0060/serio0).
atkbd serio0: Use 'setkeycodes e00b <keycode>' to make it known.
它似乎是相同的键,但如果向上/向下移动它,按下/释放会发生变化。
xmodmap -pke | grep croll
显示:
keycode 78 = Scroll_Lock NoSymbol Scroll_Lock
keycode 185 = XF86ScrollUp NoSymbol XF86ScrollUp
keycode 186 = XF86ScrollDown NoSymbol XF86ScrollDown
如何配置它,以便当“按下”时键码为 185,当“释放”时键码为 186?
答案1
您应该使用setkeycodes
分配键码。
http://www.jveweb.net/en/archives/2011/01/configure-unrecognized-keys-in-linux.html
无法识别按键的扫描码,即未发现与扫描码相关的按键码,此处的重要值出现在 setkeycodes 命令旁边。所以你必须定义e00b
找出未使用的键码
xmodmap -pke | less
然后用命令分配一个键码
setkeycodes