Островки кода
В самом простом виде шаблон представляет собой текст, который будет отправлен сообщением в исходном виде как есть.
Однако, вся суть шаблонизатора в возможности форматировать этот текст заданным образом, использовать внутри него управляющие конструкции (условия или циклы) и даже выполнять некоторые действия. Для этого используются так называемые "островки кода".
Код
Островки кода всегда начинаются с {% и заканчиваются %}, очень просто. Внутри таких островков кода используются теги, в числе которых есть управляющие конструкции (условия, циклы), объявление переменных и многое другое.
{% tag %}
Каждый островок кода может выполнять только одну какую-либо операцию или объявлять часть управляющей конструкции.
Логическая последовательность формируется использованием множества отдельных островков кода на каждую отдельно взятую операцию или часть управляющей конструкции.
Контроль символов пробела
С синтаксисом островков кода связана еще одна синтаксическая возможность, называемая контролем символов пробела. Эта возможность позволяет убрать все пробелы и переводы строк перед или после островков кода. Для достижения этого, добавьте символ минуса - в начало или конец островка кода. Например:
{% if (1 == 1) -%} текст {%- endif %}
Такой код генерирует сообщение текст без пробелов вокруг этого слова.
Вывод выражений
В шаблонном движке JuniperBot существует только один способ вывести значение переменной или результат вычисления какого-либо выражения. Это достигается с помощью операции вывода, как показано ниже:
{{ выражение }}
Обратите внимание, что островки вывода также поддерживают контроль символов пробела:
{{- выражение -}}
Комментарии
В шаблонном движке JuniperBot можно добавить комментарий, который не будет распечатан в результирующем сообщении:
{# Это содержимое комментария.
И оно может быть многострочным. #}
Опять же, здесь также поддерживается контроль символов пробела:
{#- Ваш замечательный комментарий -#}