XKB를 사용하여 키패드 키를 구성하는 방법은 무엇입니까?

XKB를 사용하여 키패드 키를 구성하는 방법은 무엇입니까?

키패드를 사용하도록 XKB를 구성하는 방법을 찾지 못했습니다. "us" 파일에서 다음을 찾았습니다.

partial alphanumeric_keys modifier_keys 
xkb_symbols "basic" {

    name[Group1]= "USA";

    // Alphanumeric section
    key <TLDE> {    [     grave,    asciitilde  ]   };
    key <AE01> {    [     1,    exclam      ]   };
    key <AE02> {    [     2,    at      ]   };
    key <AE03> {    [     3,    numbersign  ]   };
    key <AE04> {    [     4,    dollar      ]   };
    key <AE05> {    [     5,    percent     ]   };
    key <AE06> {    [     6,    asciicircum ]   };
    key <AE07> {    [     7,    ampersand   ]   };
    key <AE08> {    [     8,    asterisk    ]   };
    key <AE09> {    [     9,    parenleft   ]   };
    key <AE10> {    [     0,    parenright  ]   };
    key <AE11> {    [     minus,    underscore  ]   };
    key <AE12> {    [     equal,    plus        ]   };

    key <AD01> {    [     q,    Q       ]   };
    key <AD02> {    [     w,    W       ]   };
    key <AD03> {    [     e,    E       ]   };
    key <AD04> {    [     r,    R       ]   };
    key <AD05> {    [     t,    T       ]   };
    key <AD06> {    [     y,    Y       ]   };
    key <AD07> {    [     u,    U       ]   };
    key <AD08> {    [     i,    I       ]   };
    key <AD09> {    [     o,    O       ]   };
    key <AD10> {    [     p,    P       ]   };
    key <AD11> {    [ bracketleft,  braceleft   ]   };
    key <AD12> {    [ bracketright, braceright  ]   };

    key <AC01> {    [     a,    A       ]   };
    key <AC02> {    [     s,    S       ]   };
    key <AC03> {    [     d,    D       ]   };
    key <AC04> {    [     f,    F       ]   };
    key <AC05> {    [     g,    G       ]   };
    key <AC06> {    [     h,    H       ]   };
    key <AC07> {    [     j,    J       ]   };
    key <AC08> {    [     k,    K       ]   };
    key <AC09> {    [     l,    L       ]   };
    key <AC10> {    [ semicolon,    colon       ]   };
    key <AC11> {    [ apostrophe,   quotedbl    ]   };

    key <AB01> {    [     z,    Z       ]   };
    key <AB02> {    [     x,    X       ]   };
    key <AB03> {    [     c,    C       ]   };
    key <AB04> {    [     v,    V       ]   };
    key <AB05> {    [     b,    B       ]   };
    key <AB06> {    [     n,    N       ]   };
    key <AB07> {    [     m,    M       ]   };
    key <AB08> {    [     comma,    less        ]   };
    key <AB09> {    [    period,    greater     ]   };
    key <AB10> {    [     slash,    question    ]   };

    key <BKSL> {    [ backslash,         bar    ]   };
    // End alphanumeric section
};

나는 알림을 받았다http://cgit.freedesktop.org/xkeyboard-config/tree/symbols/keypad, 하지만 이를 이해할 수 있는 리소스/매뉴얼이 있는지, 수정하는 방법을 알고 싶습니다.

답변1

해당 줄은 다음과 같아야 합니다.

key <key_identifier> { [ Symbol(s)_actually_sent ] };

여러 기호가 있는 경우 쉼표로 구분합니다. 첫 번째 기호는 키를 누를 때 전송되고, 두 번째 기호는 정시에 전송되며 Shift, 세 번째 기호는 시간에 맞춰 전송되고 AltGr, 네 번째 기호는 AltGr+를 누르면 전송 됩니다 Shift.

키패드 키 식별자는 <KO.>;로 시작합니다. 화살표 키에는 이름이 지정되어 <KP.>있으며 일부에는 특정 이름이 있습니다.

이러한 키 중 일부를 재정의하려면 위와 유사한 줄을 작성해야 합니다. 단지 이를 활성화하려면 기존 키보드 정의를 로드하기만 하면 됩니다. 예를 들면 다음과 같습니다( setxkbmap "us+keypad(x11)"사용 가능한 키보드 정의가 많으며 파일을 볼 수 있습니다 /usr/share/X11/xkb/symbols/keypad).

또한 올바른 키보드 모델/기하구조를 선택하면 자동으로 활성화됩니다.

답변2

2012-04-27의 iomartin 답변 업데이트: 현재 문서는 다음 위치에 있습니다.https://www.charvolant.org/doug/xkb/html/node5.html

이는 Doug Palmer가 작성한 XKB 구성 불안정성 가이드의 일부입니다.https://www.charvolant.org/doug/xkb/html/xkb.html

또 다른 소개는 Michael Cardell Widerkrantz의 "Changing Keyboard Layouts with XKB"입니다.https://hack.org/mc/writings/xkb.html

또는 Damiano Venturin의 "Linux용 XKB에 대한 간단하고 소박하지만 포괄적인 가이드":https://medium.com/@damko/a-simple-humble-but-compressive-guide-to-xkb-for-linux-6f1ad5e13450

기타 정보 출처:

kbdgen과 같이 레이아웃 구성을 생성하는 데 도움이 되는 도구도 있습니다.https://divvun.github.io/kbdgen/

관련 정보