Xkb在哪里获取其配置?


12

有没有办法查询从何处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 /肉桂

Answers:


10

是的,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):

在此处输入图片说明

在此处输入图片说明

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


嗨,谢谢您的回复。在dconf-editor中,我当前的设置似乎是[('xkb','us + altgr-intl'),('xkb','us + colemak')],所以它应该可以工作,不是吗?还是我需要第一个('xkb','us')?还有可能它仍在混乱。我可以阻止GNOME覆盖xkb设置吗?
rabipelais 2013年

它应该没有first就可以工作('xkb, 'us'),至少可以在我的安装上工作(添加它并查看它是否有区别也没有什么坏处)。如果仍然不起作用,那么您的某些方面肯定出了问题,就像我在Archlinux上一样,设置布局和选项对我来说也很好。另外,我认为您不能阻止Gnome覆盖xkb设置,因为它已硬编码到gnome-settings-daemon中
don_crissti

MMMM都没有用,我仍然得到坏的结果。但是,如果我将顺序更改为[('xkb','us + colemak'),('xkb','us + altgr-intl')],它将获得colemak配置(而不是altgr一个),但是setxkbmap -query只给出variant: colemak, 。一个错误,也许吗?我不知道可以向谁报告。
rabipelais 2013年

好的,我再次使用dvorak而不是colemak进行了尝试,并且成功了。我再次放了colemak,这次确实奏效了。非常感谢。
rabipelais 2013年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.