나는 오디오 컨트롤을 해당 XF86 키에 매핑하려고 오랫동안 노력해 왔습니다. 그러나 XF86AudioLowerVolume
, , XF86AudioRaiseVolume
& 세 개의 키가 XF86AudioMute
제대로 작동하지 않습니다. 로그인할 때마다 이 키를 한 번씩 누를 수 있습니다. 그 후에는 다른 키를 누르거나 다른 키 신호를 보낼 때까지 입력이 반복됩니다. xev
이러한 키에 대한 반복적인 키 누름도 표시되며 showkey
키 누르기 이벤트만 표시되고 놓기는 표시되지 않습니다. 명확히 하기 위해 출력은 다음과 같습니다.
keycode 113 press
keycode 114 press
keycode 115 press
keycode 57 press
keycode 57 release
스페이스바(키코드 57)를 누르면 예상대로 버전이 표시되지만 키코드 113-115는 그렇지 않습니다. 이제 인터넷을 뒤져봐도 키를 눌렀을 때의 키만 기록되고 키를 눌렀을 때의 키를 눌렀을 때의 기록은 기록되지 않은 다른 게시물을 본 적이 없습니다. 최근 우분투 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:
옳을 수 없다는 것입니다. 일반적으로 출력 문자에 해당하는 1바이트가 여기에 입력됩니다. 다른 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
just receive message 와 같은 명령을 사용하여 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