xkb에서 Caps Lock 및 Shift + Caps Lock 모두 다시 매핑

Caps Lock이 Compose 키에 매핑되고 Shift + Caps Lock 기능이 전통적인 Caps Lock과 같이 xkb를 구성하려고합니다. 나는 다음과 같은 새로운 파일에 다음을 넣었다 /usr/share/X11/xkb/symbols/gdwatson.

partial modifier keys
xkb_symbols "compose" {
    key <CAPS> {
        type[Group1] = "TWO_LEVEL",
        symbols[Group1] = [ Multi_key, Caps_Lock ]
    };
};

그런 다음을 실행 setxkbmap -symbols 'pc+us+gdwatson(compose)'하여 성공적으로 완료했습니다. Caps Lock은 편지 쓰기로 작동하지만 Shift + Caps Lock은 Caps Lock 대신 편지 쓰기로 작동합니다. xkbcomp :0.0다음을 보여줍니다.

key <CAPS> {
    type= "TWO_LEVEL",
    symbols[Group1]= [       Multi_key,       Multi_key ]
};

두 번째 레벨 심볼 매핑은 어떤 이유로 든 첫 번째 값을 복제하려고합니다. 누구든지 내가 잘못한 점이나 문제를 해결하는 방법을 알려주기에 충분한 xkb-fu를 가지고 있습니까?



답변

이것은 당신이 찾고있는 것을 성취하는 것 같습니다.

partial modifier_keys
xkb_symbols "compose" {
    key <CAPS> {
        type[Group1] = "TWO_LEVEL",
        symbols[Group1] = [ Multi_key, Caps_Lock ],
        actions[Group1] = [ NoAction(), LockMods(modifiers=Lock) ]
    };
};

XKB를 다룰 때 다음 리소스는 매우 중요합니다 (향후 보증을 위해 이러한 페이지의 WayBack Machine 미러에 링크했습니다).


답변