Hvordan fungerer GNOME -temaer

Hvordan fungerer GNOME -temaer

GNOME -temafilen er egentlig en CSS -fil; Temafilene beskriver hvordan skrivebordet ditt ser ut, men det er ikke alt. Den inneholder også kunstverkene som trengs for at det skal fungere. Du lager all konfigurasjonen din i CSS -filen til temaet ditt. En advarsel er at mye av utseendet kommer fra GTK 2.0 og GTK 3.0 temaer. Et annet problem er at standardoppsettet ikke tillater dine egne temaer, du må laste ned brukertemautvidelsen for å bruke ditt eget tema. Årsaken er at temafilene levert med distribusjonen din er samlet fra Gresource -filer. Dette integrerer temaene nærmere utviklingsprosessen, men har ulempen at det å lage dine egne krever mer programmeringsferdigheter. Dokumentasjon er også knapp, for brukere som er. Utviklingsdokumentasjon er rikelig.

Formatet på pakken

Når du vil endre GNOME -skrivebordet ditt, kan du gjøre det med temafiler som du velger mellom 'utseende' i Tweaks -grensesnittet. Her vil du oppdage at du kan velge mellom 'applikasjoner', 'markør', 'Icons' og 'Shell'. Dette gir deg all fleksibiliteten du trenger, men det kan se rart ut når du endrer Shell -temaet og ikke har noe applikasjonstema. For å løse dette, trenger du alle temaene for å matche. Mange temaer inneholder bare skallet eller bare GTK+ (applikasjon) delen.

Du kan også opprette dine egne ikoner og pakke dem i en standardfil. Du kan løpe inn på lignende problemer her. Hvis du har ikoner eller skrifter som ikke samsvarer med temaet ditt, ser det i beste fall dumt. I noen tilfeller vil tekst ikke være synlig fordi ikoner og bakgrunn er i samme farge.

Pakket filer

De mange filene, skriftene og dekorasjonene du trenger, er lagret i brukerkatalogene nedenfor.

Ikoner: pakk ut ikoner i ~/.ICONS -mappen GTK/Shell -tema: Unzip GTK og Shell -temaer i ~//.Tema mappemarkør: Pakk ut markørtemaer i ~/.ICONS mappefonter: Pakk ut skrifter i ~/.Fonter mappe

Et komplett tema har alle disse filene innebygd og inneholder en fil: indeks.tema. Filene påpeker alle filene for å sikre at du kan ha en ICONS Match Font -stil. Du vil også få applikasjonene til å se ut som om de samsvarer med hverandre.

GTKTHEME = Adwaita
Icontheme = adwaita
Cursortheme = adwaita
Markør = 24

Denne koden viser de forskjellige temaene du vil bruke. Det er flere detaljer for denne filen, så sørg for at du ser her når du bruker tema. På denne måten får du det beste utseendet for deg. For å bytte til det spesifikke temaet, må du endre verdiene en etter en.

Hva er filformatet?

I hvert tema har du en struktur av kataloger. Disse katalogene inneholder ressursene som CSS -filene dine peker på. Du bør bruke eksisterende standarder for å gjøre det lettere for brukere av temaet. Et godt eksempel er skogstema, treet er nedenfor.

Hjem/Matstage.Temaer/skogsmørke/
└── Gnome-shell
├── Common-Assets
│ ├── Dash
│ ├── meny
│ ├── Misc
│ ├── panel
│ └── bryter
├── mørkemessige på vei
│ ├── avkrysningsruten
│ ├── meny
│ ├── Misc
│ └── bryter
├── Gnome-shell.CSS
└── Readme.MD
12 kataloger, 2 filer

Her kan du se Gnome-Shell.CSS -fil. Disse filene har en tendens til å bli lange fordi de peker på alle elementer på skrivebordet. Imidlertid er det metode for galskapen, så følg med noen få eksempler. Koden bruker alle vanlige CSS -funksjoner, en prikk (.) for klasser og en hasj (#) for navngitte elementer. De grupperer disse for å skape et jevnt blikk.

Inne i filene har du navn på alle boksene og ikonene. Du kan se hvordan de fungerer gjennom et verktøysett, kalt ST (Shell Toolkit). Fra hovedstwidget oppretter systemet stentry, stbutton og stdrawing -området, pluss noen få andre. Når du vet dette, kan du forstå hva du ser på i CSS. Mens du ser ut til å være forberedt på å slå opp ting i dokumentasjonen, vil det å vite at noen grunnleggende vil hjelpe deg med å navigere bedre.

.avkrysningsboks stboxLayout
avstand: .8em;
.avkrysningsboks stbin
Bredde: 16px;
Høyde: 16px;
Bakgrunnsbilde: URL ("Dark-Assets/avkrysningsrute/avkrysningsrute-støpt.svg ");
.avkrysningsboks: Fokuser stbin
Bakgrunnsbilde: URL ("Dark-Assets/avkrysningsrute/avkrysningsrute-støpt-fokusert.svg ");
.avkrysningsboks: Sjekket stbin
Bakgrunnsbilde: URL ("Dark-Assets/avkrysningsrute/avkrysningsrute-sjekket.svg ");
.avkrysningsboks: Fokus: sjekket stbin
Bakgrunnsbilde: URL ("Dark-Assets/avkrysningsrute/avkrysningsrute-sjekket-fokusert.svg ");

Koden over, fra Forest-Dark-temaet, viser definisjonen av en avkrysningsrute som bruker STBIN for sin definisjon. De fleste navnene vil være åpenbare fra navnene deres. Imidlertid, hvis du er usikker, kan du sjekke GNOME -dokumenter for veiledning. Den beste strategien for å lage ditt eget tema er å basere den på en eksisterende og redigere den etter din egen smak.

Hvilke bildeformater støttes?

Filformatet for alle grafiske komponenter kan være SVG og PNG. Det beste er å bruke SVG siden det skalerer bedre i forskjellige størrelser. Dette er også det mest brukte. Selv om formatet skaler godt, sørg for å teste det i mange skalaer. Grafikken i seg selv må også utformes for å være tydelig i alle støttede skalaer.

Hva mer trenger jeg for å lage et tema?

Det meste av et tema er opprettet ved å skrive riktig CSS, men når du vil ha dine egne ikoner, trenger du mer. For Linux har du Inkscape for å lage SVG -grafikk. Det vil være fordelaktig å ha din favorittkodeditor, det hjelper mye når du hacker CSS. Ideen er tross alt å kode ved hjelp av webteknologier.

Hvor finner jeg eksempler og opplæringsprogrammer?

De fleste eksisterende prosjekter er tilgjengelige på https: // www.Gnom-utseende.org/, selv om mange vakre temaer også er tilgjengelige på avvikende kunst. Det er noen få opplæringsprogrammer, men de fleste av dem er hvordan du installerer et nytt tema du lastet ned. Nedenfor er en god start på å utforske temaer.

  • https: // utvikler.Gnome.org/gtk3/stabil/tema.html

Konklusjon

Det er flott å kunne finpusse skrivebordsmiljøet ditt; Dette er hva du stirrer på hele dagen. Med temaer for Gnome kan du gjøre det i alle detaljer. Husk at skrivebordet ditt er et sammensatt dyr, så vær forberedt på å lære og starte med en mal eller et eksisterende prosjekt.