커널 키맵 설정

커널 키맵 설정

커널에서 키 코드를 받았지만 acpi_listenArch Linux에서는 인식되지 않습니다.

# /usr/lib/udev/keymap -i /dev/input/by-path/platform-thinkpad_acpi-event
Press ESC to finish, or Control-C if this device is not your primary keyboard
scan code: 0x1A    key code: micmute

이제 다음을 통해 키를 매핑하려고 합니다.

# /usr/lib/udev/keymap /dev/input/by-path/platform-thinkpad_acpi-event 0x01a micmute
setting scanode 0x1A to key code 248

그러나 acpi_listen여기에는 여전히 출력이 없습니다.

어떻게 acpi_listen식별해야 합니까?

업데이트 2

흠, evdev 드라이버는 이것을 인식하지 못하는 것 같습니다. 어떤 사람들은 xorg가 제한을 초과하는 중요한 이벤트 번호를 라우팅하지 않을 것이라고 말하는 것을 들었습니다.

ACPI 이벤트로 해결해야 하지만 방법을 모릅니다.

고쳐 쓰다

복잡해 보이는데,

$ xmodmap -e 'keycode 248 = XF86MicMute NoSymbol XF86MicMute'
xmodmap:  commandline:1:  bad keysym name 'XF86MicMute' in keysym list
xmodmap:  commandline:1:  bad keysym name 'XF86MicMute' in keysym list
xmodmap:  2 errors encountered, aborting.

답변1

문제는 설명한 대로 키 코드가 micmute범위를 벗어났다는 것입니다.이 버그 보고서에는. 따라서 스캔 코드 0x1A를 사용하지 않는 범위의 다른 키 코드에 다시 매핑해야 합니다. 만약에이 솔루션을(를 ) 사용하면 prog2작동하지 않습니다. 다른 키 코드를 선택해야 합니다. 당신은 볼 수 있습니다/usr/include/linux/input.h어떤 키 코드가 정의되어 있는지 확인하고키맵을 살펴보세요어떤 키 코드가 사용되고 있는지 확인하세요. 키 코드는 247 미만으로 선택하세요.

관련 정보