xkb 기호 파일에서 EIGHT_LEVEL_ALPHABETIC과 EIGHT_LEVEL의 차이점은 무엇입니까?

xkb 기호 파일에서 EIGHT_LEVEL_ALPHABETIC과 EIGHT_LEVEL의 차이점은 무엇입니까?

제목이 모든 것을 말해줍니다. 둘 사이의 차이점은 무엇입니까? 사용자 정의 8레이어 레이아웃을 생성할 때 언제 다른 레이어보다 하나를 선택해야 합니까?

상황에 맞게 다음은 partial alphanumeric_keys xkb_symbols "T3"xkb 기호 파일에서 발췌한 것입니다.de

    key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC";
    key <AB01> { [               y,               Y,           U203A,        NoSymbol,           U0292,           U01B7,   guillemotleft,        NoSymbol ] };
    key <AB02> { [               x,               X,  guillemotright,        NoSymbol, doublelowquotemark, singlelowquotemark, guillemotright,   NoSymbol ] };
    key <AB03> { [               c,               C,       copyright,        NoSymbol,            cent,       copyright,  Greek_horizbar,        NoSymbol ] };
    key <AB04> { [               v,               V,   guillemotleft,        NoSymbol, leftdoublequotemark, leftsinglequotemark,   U2039,        NoSymbol ] };
    key <AB05> { [               b,               B,           U2039,        NoSymbol, rightdoublequotemark, rightsinglequotemark, U203A,        NoSymbol ] };
    key <AB06> { [               n,               N,          endash,        NoSymbol,           U019E,           U0220,          endash,        NoSymbol ] };
    key <AB07> { [               m,               M,        Greek_mu,        NoSymbol,              mu,       masculine,          emdash,        NoSymbol ] };
    key.type[Group1] = "EIGHT_LEVEL";
    key <AB08> { [           comma,       semicolon,           U02BB,        NoSymbol,        ellipsis,        multiply,          dollar,        NoSymbol ] };
    key <AB09> { [          period,           colon,           U200C,        NoSymbol,  periodcentered,        division,      numbersign,        NoSymbol ] };
    key <AB10> { [           minus,      underscore,          hyphen,        NoSymbol,           U0140,           U013F,           U2011,        NoSymbol ] };

답변1

몇 가지 테스트를 거쳐 이러한 수준의 정의를 살펴본 후 차이점은 유형이 ALPHABETIC두 번째 수준으로 잠겨 있고 CAPS LOCK두 번째 수준이 아닌 수준은 누를 때만 도달할 수 있다는 것입니다.ALPHABETICSHIFT

다음 섹션을 참조하십시오 /usr/share/X11/xkb/types/level5. 오직 ALPHABETIC당신 안에서만 등을 찾을 수 map[Lock] = Level2;있습니다 map[Lock+LevelFive] = Level6;.

    type "EIGHT_LEVEL" {
    modifiers = Shift+LevelThree+LevelFive;
    map[None] = Level1;
    map[Shift] = Level2;
    map[LevelThree] = Level3;
    map[Shift+LevelThree] = Level4;
    map[LevelFive] = Level5;
    map[Shift+LevelFive] = Level6;
    map[LevelThree+LevelFive] = Level7;
    map[Shift+LevelThree+LevelFive] = Level8;
    level_name[Level1] = "Base";
    level_name[Level2] = "Shift";
    level_name[Level3] = "Alt Base";
    level_name[Level4] = "Shift Alt";
    level_name[Level5] = "X";
    level_name[Level6] = "X Shift";
    level_name[Level7] = "X Alt Base";
    level_name[Level8] = "X Shift Alt";
    };

    type "EIGHT_LEVEL_ALPHABETIC" {
    modifiers = Shift+Lock+LevelThree+LevelFive;
    map[None] = Level1;
    map[Shift] = Level2;
    map[Lock]  = Level2;
    map[LevelThree] = Level3;
    map[Shift+LevelThree] = Level4;
    map[Lock+LevelThree] =  Level4;
    map[Lock+Shift+LevelThree] = Level3;

    map[LevelFive] = Level5;
    map[Shift+LevelFive] = Level6;
    map[Lock+LevelFive]  = Level6;
    map[LevelThree+LevelFive] = Level7;
    map[Shift+LevelThree+LevelFive] = Level8;
    map[Lock+LevelThree+LevelFive] =  Level8;
    map[Lock+Shift+LevelThree+LevelFive] = Level7;

    level_name[Level1] = "Base";
    level_name[Level2] = "Shift";
    level_name[Level3] = "Alt Base";
    level_name[Level4] = "Shift Alt";
    level_name[Level5] = "X";
    level_name[Level6] = "X Shift";
    level_name[Level7] = "X Alt Base";
    level_name[Level8] = "X Shift Alt";
    };

관련 정보