Xkb 从哪里获取其配置?

Xkb 从哪里获取其配置?

有没有办法查询xkb从哪里获取其配置?在 ArchLinux 下我有/etc/X11/xorg.conf.d/00-keyboard.conf

Section "InputClass"
    Identifier "system-keyboard"
    MatchIsKeyboard "on"
    Option "XkbLayout" "us,us"
    Option "XkbVariant" "altgr-intl,colemak"
    Option "XKbOptions" "ctrl:nocaps,grp:alt_shift_toggle"
EndSection           

但当我开始时,如果我这样做setxkbmap -query,我只会得到

rules:      evdev
model:      evdev
layout:     us,us
variant:    altgr-intl,

因此,替代变体和选项都不会被识别(不用说,我无法更改布局)。如果我跑

setxkbmap -layout "us,us" -variant "altgr-intl,colemak" -option "ctrl:nocaps,grp:alt_shift_toggle"

我得到正确的

rules:      evdev
model:      evdev
layout:     us,us
variant:    altgr-intl,colemak
options:    ctrl:nocaps,grp:alt_shift_toggle

那么是否有可能有什么东西覆盖了我的配置?我正在运行 GNOME/Cinnamon

答案1

是的,Gnome 会覆盖这些xkb X设置。
您可以xkb使用 CLI 工具gsettings/dconf或通过 GUI 工具在 Gnome 中设置布局/选项dconf-editor
因此,使用gsettings打开终端并运行:

gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us'), ('xkb', 'us+altgr-intl'), ('xkb', 'us+colemak')]"

gsettings set org.gnome.desktop.input-sources xkb-options "['ctrl:nocaps','grp:alt_shift_toggle']"  

或者像这样启动dconf-editor并编辑(注意每个值都必须用引号引起来,并且多个值由 分隔comma+space):

在此输入图像描述

在此输入图像描述

两种方法应该产生相同的结果。

相关内容