Сделайте встроенные терминальные цвета Gedit, соответствуют глобальной теме? (16.04)

Встроенный терминал Gedit на моих 16,04 сессиях не следует за темой человечности по умолчанию и, кажется, не настраивается всегда.

Более точно это следует за цветом username@hostname темы человечности (некоторый яркий зеленый), но фон является простым белым (должен быть 'баклажан'), и текст является черным (должно быть белым).

Эта проблема была решена для более ранних версий человечности, но в 16,04 вещах, кажись, изменились:

  • нет никакой записи Gedit в gconf-editor
  • редактирование непосредственно цветов в dconf-editor не имеет никакого эффекта вообще
  • очистка палитры плагина в запрещается, можно только ввести пустое []

Таким образом, это не дубликат: ни одно из более ранних решений не работает и, кажется, существует что-то характерное для 16,04 относительно этой проблемы. Мои впечатления - то, что существует проблема с путем gconf настройки обрабатываются, возможно, ошибка в терминальном сменном сценарии terminal.py (расположенный в /usr/lib/x86_64-linux-gnu/gedit/plugins) но это превышает мою компетентность, таким образом, любая справка приветствуется.

1
задан 13 April 2017 в 15:24

1 ответ

Из этого ответа пользователя muru я нашел обходной путь, который сработал для меня. Сначала найдите скрипт Python terminal.py, расположенный в /usr/lib/x86_64-linux-gnu/gedit/plugins/. Или вы можете ввести команду locate terminal.py в терминале Ubuntu. В этом скрипте Python вы можете найти следующий блок кода:

def get_profile_settings(self):
    profiles = self.settings_try_new("org.gnome.Terminal.ProfilesList")

    if not profiles:
        default_path = "/org/gnome/terminal/legacy/profiles:/:" + profiles.get_string("default") + "/"
        settings = Gio.Settings.new_with_path("org.gnome.Terminal.Legacy.Profile",
                                              default_path)
    else:
        settings = Gio.Settings.new("org.gnome.gedit.plugins.terminal")

    return settings

Теперь измените его на:

def get_profile_settings(self):
    profiles = self.settings_try_new("org.gnome.Terminal.ProfilesList")

#    if not profiles:
#        default_path = "/org/gnome/terminal/legacy/profiles:/:" + profiles.get_string("default") + "/"
#        settings = Gio.Settings.new_with_path("org.gnome.Terminal.Legacy.Profile",
#                                              default_path)
#    else:

    settings = Gio.Settings.new("org.gnome.gedit.plugins.terminal")

    return settings

Теперь настройки, введенные через dconf-editor, должны работать. Имейте в виду, что вам, возможно, придется изменить его в будущем, если пакет gedit-plugins будет обновлен.

2
ответ дан 7 December 2019 в 13:38

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

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