Jak dodać ramkę wokół okien, ale zachować bieżący motyw?

24

Wydaje mi się, że żyję w terminalu - w rzeczywistości wiele terminali.

Uwielbiam także motyw Ambiance - ale nowe okna bez obramowania nie zapewniają wizualnego zróżnicowania, do którego jestem przyzwyczajony (te same czarne okna wydają się zlewać ze sobą).

wprowadź opis zdjęcia tutaj

Tak więc na moje pytanie - jak dodać z powrotem ramkę pojedynczego piksela dla okien, która znajduje się we wcześniejszych wersjach Ubuntu?

Chcę zachować ogólny motyw Ambiance, ponieważ wygląda dobrze i nie chcę przełączać się na inny motyw.

wprowadź opis zdjęcia tutaj


Teraz wiem, że mogę zmodyfikować motyw Ubuntu Ambiance w następujący sposób:

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

Następnie przełączając opcje motywu w Ustawieniach - Wygląd pobiera zmiany w motywie w folderze .themes.

Zakładam, że muszę zmienić jeden z plików .css, ale nie wiem, który.

Patrzyłem również na to pytanie, ale rozwiązania tam nie działają dla 14.04. Patrzyłem też na wiki społeczności, ale raczej zagubiłem się, próbując dowiedzieć się, który z nich dotyczy mojej sytuacji.

fossfreedom
źródło

Odpowiedzi:

20

Plik jest /usr/share/themes/Ambiance/gtk-3.0/apps/unity.css

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

wyloguj się i zaloguj ponownie, aby zobaczyć zmiany.

Dlatego w kopii lokalnej wpisz „1px 1px 1px;” zmiana w pliku~/.themes/Ambiance/gtk-3.0/apps/unity.css

Cieszyć się! :)

Anders FU Kiær
źródło
2
geniusz - na zdrowie!
fossfreedom
2
Dodając do odpowiedzi Andersa, po edycji w /usr/share/themes/Ambiance/gtk-3.0/apps/unity.csscelu ustawienia -UnityDecoration-extents: 28px 1px 1px 1px;, możesz wprowadzić zmiany w bieżącej sesji, otwierając aplikację „Wygląd”, zmień motyw na Promieniowanie i ponownie w Ambiance . Nie musisz się ponownie wylogowywać / logować.
AlejandroVD,
Nie mogę tego zrobić z Ubuntu 15.04 - jakieś pomysły? (granice pozostają takie same, nawet przy przełączaniu tematów)
laktak
Korzystam z rezerwowej wersji Metacity (z innych powodów) i znalazłem tutaj odpowiedź : w przypadku metacity edytuj metacity-1/metacity-theme-1.xmlzamiast tego.
Reinier Post
Musiałem dodatkowo dodać kolor tła i obraz tła: brak. Zrobiłem to w /usr/share/themes/Ambiance/gtk-3.0/apps/gnome-terminal.css i użyłem UnityDecoration {-UnityDecoration-extents: 28px 1px 1px 1px; kolor tła: #fff; obraz w tle: brak; }
Matt DiMeo
10

Zauważ, że wszystkie zmiany sugerowane przez innych, które dotyczą edycji pliku systemowego, /usr/share/themes/Ambiance/gtk-3.0/apps/unity.cssmożna wykonać bez takiej edycji. Zamiast tego po prostu umieść żądane zmiany we własnym pliku (który tworzysz) ~/.config/gtk-3.0/gtk.css, które będą miały pierwszeństwo przed plikiem systemowym.

Przykładowa zawartość (np. Cały plik ~/.config/gtk-3.0/gtk.css ) ...

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

... może być konieczne wylogowanie się i ponowne zalogowanie, aby to zadziałało.

Zauważ też, że jeśli okno terminalu ma otwarte co najmniej dwie zakładki, to Ambiance (lub Unity?) Już umieści wokół terminalu średnią grubą ramkę. ( ctrl- shift- totwiera kolejną kartę.)

Russ Lyons
źródło
2
Ponieważ odpowiedzi poruszają się w górę i w dół na liście pod pytaniem, po prostu powiedzenie czegoś w wierszu „wszystkie powyższe” może być mylące. Być może najlepiej byłoby odnieść się do konkretnej odpowiedzi, takiej jak udzielona przez @someone, aby być bardziej szczegółowym.
Graham,
2
@Graham To jest rzeczywiście lepsze, ale dla dodatkowej uwagi ludzie również zmieniają nazwy użytkowników. Sugeruję więc również linkowanie w odniesieniu do odpowiedzi. ( Link udostępniania pod każdym postem ułatwia to.)
Eliah Kagan,
2
To jest właściwy sposób, aby to zrobić! Inne rozwiązania są nie do utrzymania.
Reinier Post,
Teraz, gdyby tylko coś zrobił :-(
Reinier Post
@ ReinierPost Nie jestem pewien, do kogo skierowany jest Twój komentarz ani co to znaczy, ale zadziałało dla mnie i nadal działa.
Russ Lyons,
6

Opierając się na odpowiedzi Andersa, jeśli chcesz mieć ładną, subtelną ciemną linię zamiast domyślnej brzydkiej jasnej / gradientowej linii (tylko dlatego, że możesz użyć gradientu, nie oznacza to, że powinieneś, Ubuntu!), Edytuj /usr/share/themes/Ambiance/gtk-3.0/apps/unity.csstak:

Ustaw zakresy UnityDecoration jak w odpowiedzi Andersa:

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

Zmienić background-imagesię nonew lewo / w prawo, i zmienić odcień koloru tła z 0,7 do 0,4 w lewo / w prawo i na dole:

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);
}

Opcjonalnie dostosuj 0,4 do swoich preferencji jasności.

Po zmianie plików możesz się wylogować i zalogować ponownie lub po prostu otworzyć okno dialogowe Wygląd i zmienić motyw z, a następnie z powrotem na, Ambience.

Oto wynik (może być konieczne wyświetlenie na 100%, aby zobaczyć obramowania, mają one tylko 1px grubości):

Granice motywów Ubuntu

Jeff Ward
źródło
Link do mojej odpowiedzi dotyczącej granic w 17.10/ 18.04- askubuntu.com/a/1135363/159633
Jeff Ward
5

Zalecam, abyś rozważył pozostawienie domyślnego folderu / usrshare / themes / Ambiance w stanie, w jakim się znajduje (do wglądu w przypadku, gdyby przypadkowo go zablokowałeś).

Wygląda na to, że Gtk3 przyjmuje nazwę motywu według nazwy katalogu. Dlatego może być lepiej skopiować / usr / share / themes / Ambiance na inną nazwę, taką jak / usr / share / themes / MyAmbiance i tam utworzyć spersonalizowany motyw.

Jeśli chcesz wersję dla jednego użytkownika, możesz również skopiować motyw do ~ / .themes i mieć tam dostęp do preferowanej wersji.

LD James
źródło
4

Podniosłam Russ Lyons odpowiedź i chcą pokazać, jak to działa dla mnie ( Ubuntu 16.04 ):

Zostawiłem poniżej oryginalne pliki motywów /usr/share/themes/Ambiancei niczego tam nie zmieniłem. Zgadzam się, że zmiana plików systemowych jest zawsze złym pomysłem z kilku powodów.

Utworzyłem ~/.config/gtk-3.0/gtk.cssz następującą zawartością:

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

Nic więcej.

Po wylogowaniu mam teraz małe obwódki wokół okien terminala.

PerlDuck
źródło
Dziękujemy za wyjaśnienie postu @RussLyons bardziej konkretnym przykładem. Przekazałem twoje informacje do jego odpowiedzi i dałem ci głos za pomoc, której brakowało w oryginalnej odpowiedzi RussLyons.
phonetagger
3

Czy lubisz kolorowe obramowanie?

 wprowadź opis zdjęcia tutaj


  • Edytuj /usr/share/themes/Ambiance/gtk-3.0/apps/unity.cssplik i
  • Skomentuj ich bieżącą background-colorwartość ( /* shade (@bg_color, 0.7); */)
  • Następnie zmień background-colorswój ulubiony kolor (kolor z kodem szesnastkowym )
    w dolnej, lewej i prawej (moja jest #ff0080):
    UnityDecoration.bottom {
        obraz w tle: brak;
        kolor tła: # ff0080; / * cień (@bg_color, 0,7); * /
    }

    UnityDecoration.left,
    UnityDecoration.right {
        kolor tła: # ff0080; / * cień (@bg_color, 0,7); * /
        ...
  • Zapisz plik i wyloguj się / zaloguj ponownie i zobacz magix.
αғsнιη
źródło