![xkb 구성 파일에서 보존 키워드의 기능은 무엇입니까?](https://linux55.com/image/178567/xkb%20%EA%B5%AC%EC%84%B1%20%ED%8C%8C%EC%9D%BC%EC%97%90%EC%84%9C%20%EB%B3%B4%EC%A1%B4%20%ED%82%A4%EC%9B%8C%EB%93%9C%EC%9D%98%20%EA%B8%B0%EB%8A%A5%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
사용자 정의 xkb 키맵의 xkb_types 섹션에서 보존 키워드가 무엇을 하는지 궁금합니다.
다음은 기존 구성 파일의 예입니다.
type "FOUR_LEVEL_SEMIALPHABETIC" {
modifiers= Shift+Lock+LevelThree;
map[Shift]= Level2;
map[Lock]= Level2;
map[LevelThree]= Level3;
map[Shift+LevelThree]= Level4;
map[Lock+LevelThree]= Level3;
preserve[Lock+LevelThree]= Lock;
map[Shift+Lock+LevelThree]= Level4;
preserve[Shift+Lock+LevelThree]= Lock;
level_name[Level1]= "Base";
level_name[Level2]= "Shift";
level_name[Level3]= "Alt Base";
level_name[Level4]= "Shift Alt";
};
나는 다음 두 줄에 관심이 있습니다.
preserve[Lock+LevelThree]= Lock;
preserve[Shift+Lock+LevelThree]= Lock;
불행하게도 Archwiki(매우 훌륭한 xkb 구성 가이드가 있음)나 xkb의 공식 웹사이트(일반적으로 정보가 많지 않음)에는 이에 대한 정보가 없는 것 같습니다.
답변1
XFree86은 이를 기록합니다.새로운 레이아웃을 정의하여 XKB 구성을 더욱 향상시키는 방법. 독자의 편의를 위해 관련 발췌문을 복제했습니다.
일반적으로 목록에 도입된 모든 수정자는
modifiers=<list of modifiers>
교대 근무 수준 계산에 사용된 후 삭제됩니다. 때때로 이것은 바람직하지 않습니다. 교대 계산에 수정자를 사용하고 싶지만 버리고 싶지 않은 경우 에 나열할 수 있습니다preserve[<combination of modifiers>]=<list of modifiers>
. 즉, 특정 조합에 대해 나열된 모든 수정자가 보존됩니다. Lock 수정자가 유지되면 결과 기호는 교대 수준 계산에 사용되었는지 여부에 관계없이 내부 대문자 루틴으로 전달됩니다.