Keyboard-Shortcuts
控制台鍵盤映射的 shift altgr 組合
我正在使用帶有 OpenRC 的 Artix Linux。
我想定義一個自定義控制台鍵盤映射以通常使用美國設計,但為德語變音符號添加一些額外功能。以下確實有效:
/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
.我將此作為參考,但我發現它很難閱讀和解釋。
好的,我找到了另一種聲明它的方法:鍵盤映射手冊頁中描述的數字系統。請注意,在
/usr/share/keymaps/i386/qwerty/us.map.gz
(未打包的)中,有一行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
不過,我仍然不明白問題中的錯誤。