xmodmap shift + keycode 生成 keysym

xmodmap shift + keycode 生成 keysym

关于如何使用 xmodmap 将修饰符 + 某个键绑定到新键的示例似乎很少。

例如,我想绑定 left Shift(keycode 50) + `(keycode 21) 以发出重音字符:

`

这是挪威语键盘的正常行为,但在 Macbook Pro(运行 Linux)上则不然。

我正在使用 xev 来获取键码,我可以成功映射单个按键(在我找不到的另一篇文章的帮助下)以获取必要的其他键,例如以这种方式退格和美元符号:

keycode 134 = ISO_Level3_Shift Multi_key ISO_Level3_Shift Multi_key
keycode 21 = backslash bar

然而我该怎么办:

keycode 50 + keycode 21 = Grave character

这不是正确的语法,但它应该使我想要的清楚。

一般来说,像shift这样的修饰键在语法中如何正确使用?只能组合使用修饰键吗?

我尝试过简单的事情,例如“keycode 50 keycode 21 = A”和“keycode 50 + keycode 21 = A”。 (“A”不是我想要的字符,我只是将其用于测试目的)。

答案1

调和弦(如Shift+ \)是通过将一个键与一组修饰符组合来指定的,而不是直接组合键。因此,您需要指定的是“键码 21 加上 Shift 修饰符”,而不是“键码 50 加键码 21”。只有修饰符可以组合使用。此外,xmodmap 有一定的局限性:您需要同时指定特定基调的所有调和弦。

keycode 21 = backslash grave acute

Shift等号后的第一个键符号(字符或功能键名称)是与裸键对应的键,然后是与AltGr、然后是Shift+对应的键AltGr

如果你想要死键,那么将其更改为

keycode 21 = backslash dead_grave dead_acute

不过,如果您想要标准的挪威布局,您应该能够在桌面环境的配置界面中选择它,或者使用XKB— setxkbmap -layout no切换到挪威布局。

相关内容