xkbcomp가 xkb_keycodes 섹션의 구문 오류에 대해 불평합니다.

xkbcomp가 xkb_keycodes 섹션의 구문 오류에 대해 불평합니다.

나만의 개인 키보드 레이아웃을 만들기 위한 준비로 xkb에 대해 배우기 시작했을 때 xkb 구성 파일을 만들었습니다. 이것은 시작의 대표적인 부분입니다.강력한 텍스트) 내 X 키보드 프로필:

xkb_keymap {
        xkb_keycodes "de|ru" {
                minimum = 8;
                maximum = 255;

[...]
                <F11>         =  95; // <FK11>
                <F12>         =  96; // <FK12>
//              <SYSRQ>       = 107; // <PRSC>
//              <SCROLL_LOCK> =  78; // <SCLK>
//              <PAUSE>       = 127; // <PAUS>

//              <CIRCUMFLEX>  =  49; // <HZTG>, <TLDE>
                <1>           =  10; // <AE01>
                <2>           =  11; // <AE02>
[...]

이제 보조 키보드에서 실제로 사용하려고 시도하지만 명령을 실행하면 xkbcomp -i 12 $FILE $DISPLAY다음 오류가 발생합니다.

syntax error: line $LINE of $FILE
last scanned symbol is: $SYMBOL
Errors encountered in $FILE; not compiled.

SYMBOL은 SYSRQ, SCROLL_LOCK, PAUSE 또는 CIRCUMFLEX 중 하나일 수 있습니다. 목록은 나중에 붙여넣지 않은 섹션에 나열됩니다. 여기에 표시된 행을 주석 처리하면 xkbcomp는 향후 유사한 문제에 대해 단순히 실패합니다. 그렇다면 SYSRQ에서는 구문 오류가 발생하지만 ESC 또는 F12에서는 구문 오류가 발생하지 않는 이유는 무엇입니까? 이 줄은 구문적으로 모두 동일합니다. 예약된 이름이 있나요? 아니면 내가 사용할 수 있는 이름이 실제로 미리 결정되어 있나요? 이에 대한 유용한 문서는 어디에서 찾을 수 있나요? (나는 이 오류가 발생하는 이유조차 밝히지 않은 불완전하고 모순된 튜토리얼을 제시한 매뉴얼 페이지와 Google을 참조했습니다.)

답변1

나에게 가장 가까운 설명은 다음에서 비롯됩니다.X 키보드 확장: 프로토콜 사양:

각 키에는4바이트 기호 이름. 키 이름은 서로 다른 스캔 코드를 보고하는 키보드에서 유사한 기능 또는 유사한 위치를 가진 키를 연결합니다. 키 별칭을 사용하면 키보드 레이아웃 디자이너가 단일 키에 여러 이름을 할당할 수 있으므로 위치나 "기능"을 사용하여 키를 더 쉽게 참조할 수 있습니다.

<AB02>이름은 일반적으로 그림과 같이 왼쪽 하단 모서리에 있는 B행 키 2의 위치입니다 .신뢰할 수 없는 XKB 구성 가이드부분키 코드(PDF 버전).

관련 정보