раскладка клавиатуры xorg.conf проиграла, когда менеджер окон запускается

Я запускаю Ubuntu 15.04 с xdm в качестве менеджера по оформлению и пользовательской установки мультимонитора и клавиатуры, определенной в xorg.conf.

xdm берет конфигурацию клавиатуры правильно, устанавливая расположение на "ГБ", и с ограничениями и подкачанными клавишами Ctrl.

Однако, когда я запускаю Производителя Окон или любого другого менеджера по оформлению, я нахожу, что моя раскладка клавиатуры возвращается в США. ctrl/caps ключи остаются подкачанными все же.

xorg.conf:

Section "Monitor"
        Identifier   "DP1"
EndSection

Section "Monitor"
        Identifier   "HDMI2"
        Option       "LeftOf" "DP1"
        Option       "Rotate" "left"
EndSection

Section "Device"
        Identifier "intel"
        Driver     "intel"
#       Option     "TearFree" "true"
        Option     "Monitor-DP1" "DP1"
        Option     "Monitor-HDMI2" "HDMI2"
EndSection

Section "InputClass"
        Identifier      "caps as ctrl sun gb keyboard"
        Driver          "evdev"
        MatchIsKeyboard "yes"
        Option          "XkbLayout" "gb"
        Option          "XkbModel" "sun_type7_usb"
        Option          "XkbRules" "xorg"
        Option          "XkbOptions" "ctrl:swapcaps"
EndSection
2
задан 9 September 2015 в 13:22

5 ответов

Из ваших комментариев к другим ответам я вижу, что вы, возможно, не запускаете демон настроек. В большинстве DesktopEnvironments (таких как Gnome, KDE и т. Д.) Работает служба, позволяющая отслеживать каждую небольшую настройку для вас! Но WindowManager (например, WindowMaker, i3, awesome и т. Д.) Обычно не имеют этой функции.

Если вы запускаете WindowManager из ~/.xsession или другого самодельного скрипта, вам следует установить настройки клавиатуры для этого конкретного сеанса. Настроить раскладку клавиатуры можно с помощью setxkbmap из скрипта Xsession до строки, где вы запускаете WindowManager.

setxkbmap -model sun_type7_usb -layout gb -option ctrl:swapcaps

В качестве информации о бонусе вы можете получить все доступные модели, макеты и т. Д. Из этих команд:

localectl list-x11-keymap-models
localectl list-x11-keymap-layouts
localectl list-x11-keymap-variants [layout]
localectl list-x11-keymap-options

Эта информация была в основном найдена в ArchWiki , где Есть еще немного информации о клавиатурах в целом, хотя она может немного отличаться от Ubuntu.

2
ответ дан 2 December 2019 в 02:55
  1. Попробуйте редактирование /etc/default/keyboard

    XKBMODEL="sun_type7_usb"
    XKBLAYOUT="gb"
    XKBOPTIONS="ctrl:swapcaps"
    
  2. Для применения Перезагрузите или работайте:

    sudo udevadm trigger --subsystem-match=input --action=change
    

Ссылка: man keyboard

1
ответ дан 2 December 2019 в 02:55

Сделайте, чтобы Вы попробовали это:

    gsettings set org.gnome.setting-daemon.keyboard.layout KEY=active VALUE=true

и это могло бы хорошо работать этот путь.

0
ответ дан 2 December 2019 в 02:55
  • В Unity есть собственный демон настроек, который заботится о настройке макета и сбрасывает все предыдущие настройки Xorg.

    1. Проверьте текущую настройку:

      gsettings get org.gnome.desktop.input-sources xkb-options
      
    2. Затем добавьте ctrl:swapcaps к нему и установите его обратно.

      gsettings set org.gnome.desktop.input-sources xkb-options "['ctrl:swapcaps']"
      
    3. Установите макет на gb

      gsettings set org.gnome.desktop.input-sources sources [('xkb', 'gb')]
      
  • Если это не помогло, отключите клавиатуру в настройках демона

    gsettings set org.gnome.settings-daemon.plugins.keyboard active false
    

    Ссылка: Постоянно устанавливать параметры раскладки клавиатуры с помощью setxkbmap в gnome / unity

Кстати, вы можете использовать инструмент GUI вместо командной строки, если хотите, ищите dconf-editor

0
ответ дан 2 December 2019 в 02:55

Если смена раскладки работает на экране входа, но ломается после входа, значит, эти же ресурсы перехвачены сторонней программой. В моем случае это был демон ibus. Имеет собственные настройки макета. Я нашел его путем поиска среди открытых файлов по кодировке, так как решил, что эта программа должна использовать файлы кодировки:

lsof | grep -i CP1251 | awk '{напечатать $1}' | сортировать | uniq

(CP1251 - моя локаль по умолчанию :) utf-8 в вашем случае) Среди браузеров, openoffice, pulseaudio был обнаружен демон ibus. После его удаления раскладка перестала ломаться. (Его также можно перенастроить на неагрессивный режим работы)

1
ответ дан 13 April 2020 в 22:25

Другие вопросы по тегам:

Похожие вопросы: