어떤 이유로 우분투는 현재 Super와 Hyper를 Mod4에 할당합니다. 이것을 / usr / share / X11 / xkb / symbols / pc에서 볼 수 있습니다 :
key <SUPR> { [ NoSymbol, Super_L ] };
modifier_map Mod4 { <SUPR> };
key <HYPR> { [ NoSymbol, Hyper_L ] };
modifier_map Mod4 { <HYPR> };
루트를 변경하거나 시스템 파일을 수정할 필요없이 별도의 수정 자에 super 및 hyper를 배치하도록 이것을 변경할 수있었습니다. 나는 확실히 xkb 전문가가 아니기 때문에 이것이 최선의 방법인지 확실하지 않지만 그것은 나를 위해 신뢰할 수있는 방법입니다.
먼저 로컬 심볼 파일을 만듭니다. $ {HOME} /. config / xkb / symbols / local에 광산이 있습니다. Super는 Mod3에, Hyper는 Mod4에 할당합니다.
default partial modifier_keys
xkb_symbols "superhyper" {
modifier_map Mod3 { Super_L, Super_R };
key <SUPR> { [ NoSymbol, Super_L ] };
modifier_map Mod3 { <SUPR> };
key <HYPR> { [ NoSymbol, Hyper_L ] };
modifier_map Mod4 { <HYPR> };
};
그런 다음 기존지도를 다시 컴파일하여 "로컬"을 추가하십시오.
setxkbmap -print | sed -e '/xkb_symbols/s/"[[:space:]]/+local&/' | xkbcomp -I${HOME}/.config/xkb - ${DISPLAY}
로그인 할 때 실행할 스크립트에 넣으십시오. 일반 사용자로 실행할 수 있습니다.