Trik utamanya adalah mencari tahu dengan benar di mana ikon yang sebenarnya berada.
Untuk menentukan itu mari kita menganalisis ikon HTML. Konvensi penamaan untuk ikon sama dengan untuk tipe MIME, hanya /
diganti dengan -
dan tidak ada huruf kapital yang diizinkan. Yaitu tipe MIME, katakanlah, text/x-changelog
akan memiliki ikon bernama text-x-changelog.svg
(atau png
). Jenis MIME untuk HTML adalah text/html
. Jadi ikonnya adalah text-html.*
Jika kita menjalankan perintah
find /usr/share/icons/ -type f | grep 'text-html\.'
kita akan mendapatkan beberapa tempat di mana ikon-ikon ini ditempatkan:
/usr/share/icons/Humanity/mimes/
/usr/share/icons/gnome/NNxNN/mimetypes/
/usr/share/icons/HighContrast/scalable/mimetypes/
Jika kita mengunjungi masing-masing dengan Nautilus kita akan melihat, Humanity/
folder itu berisi ikon kita saat ini, gnome/
- beberapa yang lebih tua. HighContrast/
tidak menarik bagi kita. Jadi untuk mengubah beberapa ikon kita harus mengganti ikon yang terletak di Humanity/
folder.
Perhatikan juga bahwa text-html.svg
ikon yang dapat diskalakan dan seharusnya ditempatkan ke dalam scalable
subfolder (yang seharusnya logis) ditempatkan ke folder untuk ukuran yang berbeda, dengan cara yang sama seperti file PNG raster.
Setelah mengganti ikon (dalam semua subfolder sesuai dengan ukurannya) dengan ikon cache yang diinginkan harus diperbarui:
sudo gtk-update-icon-cache /usr/share/icons/Humanity
Itu dia.
Ada cara lain untuk menentukan prioritas skema ikon - untuk memeriksa index.theme
file mereka . Jika kita melihat ke dalam /usr/share/icons/Humanity/index.theme
, kita akan melihat:
Inherits=gnome,hicolor
Ini berarti bahwa ikon dari gnome
dan hicolor
folder akan memiliki prioritas lebih sedikit daripada yang dari Humanity
. Ini dijelaskan di sini .
Anehnya, Nautilus tidak mematuhi aturan warisan ini. Ketika saya menambahkan baru tipe MIME, saya mencoba menempatkan ikon ke dalam /usr/share/icons/gnome/
, /usr/share/icons/hicolor
, ~/.local/share/icons/hicolor
, ikon memperbarui database pada setiap langkah - semua sia-sia. Ikon-ikon ini ditampilkan dengan benar di assogiate
tab pertama, tetapi tidak pernah di Nautilus. Tetapi ketika saya menempatkannya di Humanity
folder dan memperbarui ikon database, mereka muncul sekaligus.
NB Semua ini berlaku untuk tema ikon default. Jika Anda menggunakan tema ikon khusus, Anda harus memeriksa di mana ikon sebenarnya berada dan menambahkan / mengubah ikon di sana. Juga dalam distribusi yang lebih baru, aturan pewarisan ini dapat berubah. Maka Anda harus menemukan folder baru yang menyimpan ikon yang sebenarnya (jika tidak Humanity
lagi) seperti yang dijelaskan sebelumnya.