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-changelogadı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.svgpngtext/htmltext-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 scalablealt 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.themedosyaları kontrol etmek . İçeriye bakarsak /usr/share/icons/Humanity/index.theme, göreceğiz:
Inherits=gnome,hicolor
Bu, simgelerden gnomeve hicolorklasö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/hicolorhepsi nafile - her adım, güncelleme simgesi veritabanı. Bu simgeler assogiateilk sekmede düzgün görüntülendi , ancak asla Nautilus'ta gösterilmedi. Ama onları Humanityklasö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 .