Asıl püf nokta, asıl simgelerin bulunduğu yeri doğru bulmaktır.
Bunu belirlemek için HTML simgelerini analiz edelim. Simgeler için adlandırma kuralı, MIME türüyle aynıdır, yalnızca /
yerine geçer -
ve büyük harflere izin verilmez. Yani MIME tipi, diyelim ki, (veya ) text/x-changelog
adındaki simgeye sahip olacaktır . HTML için MIME türü . Bu yüzden onun simgesi olacak, eğer komutu çalıştırırsaktext-x-changelog.svg
png
text/html
text-html.*
find /usr/share/icons/ -type f | grep 'text-html\.'
bu simgelerin yerleştirildiği birkaç yer bulacağız:
/usr/share/icons/Humanity/mimes/
/usr/share/icons/gnome/NNxNN/mimetypes/
/usr/share/icons/HighContrast/scalable/mimetypes/
Her birini Nautilus ile birlikte ziyaret edersek, göreceğimiz gibi, bu Humanity/
klasör mevcut simgelerimizi içerir gnome/
- bazıları daha eskileri. HighContrast/
bizi ilgilendirmiyor. Bu yüzden bazı ikonları değiştirmek için Humanity/
klasörde bulunan ikonları değiştirmeliyiz .
Ayrıca text-html.svg
ölçeklenebilir olan ve scalable
alt klasöre yerleştirilmesi gereken (mantıklı olması gereken) simgelerin , raster PNG dosyalarıyla aynı şekilde farklı boyutlardaki klasörlere yerleştirildiğine dikkat edin.
Simgeler değiştirildikten sonra (tüm alt klasörlerde boyutlarına göre) istenenler ile simge önbelleği güncellenmelidir:
sudo gtk-update-icon-cache /usr/share/icons/Humanity
Bu kadar.
Simge şemalarının önceliğini belirlemenin başka bir yolu var - index.theme
dosyaları kontrol etmek . İçeriye bakarsak /usr/share/icons/Humanity/index.theme
, göreceğiz:
Inherits=gnome,hicolor
Bu, simgelerden gnome
ve hicolor
klasörlerden gelenlerden daha az önceliğe sahip olacağı anlamına gelir Humanity
. Bu burada açıklanmıştır .
Garip bir şekilde, Nautilus bu miras kurallarına uymuyor. Yeni MIME türü ekledik, ben içine simgeleri yerleştirerek çalıştı /usr/share/icons/gnome/
, /usr/share/icons/hicolor
, ~/.local/share/icons/hicolor
hepsi nafile - her adım, güncelleme simgesi veritabanı. Bu simgeler assogiate
ilk sekmede düzgün görüntülendi , ancak asla Nautilus'ta gösterilmedi. Ama onları Humanity
klasöre yerleştirdiğimde ve ikon veritabanını güncellediğimde, bir kerede ortaya çıktılar.
NB Bütün bunlar varsayılan simge teması için geçerlidir. Özel bir simge teması kullanıyorsanız, asıl simgelerin bulunduğu yeri kontrol etmeli ve bunun yerine simgeleri eklemelisiniz / değiştirmelisiniz. Ayrıca yeni dağıtımlarda bu miras kuralları değişebilir. Daha sonra Humanity
, daha önce açıklandığı gibi ( artık değilse ) gerçek simgeleri saklayan yeni klasörü bulmalısınız .