각 키 코드 정의에는 최대 8 개의 키 심을 가질 수 있습니다. 이들은 4 개의 그룹으로 쌍으로 구성됩니다. 키섬 계열 ISO_Next_Group
, ISO_Prev_Group
, ISO_First_Group
및 ISO_Last_Group
이 있으며 키를 누르면 keysym 그룹간에 키를 치면서 keysym 출력이 순환됩니다. 이 키는 여러 레이아웃을 얻는 방법입니다. ISO_Next_Group
가정 예를 들어
는,이 정의를 들면, 수정에 키 코드에 바인딩 및 할당되었습니다
keycode 53 = x X Greek_xi Greek_XI multiply U2297 U24E7 U24CD
는 "X"에서 유형의 레이블 "X"내 키보드 키를 눌러 .
ISO_Next_Group
키를 누른 후 "ξ"를 얻습니다. 다시 누르면, "×"가됩니다. 그것을 다시 누르면, "ⓧ". 마지막으로 네 번째로 누르면 정상으로 되돌아갑니다.
며칠 보내고 갖는 (Xkb¹ 끔찍한 문서를 가지고 있기 때문에, 마지막으로 괜찮 가이드 here을 발견),이 같은 항목이 심볼 정의 파일을 만들 수 있습니다
key <SPCE> {
// Level I II III IV
[ space, space, U2395, U2592 ], // Group 1
[ U2423, emspace, U2420, hairspace ] // Group 2
};
key <RALT> {
[ Mode_switch, Mode_switch ]
};
key <RCTL> {
[ ISO_Level3_Shift, ISO_Level3_Shift ]
};
브래킷은 단일 묶 그룹. 일반적으로 첫 번째 그룹이 활성 상태입니다. 그룹은 ISO_Group_Shift, a.k.a. Mode_switch으로 일시적으로 1 씩 증가 할 수 있습니다. 그룹 내에서 배출되는 기호는 증가하는 수준으로 정의됩니다. 레벨 I는 벌거 벗은 키를 가지고 있습니다. Shift은 현재 레벨에 1을 더합니다. ISO_Level3_Shift은 레벨을 III로 설정합니다.
위의 예제는 일곱 개 스페이스 바 기호를 더한 다양한 시프트 키 등이 매핑
:
공간 ⟨⟩ U + 0020 SPACE
Shift + 공간 ⟨⟩ U + 0020 SPACE
을 R. Alt + 공간 ⟨␣⟩ U + 2423 OPEN BOX
R. Alt + 시프트 + 공간 ⟨⟩ U + 2003 EM 스페이스
R.는 Ctl + 공간 ⟨⎕⟩ U + 2395 APL 기능성 SYMBOL QUAD
R.는 Ctl +는 + 공간 ⟨▒⟩ U + 2592 MEDIUM 그늘
R. Alt + R 시프트. Ctl. + space ⟨␠⟩ U + 2420 스페이스의 심볼
R. Alt + R. Ctl.+ Shift + 공간 ⟨⟩ U + 200A 헤어 SPACE
핵심 ISO_Level5_Shift 당신이 한 단계에 대한 최소한 6 개 문자를 가질 수 있도록 레벨 V.에 대한도있다. 모드 전환 키를 사용하면 약 1,200 개의 별개의 기호를 입력하도록 키보드를 구성 할 수 있지만 그 시점에서 많은 수식어로 인해 몇 개의 키가 비활성화 될 수 있습니다.
P. 모든 명명 된 기호의 이름은 /usr/include/X11/keysymdef.h
에 저장됩니다.
¹는
xmodmap을 (1) 및 버되지 것은 나온다.
이 질문은 기본적으로 저수준 해킹이 필요한 다소 특이한 방식으로 키맵을 컴파일하는 것에 관한 것입니다. 수퍼 유저에게 맡긴다 고 생각했지만 응답이 없습니다. 프로그래밍에 더 가깝습니다 (예 - 이것은 기본적으로 xkb 프로그래밍입니다). 설정을 수정하는 것 (수퍼 유저가 전문적으로하는 것)보다. – viraptor