Wie füge ich zwei Icon-Sets zusammen?

12

Ich möchte das Standard-Ubuntu-Mono-Icon-Set und das Faenza-Icon-Set zusammenführen. Ich würde gerne die Standard-Ubuntu-Icons im Panel behalten (inklusive Icons für Dropbox, Dateitransfer etc.) und alle anderen Anwendungsicons durch die Faenza-Versionen ersetzen.

Wie würde ich darüber gehen?

    
richzilla 01.03.2011, 16:51
quelle

2 Antworten

1

Bearbeiten Sie diese Datei unten mit Ihrem bevorzugten Texteditor

/usr/share/icons/ubuntu-mono-(which mono set you want)/index.theme

und setzen Sie Faenza am Anfang der Vererbungszeile.

    
Vallery 06.03.2011, 17:05
quelle
10

Ich denke, der beste Weg zum Zusammenführen von Icon-Sets ist das Erstellen eines so genannten Lightweight-Icon-Sets. Dieses Icon-Set befindet sich in Ihrem Home-Verzeichnis, so dass es nicht durch Systemupdates verunstaltet wird, aber es verbindet sich mit den System-Icon-Sets, so dass es zusammen mit ihnen aktualisiert wird. Diese Designs sind für andere Benutzer in Ihrem System nicht verfügbar.

Leichte Icon-Sets

Der Themenmanager von Ubuntu sucht in ~/.icons und /usr/share/icons nach Icons. Alles in ~/.icons überschreibt /usr/share/icons. Sie können also ein Icon-Set aus dem Systemverzeichnis in Ihr Home-Verzeichnis kopieren, um das Symbol anzupassen, und Sie fügen nur die Teile ein, die Sie ändern möchten!

Im Allgemeinen denke ich, dass es am besten ist, eigene Icon-Sets zu erstellen, die die System-Icons verwenden. Sie können dies tun, indem Sie einen Icon-Set, eine index.theme-Datei erstellen und einige Symbole hinzufügen. Wenn Sie jedoch verschiedene Symbolsätze kombinieren, müssen Sie ihr Inherits -Attribut überschreiben, damit Sie Ihre eigene Rangfolge festlegen können.

Erstellen eines Icon-Sets zum Zusammenführen von Designs

Lassen Sie uns ein Super-Mono-Icon-Set erstellen:

# Create a new icon set
mkdir -p ~/.icons/super-mono

# Copy an existing icon config and modify it for our new icon set
cp /usr/share/icons/Faenza-Darkest/index.theme      ~/.icons/super-mono/.
sed -ie "s/Name=Faenza-Darkest/Name=super-mono/"    ~/.icons/super-mono/index.theme
sed -ie "s/Comment=.*$/Comment=Created with by me/" ~/.icons/super-mono/index.theme
sed -ie "s/Inherits=/Inherits=ubuntu-mono-dark,/"   ~/.icons/super-mono/index.theme

Jetzt haben wir ein neues Icon im Aussehen, das genau wie Faenza-Darkest ist.

Um unsere beiden Themen zusammenzuführen, ändern wir das Super-Mono-Thema, um es von ubuntu-mono-dark und dann von Faenza zu übernehmen.

sed -ie "s/Inherits=.*$/Inherits=ubuntu-mono-dark,Faenza/" ~/.icons/super-mono/index.theme

Das sollte für Richzilla reichen, wähle einfach Super-Mono in Aussehen.

Hinzufügen von benutzerdefinierten Symbolen

Wir können diesem Icon-Set auch einzelne Icons hinzufügen:

ln -s /usr/share/icons/Faenza-Darkest/actions/22/gtk-paste.png ~/.icons/super-mono/actions/22/.

Und jetzt kombiniert unser Super-Mono-Thema Ubuntu-Mono-Dark und Faenza, außer dass es ein Icon von Faenza-Darkest verwendet. In den folgenden Abschnitten finden Sie mehr als nur ein paar Symbole.

Es ist wichtig zu sehen, dass ich das index.theme von Faenza-Darkest kopiert habe und dann Icons von Faenza-Darkest benutzt habe. Die Datei index.theme gibt an, wo sich die Symbole befinden. Wenn Sie einzelne Symbole aus verschiedenen Symbolsätzen ziehen möchten, müssen Sie ihre index.theme-Dateien zusammenführen. Sie können sich die Dateien ansehen, und Sie sehen ein Feld namens Verzeichnisse, das alle Ordner mit Symbolen auflistet. Dann sehen Sie andere Felder, die diese Ordner beschreiben. Wenn Sie ein Symbol hinzufügen, das nicht in diesen Feldern beschrieben ist, wird dieses Symbol ignoriert. Weitere Informationen finden Sie in der index.theme-Spezifikation .

Erweitert: Selektive Kombination von drei Icon-Sets

Ich liebe auch Ubuntu-Mono-Icons. Ich liebe Faenzas App-Symbole, aber Ich mag die Mono-Symbole von Faenza nicht (die Anzeigen und Schaltflächen). Ich mag auch die Symbole der Grundschule. Also möchte ich diese drei Icon-Sets kombinieren. Soweit ich weiß, ist der beste Weg, dies zu tun, indem Sie die Symbole isolieren, die Sie mögen.

  1. Verwenden Sie ubuntu-mono-dunkel
  2. Benutze die App-Icons von Faenza
  3. Ansonsten verwenden Sie die elementaren Symbole

Um dies zu tun, müssen wir ubuntu-mono-dark sagen, dass wir nichts erben sollen (also können wir auch Faenza und elementar verwenden).

# First, ubuntu-mono-dark
# Create a shadow of the system icon set
mkdir -p ~/.icons/ubuntu-mono-dark

# Copy an existing icon config and modify it for our shadow icon set
cp /usr/share/icons/ubuntu-mono-dark/index.theme   ~/.icons/ubuntu-mono-dark/.
sed -ie "s/Comment=.*$/Comment=A shadow to prevent inherits/" ~/.icons/ubuntu-mono-dark/index.theme
sed -ie "s/Inherits=.*$/Inherits=/"                ~/.icons/ubuntu-mono-dark/index.theme

Sie werden feststellen, dass das ubuntu-mono-dunkle Icon-Set jetzt defekt ist. Es werden Symbole fehlen, die von Humanity-Dark und anderen Icon-Sets zur Verfügung gestellt werden. Diese Änderung wirkt sich nur auf Ihren Benutzer aus.

Jetzt können wir eine neue Icon-Sammlung erstellen, die die App-Icons von Faenza verwendet.

# Create a new icon set
mkdir -p ~/.icons/Faenza-apps

# Copy the existing icon config and modify it for our new icon set
cp /usr/share/icons/Faenza/index.theme             ~/.icons/Faenza-apps/.
sed -ie "s/Name=Faenza/Name=Faenza-apps/"          ~/.icons/Faenza-apps/index.theme
sed -ie "s/Comment=.*$/Comment=Just Faenza app icons/" ~/.icons/Faenza-apps/index.theme
sed -ie "s/Inherits=.*$/Inherits=/"                ~/.icons/Faenza-apps/index.theme

# Use Faenza's app icons
ln -s /usr/share/icons/Faenza/apps/ ~/.icons/Faenza-apps/.

Dieses Faenza-apps icon set ist ebenfalls defekt. Es hat nur Symbole für Apps. Alle anderen Icons fehlen, weil wir die Inherits entfernt haben.

Jetzt erstellen wir das Icon-Set, das wir verwenden werden. Unser Icon-Set enthält keine Icons, es verbindet nur unsere anderen Icon-Sets.

# Create a new icon set
mkdir -p ~/.icons/merge-mono-dark

# Copy an existing icon config and modify it for our new icon set
cp /usr/share/icons/Faenza/index.theme                 ~/.icons/merge-mono-dark/.
sed -ie "s/Name=Faenza/Name=merge-mono-dark/"          ~/.icons/merge-mono-dark/index.theme
sed -ie "s/Comment=.*$/Comment=Created with by me/"    ~/.icons/merge-mono-dark/index.theme
sed -ie "s/Inherits=.*$/Inherits=ubuntu-mono-dark,Faenza-apps,elementary-mono-dark/" ~/.icons/merge-mono-dark/index.theme

Jetzt sollten wir in der Lage sein, Merge-Mono-Dark in Appearance zu wählen und wir werden ein wunderschönes neues Icon-Set haben! (Hinweis: Wir sollten index.theme-Dateien nicht zusammenführen, da wir keine Symbole aus verschiedenen Symbolsätzen zu merge-mono-dark hinzufügen. Stattdessen verwenden wir Inherits, um die Symbolsätze automatisch zusammenzuführen.)

Erklärung einiger Befehle

Ich benutze eine Menge Terminal-Befehle, um diese Antwort zu vereinfachen, aber hier ist eine Beschreibung dessen, was sie tun.

ln -s /usr/share/icons/Faenza-Darkest/actions/22/gtk-paste.png ~/.icons/Faenza-Alan/actions/22/.

Dies erstellt einen Zeiger in Ihrem Symbol, der auf das Symbol für den gtk-paste des System-Icon-Sets eingestellt ist. Auf diese Weise wird kein zusätzlicher Speicherplatz auf der Festplatte benötigt und Ihr Icon-Set wird zusammen mit dem Icon-Set des Systems aktualisiert. Wenn Sie das nicht möchten, ersetzen Sie ln -s durch cp -r .

sed -ie "s/dark/light/" ~/file

Bedeutet, dass alle dark durch light in ~ / file ersetzt werden.

sed -ie "s/Comment=.*$/Comment=Created with by me/" ~/.icons/super-mono/index.theme

.*$ bedeutet, dass ein beliebiger Text (. *) mit dem Ende der Zeile ($) übereinstimmt.

sed -ie "s/Inherits=/Inherits=ubuntu-mono-dark,/"   ~/.icons/super-mono/index.theme

Hier fügen wir ubuntu-mono-dark vor der Inherits-Liste ein, weil wir nach Inherits= suchen und sie durch Inherits=ubuntu-mono-dark,

ersetzen

Überall, wo ich sed verwende, könnten Sie die Datei bearbeiten und stattdessen manuell bearbeiten.

    
idbrii 13.05.2011 20:33
quelle

Tags und Links