我有 Happy Hacking 键盘,除了 ctrl 和 meta 之外,它只有一对额外的修饰符。我想将它们用于 super 和 hyper,并且我不希望一个用于 super,另一个用于 hyper。理想的解决方案是将 hyper 设置为默认值(这在 Emacs 中很有用),并将移位的 hyper 转变为 super。因此,例如,super+shift 将通过以下方式产生:按下 Shift、按下 hyper、释放 Shift、按下 Shift。理想情况下,shift+hyper 应该立即忘记 Shift,因此 Shift+super 也可以通过以下方式生成:按 lshift、按 hyper、按 rshift。 hyper+shift 可以通过在 shift 之前按 hyper 来产生。
我尝试过使用 xkb 来做到这一点,但它的文档很少并且非常复杂。一个问题是,简单地将 hyper 放在第 1 级,将 super 放在第 2 级,默认情况下会在第 1 级产生 hyper+super。有办法吗?