我正在尝试创建单手键盘布局,并希望Hyper在按下某些键时使用它来生成特殊键。
例如,当我按下Hyper_L和 时B,我希望 XKB 生成XF86AudioRaiseVolume.
相关部分来自custom_2.kbd
(完整代码在http://pastebin.com/gm8cggn3):
xkb_keycodes {
<K_36> = 54; // b B XF86AudioRaiseVolume
<K_85> = 133; // Hyper_L
};
xkb_symbols {
key <K_36> { type = "HYPER_LEVEL", [ b, B, XF86AudioRaiseVolume ] };
key <K_85> { type = "ONE_LEVEL", [ Hyper_L ] };
};
xkb_compatibility {
interpret Hyper_L { action = SetMods(modifiers=Hyper); };
};
xkb_types {
type "HYPER_LEVEL" {
modifiers= Shift+Hyper;
map[Shift]= Level2;
map[Hyper]= Level3;
map[Shift+Hyper]= …
Run Code Online (Sandbox Code Playgroud)