Использование плейсхолдера для ссылок FontAwesome в описаниях настроек

Продолжаем обсуждение из темы Как добавить ссылки на настройки сайта в описание настроек моего компонента?:

Интересно, возможно ли что-то подобное для ссылки на бесплатные иконки FontAwesome. Она используется в описании настроек некоторых компонентов, и если бы в них содержался только %{FA_free_link}, то обновление ссылок в ядре исправило бы их во всех компонентах, использующих эту ссылку. Кроме того, переводчикам не пришлось бы снова переводить описание.

Это помогло бы при смене версии, а также в случае, когда выбранная ссылка перестает работать.
Я заметил, что ссылка, выбранная осенью, больше не ведет к бесплатным иконкам.
https://fontawesome.com/v6/search?o=r&m=free больше не работает. Сейчас, думаю, будет работать https://fontawesome.com/v6/search?ic=free.

Плагины/компоненты, использующие эту ссылку:

Я думаю, в идеале мы могли бы добавить ссылку на https://meta.discourse.org/styleguide/atoms/icons, где был бы удобный интерфейс поиска для доступа ко всем доступным иконкам. Несколько месяцев назад у меня уже был черновик для этого… придётся его освежить и посмотреть, смогу ли я сделать его готовым к слиянию :eyes:

Разве там показаны только иконки, уже добавленные на форум? Мне кажется, довольно часто в таких компонентах, как «Поделиться в соцсетях», выбирают другие бесплатные иконки.

На данный момент да, но мы могли бы улучшить это, чтобы показывать все доступные иконки (с индикатором для тех, которые уже добавлены).

Я подумал, что имеет смысл поднять эту тему в связи с тем, что DEV: upgrade to fontawesome 7 by tyb-talks · Pull Request #36286 · discourse/discourse · GitHub был принят.

Теперь потребуется обновить множество описаний настроек компонентов тем и плагинов. Поэтому, хотя для большинства компонентов речь идёт в основном об обновлении описания параметра svg_icons с упоминанием версии 7 вместо 6, возможно, стоит подумать о более постоянном решении на основе параметров, чтобы переводчикам не приходилось переводить всё заново при каждом обновлении версии.

Приведу здесь пример, содержащий как ссылку, так и номер версии:

Не лучше ли просто убрать номер версии из этих строк?

Как администраторы узнают, какие иконки FontAwesome можно использовать? Сейчас можно исходить из того, что актуальна последняя версия. Но когда выйдет V8, возникнет период, когда нужно будет понимать, что иконки, добавленные в FA8, не будут работать, а в случаях, когда название изменилось, нужно будет использовать название иконки из FA7. Или это больше не проблема?

Около года назад cvx предложил добавлять номер версии в ссылки:

В FA6 было очень много переименований, поэтому это было так болезненно. Насколько я знаю, в FA7 их не было — только новые и улучшенные иконки.

Думаю, в идеальном мире настройки темы/сайта могли бы использовать наш выпадающий список иконок.

Но да, у нас такой возможности пока нет… так что вы правы: номер версии может всё ещё быть полезен.

Я надеялся, что добавление плейсхолдеров для номера версии и ссылки на веб-сайт FA, которые можно использовать в описаниях настроек компонентов, окажется проще, чем настройка сайта и настройка темы, и выпадающий список иконок для настройки объекта.

(И кроме того, остаются компоненты, которые не были перенесены на использование настроек объектов, а используют что-то вроде

Введите конфигурацию для тегов через запятую в формате “слаг-тега,иконка,цветИконки”. Цвет иконки необязателен.

)

Настройки сайта уже делают это, но описание настройки по-прежнему ссылается на список иконок FA6 (не FA7), и фильтр, возвращающий только бесплатные иконки, тоже не работает.

Однако я не уверен, что это сейчас кажется мне улучшением. Очень запутанно, что нельзя ввести все иконки, найденные по ссылке. Раньше я мог ввести “clipboard-question” и добавить его в svg_icons_subset позже. Теперь, если я хочу настроить новую иконку, мне нужно выйти из настройки, которую я хочу установить, перейти к другой, добавить новую иконку и вернуться к настройке, которую я хотел настроить.

Таким образом, выпадающий список настроек на самом деле ничего не изменил в проблеме, согласно которой должна быть ссылка, где можно найти все доступные иконки, и эта ссылка должна обновляться во всех настройках при любом изменении.