Основна хитрість - правильно з’ясувати, де знаходяться фактичні значки.
Для того щоб визначити, що давайте проаналізуємо піктограми HTML. Конвенція імен для іконок така ж, як і для типу MIME, лише /
замінюється -
великими літерами та не допускається. Тобто тип MIME, скажімо, text/x-changelog
матиме піктограму з назвою text-x-changelog.svg
(або png
). MIME-тип для HTML є text/html
. Тож його піктограмою буде, text-html.*
якщо ми виконаємо команду
find /usr/share/icons/ -type f | grep 'text-html\.'
ми отримаємо кілька місць, де розміщені ці значки:
/usr/share/icons/Humanity/mimes/
/usr/share/icons/gnome/NNxNN/mimetypes/
/usr/share/icons/HighContrast/scalable/mimetypes/
Якщо ми завітаємо до кожного з них із Nautilus, то побачимо, що ця Humanity/
папка містить наші поточні іконки, gnome/
- деякі старіші. HighContrast/
нас не цікавить. Отже, щоб змінити якусь іконку, нам слід замінити значки, розташовані в Humanity/
папці.
Також зауважте, що text-html.svg
піктограми, які є масштабованими та повинні бути розміщені у scalable
підпапках (що має бути логічним), замість цього розміщуються у папках різного розміру так само, як і растрові файли PNG.
Після заміни піктограм (у всіх папках відповідно до їх розмірів) кеш піктограм слід оновити:
sudo gtk-update-icon-cache /usr/share/icons/Humanity
Це воно.
Є ще один спосіб визначити перевагу схем іконок - перевірити їх index.theme
файли. Якщо ми подивимося всередину /usr/share/icons/Humanity/index.theme
, ми побачимо:
Inherits=gnome,hicolor
Це означає, що піктограми з gnome
і hicolor
папок матимуть менше переваг, ніж ті, що з них Humanity
. Це пояснено тут .
Як не дивно, Наутилус не дотримується цих правил успадкування. Коли я додав новий MIME-тип, я спробував розміщуючи свої іконки в /usr/share/icons/gnome/
, /usr/share/icons/hicolor
, ~/.local/share/icons/hicolor
, бази даних значок поновлення на кожному кроці - все марно. Ці значки відображались належним чином assogiate
на першій вкладці, але ніколи в Наутілусі. Але коли я помістив їх у Humanity
папку та оновив базу даних значків, вони з’явилися одразу.
Примітка. Все це стосується теми значка за замовчуванням. Якщо ви використовуєте якусь власну тему значків, слід перевірити, де розташовані фактичні значки, і замість цього додати / змінити піктограми. Також у нових дистрибутивах ці правила успадкування можуть змінюватися. Тоді вам слід знайти нову папку, в якій зберігаються фактичні піктограми (якщо її Humanity
більше немає), як було пояснено раніше.