Где 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 / Cinnamon

rabipelais
источник

Ответы:

10

Да, Gnome отменяет xkb Xнастройки.
Вы можете установить xkbмакет / параметры в Gnome, используя инструменты CLI gsettings/ dconfили инструмент GUI 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):

введите описание изображения здесь

и

введите описание изображения здесь

Оба метода должны давать одинаковые результаты.

don_crissti
источник
Привет, спасибо за ответ. В dconf-editor мои текущие настройки выглядят как [('xkb', 'us + altgr-intl'), ('xkb', 'us + colemak')], так что это должно работать, не так ли? Или мне нужно первое («xkb», «нас»)? Существует также вероятность того, что он все еще что-то испортил. Могу ли я остановить GNOME от переопределения настроек xkb?
Rabipelais
Он должен работать без первого ('xkb, 'us'), по крайней мере, он работает на моей установке (это не помешает добавить его и посмотреть, если это имеет какое-то значение). Если это все еще не работает, значит, что-то не так на вашей стороне, так как я тоже на Archlinux и настройка ваших макетов и опций отлично работает на моей стороне. Кроме того, я не думаю, что вы можете остановить Gnome от переопределения xkbнастроек, так как он жестко закодирован в gnome-settings-daemon
don_crissti
Мммм не работал в любом случае, я все еще получаю сломанный результат. Однако если я поменяю порядок на [('xkb', 'us + colemak'), ('xkb', 'us + altgr-intl')], он получит конфигурацию colemak (а не altgr), но setxkbmap -query дает только variant: colemak, . Возможно, ошибка? Я не знаю, кому я мог сообщить.
rabipelais
Хорошо, я попробовал это снова с dvorak вместо colemak, и это работало. Я снова положил колемак, и на этот раз все заработало ... странно. Большое спасибо.
Rabipelais