QNext. Макросы
Общее описание
Макросы - это мини программы которые можно вставить в текст, в процессе выполнения они будут заменены на полученные значения. Макрос записывается в формате:
!{НазваниеМакроса| Параметр1: Значение1; Параметр2: Значение2 }
Здесь после символа вертикальной черты | отображаются параметры в формате название: значение, т.е. сперва идет название параметра, затем значение, ключ разделенные символом двоеточие : . У некоторых макросов параметры не обязательны, если их нет, используется значение по умолчанию. Пробелы и переходы на новую строку внутри макроса игнорируются, это значит предыдущая запись макроса аналогична следующей:
!{НазваниеМакроса| Параметр1: Значение1; Параметр2: Значение2}
Вы можете использовать любую запись, какая вам больше нравится.
В процессе выполнения макроса, бот вычисляет значение и подставляет его в в место, где был записан сам текст макроса, например если в тексте написать так:
Дата: !{date}
То в процессе выполнения вы увидите такую запись:
Дата: 22.12.2020 15:58
Список доступных макросов
- !{amount}
- !{array}
- !{date}
- !{crypto}
- !{decodeURI}
- !{encodeURI}
- !{file}
- !{globalVar}
- !{html}
- !{if}
- !{json}
- !{makeLink}
- !{menu}
- !{pay}
- !{profile}
- !{random}
- !{script}
- !{string}
- !{switch}
- !{trello}
- !{user}
- !{usersCount}
- !{url}
- !{vote}
- !{value}
- !{template}
Спец символы
Мо умолчанию макросы игнорирует крайние пробелы и переходы на новую строку. Т.е. например если вы хотите отобразить текущую дату так, чтобы после даты отобразился пробел, можно попробовать вставить пробел после параметра format
:
!{date| when: now; format: dd.mm HH:MM ; }
Но это не будет работать, потому что макрос игнорирует все пробелы и переходы на новую строку справа и слева от значения. Чтобы вставить пробел после формата, воспользуйтесь спецсимволом \s:
!{date| when: now; format: dd.mm HH:MM\s; }
Если надо больше пробелов, вставьте столько спецсимволов \s, сколько пробелов вам требуется.
\s
- 1 пробел\n
- переход на новую строку\0
- пустая строка
Шаблоны макросов
Шаблоны макросов подробно описаны на странице.