我在OpenRC中使用Artix。
我想定义一个自定义控制台密钥映射,一般使用美国设计,但添加一些额外的功能,德国货币。以下是行之有效的办法:
/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。
我使用这作为参考,但我发现很难阅读和解释。
发布于 2020-07-02 15:40:10
好的,我找到了另一种方法来声明它是可行的:键映射手册中描述的数字系统。请注意,在/usr/share/keymaps/i386/qwerty/us.map.gz (未打包)中,有一行keymaps 0-2,4-6,8-9,12,ommitting 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不过,我还是不明白问题中的错误。
https://unix.stackexchange.com/questions/596329
复制相似问题