С подсказками здесь и некоторой помощью от бота ask.discourse.com мне удалось заставить это работать:
- Вот соответствующий коммит поверх того, что сгенерировал CLI
discourse_theme. - Вот разница по сравнению с моей предыдущей неудачной попыткой, упомянутой в первом сообщении.
Спасибо, @NateDhaliwal!
Основные сложности, с которыми я столкнулся на этом пути:
- В шаблонах ни произвольные выражения JavaScript (например, вызовы функций), ни выражения с фильтрами (вида
some-transormation-function someVariableOrLiteral) не работают внутри двойных фигурных скобок. Там можно интерполировать только одиночные переменные. - Для одного из двух ресурсов я забыл включить имя директории
assets/в соответствующее значение пути к файлу вabout.json. Это привело к тихой ошибке: соответствующая настройка сталаundefined, что, видимо, вызвало полное игнорирование шаблона или что-то подобное. - На одном из этапов разработки компонент темы, синхронизируемый через
discourse_theme watch ..., не оказывал никакого эффекта — ни в предпросмотре, ни при явной активации. Решение нашлось, когда я позволилdiscourse_theme watch ...создать новую копию компонента на инстансе (удалив предыдущую копию). Точно не знаю, что именно там произошло.