目前,我可以在按住大写字母的同时暂时将键盘布局从美式切换为丹麦语,并使用 alt+space 永久切换,使用以下命令:
setxkbmap -option "grp:caps_switch,grp:alt_space_toggle" -layout "us,dk"
但是,我还希望能够通过按住另一个修饰符(最好是 AltGR)来切换到希腊语布局(我的物理键盘布局是丹麦语,因此它有 AltGr),但我找不到使用setxkbmap
.选项似乎grp:*_switch
总是在前两种布局之间切换。这甚至可能吗setxkbmap
?或者有其他工具可以让我做到这一点吗?
编辑: 由于现有工具似乎无法实现我想要的功能,因此我创建了一个自定义键盘布局,在第三层和第四层上同时包含希腊字母和丹麦语特殊字母(通常使用 AltGr 和 AltGr+shift 访问)。然后我将大写锁定和 AltGr 指定为第三层修饰符。这个解决方案之所以可行,是因为我需要的丹麦键和希腊键之间碰巧没有重叠,因此我可以将它们放在同一层上。如果有人正在阅读本文并希望能够在三种不同的完整布局之间切换,我认为通过添加第五个键盘层也是可能的。
答案1
您可以通过添加以下内容将美国切换为丹麦语再切换为希腊语:
-layout "us,dk,gr"
喜欢这个:setxkbmap -model logicordless -layout "us,dk,gr" -option "grp:alt_shift_toggle"
或编辑/etc/X11/xorg.conf.d/90-custom-kbd.conf
Section "InputClass"
Identifier "Logitech Cordless"
MatchIsKeyboard "on"
Option "XkbModel" "logicordless"
Option "XkbLayout" "us,dk,gr"
Option "XKbOptions" "grp:alt_shift_toggle"
EndSection
参考号https://www.x.org/releases/X11R7.6/doc/xorg-docs/input/XKB-Config.html