控制台键盘映射的 shift altgr 组合

控制台键盘映射的 shift altgr 组合

我正在使用 Artix Linux 和 OpenRC。

我想定义一个自定义控制台键盘映射以通常使用美国设计,但为德语变音添加一些额外的功能。以下确实有效:

/usr/share/keymaps/i386/qwerty/mymap.map

include "us.map"

altgr keycode 30 = adiaeresis

按照描述激活rc-update add keymaps boot/rc-service keymaps restart这里

有了这些配置,当我按 AltGr+a 时,ä就会按预期打印。

我想对 AltGr+Shift+a 执行相同的操作来生成Ä.但是,将该行添加 shift altgr keycode 30 = Adiaeresis到我的键盘映射中,然后重新启动服务会产生以下错误:

Setting keyboard mode [UTF-8] ...            [ ok ]
Loading key mappings [mymap] ...
adding map 3 violates explicit keymaps line
Error leading key mappings                   [ !! ]
ERROR: keymaps failed to start

这告诉我什么以及我该如何解决它?

altgr shift keycode 30 = Adiaeresis具有相同的结果。

我还尝试将现有行修改为altgr keycode 30 = adiaeresis Adiaeresis,但这会产生syntax error, unexpected LITERAL, expecting EOL.

我用作为参考,但我发现很难阅读和解释。

答案1

好吧,我找到了另一种方法来声明它有效:键盘映射手册页中描述的数字系统。请注意,在/usr/share/keymaps/i386/qwerty/us.map.gz(unpacked) 中,有一行keymaps 0-2,4-6,8-9,12省略了 3,这是我需要的 (Shift+AltGr)。所以我的文件现在看起来像这样,并且工作正常:

include "us.map"

keymaps 0-3

keycode 22 = u U udiaeresis Udiaeresis
keycode 24 = o O odiaeresis Odiaeresis
keycode 30 = a A adiaeresis Adiaeresis
keycode 31 = s S ssharp

但我仍然不明白问题中的错误。

相关内容