Ich denke, der beste Weg, Icon-Sets zusammenzuführen, besteht darin, ein sogenanntes Lightweight-Icon-Set zu erstellen. Dieses Icon-Set befindet sich in Ihrem Home-Verzeichnis, sodass es nicht durch Systemaktualisierungen überlastet wird. Es ist jedoch mit den System-Icon-Sets verknüpft und wird daher zusammen mit diesen aktualisiert. Diese Themen stehen anderen Benutzern auf Ihrem System nicht zur Verfügung.
Leichte Icon-Sets
Ubuntus Theme Manager sucht in ~/.icons
und /usr/share/icons
nach Iconsets. Alles, was ~/.icons
überschrieben werden muss /usr/share/icons.
Sie können also einen Symbolsatz aus dem Systemverzeichnis in Ihr Ausgangsverzeichnis kopieren, um das Symbol anzupassen, und nur die Teile einschließen, die Sie ändern möchten!
Im Allgemeinen denke ich, dass es am besten ist, eigene Icon-Sets zu erstellen, die die System-Sets verwenden. Sie können dies tun, indem Sie einen Symbolsatz und eine index.theme-Datei erstellen und einige Symbole hinzufügen. Wenn Sie jedoch verschiedene Symbolsätze kombinieren, müssen Sie deren Inherits
Attribut überschreiben , damit Sie Ihre eigene Rangfolge festlegen können.
Erstellen eines Symbolsatzes zum Zusammenführen von Themen
Erstellen wir ein Super-Mono-Icon-Set:
# 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 Erscheinungsbild, das genau wie Faenza-Darkest ist.
Um unsere beiden Themen zusammenzuführen, ändern wir das Supermono-Thema so, dass es von Ubuntu-Mono-Dunkel und dann von Faenza erbt.
sed -ie "s/Inherits=.*$/Inherits=ubuntu-mono-dark,Faenza/" ~/.icons/super-mono/index.theme
Das sollte für Richzilla ausreichen, wähle einfach Super-Mono in Aussehen.
Benutzerdefinierte Symbole hinzufügen
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 es verwendet eine Ikone von Faenza-Darkest. In den späteren Abschnitten erfahren Sie, wie Sie mehr als nur einige Symbole verwenden.
Es ist wichtig zu sehen, dass ich das index.theme von Faenza-Darkest kopiert und dann Icons von Faenza-Darkest verwendet habe. Die Datei index.theme gibt an, wo sich die Symbole befinden könnten. Wenn Sie einzelne Symbole aus verschiedenen Symbolsätzen ziehen möchten, müssen Sie deren index.theme-Dateien zusammenführen. Sie können sich die Dateien ansehen und ein Feld mit dem Namen Verzeichnisse sehen, in dem alle Ordner mit Symbolen aufgelistet sind. Dann sehen Sie andere Felder, die diese Ordner beschreiben. Wenn Sie ein Symbol hinzufügen, das in diesen Feldern nicht beschrieben wird, wird dieses Symbol ignoriert. Weitere Informationen finden Sie in der index.theme-Spezifikation .
Erweitert: Selektives Kombinieren von drei Symbolsätzen
Ich liebe auch Ubuntu-Mono-Icons. Ich liebe Faenzas App-Symbole, aber ich mag Faenzas Mono-Symbole (die Anzeigen und Schaltflächen) nicht. Ich mag auch elementare Symbole. Also möchte ich diese drei Icon-Sets kombinieren. Soweit ich weiß, ist der beste Weg, dies zu tun, indem Sie die Symbole, die Sie mögen, isolieren.
- Verwenden Sie Ubuntu-Mono-Dark
- Verwenden Sie die App-Symbole von Faenza
- Ansonsten benutze die elementary Icons
Dazu müssen wir Ubuntu-Mono-Dark anweisen, von nichts zu erben (also können wir auch Faenza und Elementary 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-Dark-Icon-Set jetzt defekt ist. Es fehlen Symbole, die von Humanity-Dark bereitgestellt werden, und andere Symbolsätze, von denen es erbt. Diese Änderung wirkt sich nur auf Ihren Benutzer aus.
Jetzt können wir ein neues Icon-Set erstellen, das 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 gibt nur Symbole für Apps. Alle anderen Symbole fehlen, weil wir die Inherits entfernt haben.
Jetzt erstellen wir das zu verwendende Icon-Set. Unser Icon-Set enthält keine Icons, sondern 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, unter Darstellung die Option Zusammenführen-Mono-Dunkel auszuwählen, und wir werden ein schönes neues Icon-Set haben! (Hinweis: Wir sollten index.theme-Dateien nicht zusammenführen müssen, 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 viele Terminal-Befehle, um diese Antwort zu vereinfachen, aber hier ist eine Beschreibung, was sie tun.
ln -s /usr/share/icons/Faenza-Darkest/actions/22/gtk-paste.png ~/.icons/Faenza-Alan/actions/22/.
Dadurch wird in Ihrem Icon-Set ein Zeiger auf das Gtk-Paste-Icon des System-Icon-Sets erstellt. Auf diese Weise wird kein zusätzlicher Festplattenspeicherplatz verwendet und Ihr Symbolsatz wird zusammen mit dem Symbolsatz des Systems aktualisiert. Wenn Sie das nicht möchten, ersetzen Sie es ln -s
durch cp -r
.
sed -ie "s/dark/light/" ~/file
Bedeutet, alle dark
durch light
in ~ / file zu ersetzen .
sed -ie "s/Comment=.*$/Comment=Created with by me/" ~/.icons/super-mono/index.theme
Das .*$
bedeutet, dass ein beliebiger Text (. *) An das Ende der Zeile ($) angehängt wird.
sed -ie "s/Inherits=/Inherits=ubuntu-mono-dark,/" ~/.icons/super-mono/index.theme
Hier fügen wir Ubuntu-Mono-Dark vor die Inherits-Liste ein, weil wir suchen Inherits=
und durch ersetzenInherits=ubuntu-mono-dark,
Überall, wo ich es verwende sed
, können Sie die Datei bearbeiten und die Änderungen stattdessen manuell anwenden.