따라해보려고 해요이 가이드로지텍 G600을 사용합니다. 나는 (Windows 컴퓨터를 사용하여) 마우스의 모든 키 조합을 일반 키보드의 특정 조합에 매핑합니다. 스캔 코드를 일부 확장 키 코드에 매핑하기 위해 /etc/udev/hwdb.d/에 몇 가지 규칙을 설정했습니다.여기). X가 255보다 큰 키코드를 인식하지 못한다는 점을 제외하면 이 모든 것이 잘 작동합니다. 따라서 라인
KEYBOARD_KEY_7001d=zenkakuhankaku
마우스 버튼이 키코드 400(showkey를 통해)을 뱉어내고 xev가 키를 전혀 인식하지 못하게 합니다.
xmodmap -pke | grep "= XF86"
또한 사용 가능한 255개 미만의 키코드를 표시하기 위해 실행을 시도했지만 스캔코드를 해당 키코드에 매핑하는 방법(예: KEYBOARD_KEY_7001d=XF86Explorer
키를 "z"에 매핑)을 알 수 없었습니다.
스캔코드를 숫자 키코드에 직접 매핑하는 방법이 있습니까(hwdb 파일에서 - 문자 "a"를 XF86Calculator에 내보내는 모든 것을 매핑하고 싶지는 않습니다)?
스캔 코드를 사용되지 않는 XF86 코드 중 하나에 매핑하는 다른 방법이 있습니까?
답변1
좋아, 이것이 내가 한 일이다. /usr/include/linux/input.h에서 실제 키 이름을 추출했습니다. 다음과 같이 키코드 이름을 정의하는 섹션이 있습니다.
#define KEY_RIGHTMETA 126
#define KEY_COMPOSE 127
#define KEY_STOP 128 /* AC Stop */
#define KEY_AGAIN 129
#define KEY_PROPS 130 /* AC Properties */
저는 KEY_xxx에 소문자 xxx(예: "compose", "stop" 등)를 키 이름으로 사용합니다. 다른 곳에서는 실제로 사용되지 않을 것 같은 것을 선택했습니다(예: KEY_LEFTCTRL).
그런 다음 링크된 기사에서 알 수 있듯이 xbindkeys -km
적절한 키코드 번호를 얻고 xbindkeys를 사용하여 이를 매핑했습니다.