키 코드를 모르는 경우 Udev hwdb 키 재맵핑

키 코드를 모르는 경우 Udev hwdb 키 재맵핑

/etc/udev/hwdb.d/70-keyboard.hwdb일부 키보드 키를 다시 매핑하는 파일을 작성했습니다 . 추가 키를 다시 매핑하고 싶지만 어떤 식별자를 사용해야 하는지 알 수 없습니다.

일반적으로 키보드 키를 실행 evtest하고 누르면 다음과 같은 출력이 표시됩니다.

Event: time 1639158329.532434, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7000f
Event: time 1639158329.532434, type 1 (EV_KEY), code 38 (KEY_L), value 1

70-keyboard.hwdb그런 다음 위의 첫 번째 줄("EV_MSC" 포함)에서 16진수 "값"을 사용하여 내 파일에 다음과 같은 줄을 구성했습니다.

 KEYBOARD_KEY_7000f=rightctrl

지금 다시 매핑하려는 키는 내 것입니다. 16진수 값을 식별하기 위해 KEY_KBDILLUMDOWN실행하면 evtest출력이 한 줄만 표시되고 "EV_MSC"가 포함된 줄은 없습니다.

Event: time 1639158417.741165, type 1 (EV_KEY), code 229 (KEY_KBDILLUMDOWN), value 1

udev에서 이 키를 어떻게 다시 매핑하나요?

답변1

어쩌면 이 키 이벤트가 ACPI 드라이버에 의해 주입될 수도 있으며(실제 키 이벤트가 아님), 이 경우 acpid를 통해 처리할 수 있습니다. acpi_listen을 사용해 보십시오(acpid가 실행 중인 경우). 이벤트 핸들러는 /etc/acpi/events/에 있으며 핸들러(기본적으로 /etc/acpi/에 있음)를 호출합니다.

이 경우 간단한 evdev 래퍼 스크립트를 작성하여 주요 이벤트를 acpi 이벤트 처리기로 생성할 수 있습니다. 바라보다여기몇 가지 예를 들어보세요.

관련 정보