스캔 코드 070037을 사용하여 키를 왼쪽 Ctrl+Enter로 다시 매핑해야 합니다. 지금까지 다음 내용으로 90-custom-presenter.hwdb 파일을 생성하여 입력으로 성공적으로 다시 매핑했습니다.
# Logitech Presenter
keyboard:usb:b0003v046DpC515*
KEYBOARD_KEY_070037=enter
lsusb가 나에게 제공하기 때문에 이것이 맞다고 생각합니다.
Bus 003 Device 018: ID 046d:c515 Logitech, Inc. Cordless 2.4 GHz Presenter Presentation remote control
evtest는 내가 찾고 있는 스캔코드가 70037임을 확인합니다.
Event: time 1521756520.173637, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70037
Event: time 1521756520.173637, type 1 (EV_KEY), code 52 (KEY_DOT), value 1
Event: time 1521756520.173637, -------------- SYN_REPORT ------------
Event: time 1521756520.277633, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70037
Event: time 1521756520.277633, type 1 (EV_KEY), code 52 (KEY_DOT), value 0
Event: time 1521756520.277633, -------------- SYN_REPORT ------------
루트로 실행한 후에는 udevadm hwdb --update
이것이 입력을 위해 이전 "점" 키를 매핑할 것이라고 생각했지만 그렇지 않습니다. 이는 두 가지 질문을 제기합니다.
- 이 지도는 왜 예상한 것과 다른가요?
- 예상대로 작동하면 Ctrl-Enter에 어떻게 매핑합니까?
저는 우분투 14.04 LTS를 실행하고 있습니다.
답변1
내 Debian 9와 동일한 버전의 udev를 사용하거나 사용하지 않을 수 있는 Linux 배포판을 식별하지 않았으므로 이것이 시스템에 적용될 수도 있고 적용되지 않을 수도 있습니다.
내 시스템에는 /lib/udev/hwdb.d/60-keyboard.hwdb
다음과 같은 몇 가지 유용한 정보가 있습니다.
# Note: The format of the "evdev:" prefix match key is a
# contract between the rules file and the hardware data, it might
# change in later revisions to support more or better matches, it
# is not necessarily expected to be a stable ABI.
#
# Supported hardware matches are:
# - Generic input devices match:
# evdev:input:bZZZZvYYYYpXXXXeWWWW-VVVV
...
keyboard:usb
목록에는 하드웨어 일치에 대한 언급이 없습니다.
따라서 Linux 배포판 및 버전과 관련된 문서가 없거나 실제 시스템 기본 .hwdb
파일이 해당 keyboard:usb
구문을 사용하지 않는 한 다음으로 바꾸십시오 keyboard:usb:b0003v046DpC515*
.
evdev:input:b0003v046DpC515*
발표자의 "점" 키를 Control+Enter로 설정할 때의 문제점은 .hwdb 파일이 스캔 코드를 (단일) 키 코드에만 매핑할 수 있다는 것입니다. 키 코드 시퀀스를 삽입할 수 없습니다. 이 단계에서 Ctrl+Enter에 키를 매핑하려면 실제 키 누르기 이벤트를 수정하는 것 외에도 추가 이벤트를 삽입하고 해당 키 놓기 이벤트에 대해 동일한 작업을 수행해야 합니다.
귀하의 데스크탑 환경에는 귀하의 필요에 더 잘 맞는 보다 일반적인 키맵/바로가기 기능이 포함될 수 있습니다. 먼저 hwdb 규칙을 사용하여 발표자의 키 입력을 일부 사용되지 않은 키코드에 매핑한 다음 데스크탑 환경의 기능을 사용하여 해당 키코드를 Control+Enter에 매핑해야 할 수도 있습니다.