仅识别按键,不识别按键释放

仅识别按键,不识别按键释放

我已经尝试了很长一段时间将我的音频控件映射到相应的 XF86 键。然而,三个键:XF86AudioLowerVolume、、XF86AudioRaiseVolume&XF86AudioMute拒绝正常工作。每次登录后,我都可以按这些键一次。之后,他们的输入会重复,直到我按下另一个键或发送另一个键信号。xev还显示这些键的重复按键,并且showkey仅显示按键事件,但不显示释放。澄清一下,输出如下所示:

keycode 113 press
keycode 114 press
keycode 115 press
 keycode  57 press
keycode  57 release

您可以看到空格键(键码 57)按预期显示版本,但键码 113-115 没有显示。现在我在互联网上查遍了,但我还没有看到另一个帖子,其中只记录了按键按下,而不记录按键释放。我最近升级到ubuntu 19.10并重新安装xorg但无济于事。有什么建议么?


编辑:

xev对于所有这三个键,我只有在第一次按下时才会得到输出;密钥只是一遍又一遍地重复,如下所示:

KeyPress event, serial 34, synthetic NO, window 0x1e00001,
    root 0x168, subw 0x0, time 35686, (441,184), root:(1725,204),
    state 0x0, keycode 121 (keysym 0x1008ff12, XF86AudioMute), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 34, synthetic NO, window 0x1e00001,
    root 0x168, subw 0x0, time 36347, (441,184), root:(1725,204),
    state 0x0, keycode 121 (keysym 0x1008ff12, XF86AudioMute), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False
        ........

让我惊讶的是那条线XLookupString gives 0 bytes:,这不可能是对的吧?正常情况下,这里键入一个字节,对应于输出字符。其他 XF86 键给我的事件如下:

KeymapNotify event, serial 157, synthetic NO, window 0x0,
    keys:  2   0   0   0   0   0   0   0   0   0   0   0   0   0   0   14  
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

此外,当我运行 .xev 时,显示在 xev 中的键码与正确的绑定相对应xmodmap -pke。我倾向于相信问题不在于我的 X 服务器,因为用以下命令重新启动 X 服务器sudo systemctl restart display-manager对我没有任何作用,重新登录也没有。

我也尝试过重新启动键盘

xinput disable 'AT Translated Set 2 keyboard'; 
xinput enable 'AT Translated Set 2 keyboard'

但无济于事。

我尝试使用诸如modprobe -r atkbd仅接收消息之类的命令重新启动 atkbd 模块(键盘控制器) modprobe: FATAL: Module atkbd is builtin

到目前为止,按下(并且永远不会释放)这些键的唯一方法是重新启动。

也许重要的是要告诉我我运行的是双引导系统GRUB2。在 Windows 中,这些按键可以正常工作。我想他们也在 BIOS 中这样做,尽管测试音量键有点困难。


编辑2:

我使用的是带有内置键盘的 Medion Erazer P6661 笔记本电脑。通过列出我的键盘xinput list-props 12,我得到以下信息:

Device 'AT Translated Set 2 keyboard':
    Device Enabled (167):   1
    Coordinate Transformation Matrix (169): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    libinput Send Events Modes Available (289): 1, 0
    libinput Send Events Mode Enabled (290):    0, 0
    libinput Send Events Mode Enabled Default (291):    0, 0
    Device Node (292):  "/dev/input/event4"
    Device Product ID (293):    1, 1

相关内容