![XKB를 사용하여 키패드 키를 구성하는 방법은 무엇입니까?](https://linux55.com/image/19196/XKB%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%ED%82%A4%ED%8C%A8%EB%93%9C%20%ED%82%A4%EB%A5%BC%20%EA%B5%AC%EC%84%B1%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
키패드를 사용하도록 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
기타 정보 출처:
- 아치 리눅스 위키:https://wiki.archlinux.org/index.php/X_keyboard_extension
- XKB 사양 자체:https://www.x.org/releases/current/doc/kbproto/xkbproto.html
kbdgen과 같이 레이아웃 구성을 생성하는 데 도움이 되는 도구도 있습니다.https://divvun.github.io/kbdgen/