回答:
アイコンセットをマージする最良の方法は、軽量アイコンセットと呼ぶものを作成することだと思います。このアイコンセットはホームディレクトリに存在するため、システムの更新によって上書きされることはありませんが、システムアイコンセットにリンクしているため、それらと共に更新されます。これらのテーマは、システム上の他のユーザーは利用できません。
Ubuntuのテーママネージャがになります~/.icons
と/usr/share/icons
、アイコンセットのために。で何か~/.icons
オーバーライド/usr/share/icons.
アイコンをカスタマイズするために、あなたのホームディレクトリに、システムディレクトリからアイコンセットをコピーすることができますし、あなただけを変更したい部分を含んだから!
一般に、システムのアイコンセットを使用する独自のアイコンセットを作成することをお勧めします。これを行うには、アイコンセット、index.themeファイルを作成し、いくつかのアイコンを追加します。ただし、異なるアイコンセットを組み合わせる場合はInherits
、独自の優先順位を設定できるように、それらの属性をオーバーライドする必要があります。
スーパーモノのアイコンセットを作成しましょう:
# 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
これで、外観にFaenza-Darkestとまったく同じ新しいアイコンが設定されました。
2つのテーマをマージするために、スーパーモノテーマを変更して、ubuntu-mono-darkからFaenzaを継承します。
sed -ie "s/Inherits=.*$/Inherits=ubuntu-mono-dark,Faenza/" ~/.icons/super-mono/index.theme
richzillaにはこれで十分で、Appearanceでスーパーモノを選択するだけです。
このアイコンセットに個々のアイコンを追加することもできます。
ln -s /usr/share/icons/Faenza-Darkest/actions/22/gtk-paste.png ~/.icons/super-mono/actions/22/.
そして今、私たちのスーパーモノのテーマは、ubuntu-mono-darkとFaenzaを組み合わせていますが、Faenza-Darkestのアイコンを1つ使用しているだけです。いくつかのアイコン以上のものを使用するには、後のセクションを参照してください。
index.themeをFaenza-Darkestからコピーし、Faenza-Darkestのアイコンを使用したことを確認することが重要です。index.themeファイルは、アイコンの場所を示しています。異なるアイコンセットから個々のアイコンを取得する場合は、それらのindex.themeファイルをマージする必要があります。ファイルを見ると、アイコンを含むすべてのフォルダをリストするディレクトリというフィールドが表示されます。次に、これらのフォルダを説明する他のフィールドが表示されます。これらのフィールドで説明されていないアイコンを追加すると、そのアイコンは無視されます。詳細については、index.theme仕様を参照してください。
私もubuntu-monoアイコンが大好きです。私はファエンツァのアプリのアイコンを愛し、しかし、私はファエンツァのモノのアイコン(指標やボタン)好きではありません。エレメンタリーのアイコンも好きです。そこで、これら3つのアイコンセットを組み合わせたいと思います。私の知る限り、これを行う最善の方法は、好きなアイコンを分離することです。
これを行うには、ubuntu-mono-darkに何も継承しないように指示する必要があります(したがって、Faenzaとエレメンタリーを使用することもできます)。
# 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
ubuntu-mono-darkアイコンセットが壊れていることがわかります。Humanity-Darkが提供するアイコンと、それが継承する他のアイコンセットが欠落します。この変更はユーザーにのみ影響します。
これで、Faenzaのアプリアイコンを使用する新しいアイコンセットを作成できます。
# 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/.
このFaenza-appsアイコンセットも壊れています。アプリのアイコンのみがあります。継承を削除したため、他のすべてのアイコンはありません。
次に、使用するアイコンセットを作成します。アイコンセットにはアイコンが含まれず、他のアイコンセットを接続するだけです。
# 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
これで、Appearanceでmerge-mono-darkを選択できるようになり、美しい新しいアイコンセットができました!(注:異なるアイコンセットのアイコンをmerge-mono-darkに追加しないため、index.themeファイルをマージする必要はありません。代わりに、Inheritsを使用してアイコンセットを自動的にマージします。)
この答えを単純化するために多くのターミナルコマンドを使用しますが、それらの機能の説明を次に示します。
ln -s /usr/share/icons/Faenza-Darkest/actions/22/gtk-paste.png ~/.icons/Faenza-Alan/actions/22/.
これにより、アイコンセットにシステムアイコンセットのgtk-pasteアイコンへのポインタが作成されます。これにより、追加のハードディスク領域は使用されず、アイコンセットはシステムのアイコンセットとともに更新されます。あなたはそれをしたくない場合は、交換してくださいln -s
とcp -r
。
sed -ie "s/dark/light/" ~/file
すべてdark
をlight
〜/ fileで置き換えることを意味します。
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
ここでは、Inheritsリストの前にubuntu-mono-darkを挿入しています。これは、これを探しInherits=
て、Inherits=ubuntu-mono-dark,
私が使用するどこでもsed
、ファイルを編集し、代わりに手動で編集を適用できます。