Ainda tendo alguns (eu acho que não relacionados) problemas com o XKB, mas eu tenho um modificador Hyper mapeado, e acredito que as configurações relevantes são estas:
compat:
virtual_modifiers Shift,Control,Meta,Super,Hyper,AltGr;
interpret Hyper_R { action = SetMods(modifiers=Mod4); };
símbolos:
modifier_map Mod4 { <DELE> }; // Hyper
key <DELE> { type="UNMODIFIED", [ Hyper_R ], repeat=no };
então algo como
key <K_36> { type = "SHIFT+HYPER", [ b, B,
XF86AudioRaiseVolume, XF86AudioRaiseVolume ] };
tipos
virtual_modifiers Meta,AltGr,Super,Hyper,Mod5;
não precisa do Mod5 lá, a menos que você esteja usando também; mas da mesma forma, omitir Shift & Controle aqui…
type "SHIFT+HYPER" {
modifiers= Shift+Hyper;
map[Shift]= Level2;
map[Hyper]= Level3;
map[Shift+Hyper]= Level4;
};
Por que vale a pena, eu tive dificuldades muito, muito piores tentando redefinir a geometria e códigos-chave do que valeu a pena, e acabei revertendo para os símbolos pc105
em <AE01>
, mesmo que muitos deles são ridiculamente errados. (por exemplo, <DELE>
para minha chave Hyper)
PS. Para um exemplo prático, consulte o link …