我正在尝试xkb
使用默认的 4 个级别(或者我应该说 2 个级别?我真的不知道这些术语)来改进我的键盘布局。
当我打开括号时,我发现 xkb 的记录非常少(或者我不知道如何搜索)..有些人谈到级别,有些组,有些将级别定义为shift是第一个,AltGr是第二个其他人则认为基本字符是第一个,然后递增每个组合。我的意思是有很多不一致的地方..)
M无论如何,这是某些键盘中默认的 4 个按键“组合” :
// Pressing <M> <Shift+M> <AltGr+M> <Shift+AltGr+M>
key <AB07> { [ m , M , mu , mu ] }; // m M µ µ
是否可以添加其他修饰符?
例如,使用一个额外的修饰符,例如R CtrlI 可以有 6 种组合:
// Pressing <M> <Shift+M> <AltGr+M> <AltGr+Shift+M> <RCtrl+M> <RCtrl+Shift+M>
key <AB07> { [ m , M , mu , mu , comma , semicolon] };// m M µ µ , ;
或者甚至 8 种组合与所有三个修饰符..
事实上,某些文件中似乎已经存在symbol
带有关键字的8 级映射EIGHT_LEVEL
不过我不希望一把钥匙有 42 个组合。
相反,我只是想避免手指的尴尬组合,为此我更喜欢仅与“直接访问”进行有限的组合,如下所示:
// Pressing <M> <Shift+M> <AltGr+M> <RCtrl+M> <RWin>+M
key <AB07> { [ m , M , comma , semicolon , µ ] }; // m M , ; µ
我还想映射其他角色甚至动作(箭头、起始/结束、向上/向下翻页)与其他未使用的修饰符(大写锁定、数字锁定)
我怎样才能做到这一点 ?
非常感谢。
答案1
您可以使用它group
来实现“两次击键”的目标:
key <AB07> {
type[group1]= "FOUR_LEVEL",
type[group2]= "TWO_LEVEL_BIS",
symbols[group1]= [ m , M , comma , NoSymbol],
symbols[group2]= [ semicolon , µ ]
};
现在您必须type
TWO_LEVEL_BIS
使用所需的修饰符定义 for 。
值得了解的Mode_switch是增加实际组的键,因此请查看它的定义。