Как добавить рамку вокруг окон, но сохранить текущую тему?

24

Кажется, я живу в терминале - многие терминалы на самом деле.

Мне также нравится тема Ambiance, но новые окна без полей не обеспечивают визуального различия, к которому я привык (одни и те же черные окна смешиваются друг с другом).

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

Таким образом, на мой вопрос - как мне добавить однопиксельную границу для окон, найденную в более ранних версиях Ubuntu?

Я хочу сохранить общую тему Ambiance, так как она выглядит хорошо, и я не хочу переходить к другой теме.

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


Теперь я знаю, что могу изменить тему Ubuntu Ambiance следующим образом:

mkdir ~/.themes
cp -r /usr/share/themes/Ambiance .themes

Затем, переключаясь между параметрами темы в Настройках - Внешний вид, вы увидите изменения в теме в папке .themes.

Я предполагаю, что мне нужно изменить один из файлов .css, но я не знаю, какой именно.

Я также смотрел на эти вопросы и ответы, но решения там не работают для 14.04. Я также посмотрел на вики сообщества, но заблудился, пытаясь выяснить, какое из них применимо к моей ситуации.

fossfreedom
источник

Ответы:

20

Файл /usr/share/themes/Ambiance/gtk-3.0/apps/unity.css

change
      -UnityDecoration-extents: 28px 0 0 0;
to
      -UnityDecoration-extents: 28px 1px 1px 1px;

Выйдите из системы и снова войдите в систему, чтобы увидеть изменения.

Таким образом, в вашей локальной копии сделайте «1px 1px 1px;» изменить в файле~/.themes/Ambiance/gtk-3.0/apps/unity.css

Наслаждайтесь! :)

Андерс FU Kiær
источник
2
гений - ура!
fossfreedom
2
В дополнение к ответу Андерса, после внесения изменений /usr/share/themes/Ambiance/gtk-3.0/apps/unity.cssв настройку -UnityDecoration-extents: 28px 1px 1px 1px;вы можете применить изменения к текущему сеансу, открыв приложение «Внешний вид», изменив тему на « Сияние» и снова вернувшись к « Состоянию» . Нет необходимости выходить из системы / войти снова.
AlejandroVD
Не можете заставить это работать с Ubuntu 15.04 - есть идеи? (границы остаются неизменными даже при переключении между темами)
Лактак
Я использую запасной вариант Metacity (по другим причинам) и нашел свой ответ здесь : для metacity metacity-1/metacity-theme-1.xmlвместо этого отредактируйте .
Reinier Post
Мне пришлось дополнительно добавить background-color и background-image: нет. Я сделал это в /usr/share/themes/Ambiance/gtk-3.0/apps/gnome-terminal.css и использовал UnityDecoration {-UnityDecoration-extents: 28px 1px 1px 1px; цвет фона: #fff; фоновое изображение: нет; }
Мэтт ДиМео
10

Обратите внимание, что все изменения, предложенные другими пользователями, которые включают редактирование системного файла, /usr/share/themes/Ambiance/gtk-3.0/apps/unity.cssмогут быть выполнены без такого редактирования. Вместо этого просто поместите нужные изменения в ваш собственный файл (который вы создаете) ~/.config/gtk-3.0/gtk.css, который будет иметь приоритет над системным файлом.

Пример содержимого (например, весь файл ~/.config/gtk-3.0/gtk.css ) ...

/* Decorations */
UnityDecoration {
    -UnityDecoration-extents: 28px 1px 1px 1px;
}

... возможно, вам придется выйти и снова войти, чтобы это вступило в силу.

Также обратите внимание, что если в окне терминала открыто хотя бы две вкладки, то Ambiance (или Unity?) Уже будет помещать рамку средней толщины вокруг терминала. ( ctrl- shift- tоткрывает другую вкладку.)

Русь Лайонс
источник
2
Так как ответы перемещаются вверх и вниз в списке под вопросом, просто сказать что-то в строках «все вышеперечисленное» может привести к путанице. Возможно, было бы лучше обратиться к конкретному ответу, например, предоставленному @someone, чтобы быть более конкретным.
Грэм
2
@Graham Это действительно лучше, но, как вторичный фактор, люди тоже меняют свои имена пользователей. Поэтому я предлагаю также ссылки, когда ссылаемся на ответы. (The доля ссылку под каждым сообщением делает это легко.)
Eliah Каган
2
Это правильный способ сделать это! Другие решения не поддерживаются.
Reinier Post
Теперь, если бы он только сделал что-нибудь :-(
Reinier Post
@ReinierPost Я не уверен, кому адресован ваш комментарий, и что он означает, но он работал для меня и продолжает работать.
Расс Лионс
6

Основываясь на ответе Андерса, если вы хотите получить красивую тонкую темную линию вместо уродливой светлой / градиентной линии по умолчанию (просто потому, что вы можете использовать градиент, это не значит, что вы должны это делать, Ubuntu!), Отредактируйте /usr/share/themes/Ambiance/gtk-3.0/apps/unity.cssтак:

Установите экстенты UnityDecoration, как в ответе Андерса:

-UnityDecoration-extents: 28px 1px 1px 1px;

Измените background-imageзначение noneв слева / справа и измените оттенок фона с 0,7 до 0,4 слева / справа и снизу:

UnityDecoration.left,
UnityDecoration.right {
    background-color: shade (@bg_color, 0.4);
    background-size: 1px 70px;
    background-repeat: repeat-x;
    background-image: none;
}

UnityDecoration.left:backdrop,
UnityDecoration.right:backdrop {
    /* start color: mix of the top border color and bg-image gradient end */
    background-color: shade (@bg_color, 0.4);
    background-image: none;
}

UnityDecoration.bottom {
    background-image: none;
    background-color: shade (@bg_color, 0.4);
}

При желании, отрегулируйте 0,4 в соответствии с вашими предпочтениями яркости.

После изменения файлов вы можете либо выйти из системы, либо снова войти в нее, либо просто открыть диалоговое окно «Внешний вид» и изменить тему, а затем вернуться в среду.

Вот результат (может потребоваться просмотреть на 100%, чтобы увидеть границы, они имеют толщину всего 1 пиксель):

Ubuntu Ambience Theme Borders

Джефф Уорд
источник
Ссылка на мой ответ для границ в 17.10/ 18.04- askubuntu.com/a/1135363/159633
Джефф Уорд
5

Я рекомендую вам оставить папку по умолчанию / usrshare / themes / Ambiance как есть (для дальнейшего использования в случае непреднамеренного коберса).

Похоже, Gtk3 берет название темы по имени каталога. Поэтому может быть лучше скопировать / usr / share / themes / Ambiance с другим именем, например / usr / share / themes / MyAmbiance, и создать там свою персонализированную тему.

Если вам нужна версия для каждого пользователя, вы также можете скопировать тему в ~ / .themes и получить доступ к предпочитаемой версии.

Л.Д. Джеймс
источник
4

Я взял ответ Расс Лайонс и хочу показать, как это работает для меня ( Ubuntu 16.04 ):

Я оставил одни оригинальные файлы темы ниже /usr/share/themes/Ambianceи ничего не изменил там. Я согласен, что смена системных файлов всегда плохая идея по нескольким причинам.

Я создал ~/.config/gtk-3.0/gtk.cssсо следующим содержанием:

/* Decorations */
UnityDecoration {
    -UnityDecoration-extents: 28px 1px 1px 1px;
}

Ничего больше.

После выхода из системы у меня теперь есть крошечные границы вокруг окон моего терминала.

PerlDuck
источник
Спасибо за разъяснение поста @RussLyons с более конкретным примером. Я перенес вашу информацию в его ответ и дал вам отзыв о полезности, которой не хватало в первоначальном ответе RussLyons.
Phonetagger
3

Вам нравится цветная рамка?

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


  • Редактировать /usr/share/themes/Ambiance/gtk-3.0/apps/unity.cssфайл и
  • Прокомментируйте их текущее background-colorзначение ( /* shade (@bg_color, 0.7); */)
  • Затем измените background-colorваш любимый цвет (цвет с шестнадцатеричным кодом )
    внизу, слева и справа (мой есть #ff0080):
    UnityDecoration.bottom {
        фоновое изображение: нет;
        цвет фона: # ff0080; / * тень (@bg_color, 0,7); * /
    }

    UnityDecoration.left,
    UnityDecoration.right {
        цвет фона: # ff0080; / * тень (@bg_color, 0,7); * /
        ...
  • Сохраните файл и выйдите из системы / войдите снова и увидите magix.
αғsнιη
источник