--- url: /templates/beginners/formatting.md description: >- Как оформить сообщение бота — жирный, курсив, заголовки, списки, таблицы, цитаты, спойлеры, ссылки и картинки. --- # Оформление текста

Сообщения бота можно оформлять так же, как статьи: заголовки, жирный текст, списки, таблицы, сворачиваемые блоки и картинки. Для этого используется разметка Markdown — несколько простых значков вокруг текста.

::: tip Не хотите запоминать значки? Выделите текст в редакторе и нажмите нужную кнопку на панели инструментов — разметка вставится сама. Эта страница поможет понять, что означают значки в готовых шаблонах. ::: ## Строки и абзацы { #paragraphs } Разметка в режиме Rich совместима с Markdown, как на GitHub, поэтому работает правило: **абзацы разделяются пустой строкой**. ```template Привет, {{ member.name }}! Мы рады видеть тебя в нашем чате. ``` Если две строки идут подряд без пустой строки между ними, Markdown может склеить их в один абзац. Чтобы строки шли одна под другой, оставляйте между ними пустую строку или оформите их [списком](#lists). ## Выделение текста { #inline } | Как выглядит | Как написать | Кнопка | |---|---|---| | **Жирный** | `**текст**` | Ctrl + B | | *Курсив* | `*текст*` | Ctrl + I | | Подчеркнутый | `текст` | Ctrl + U | | ~~Зачеркнутый~~ | `~~текст~~` | Ctrl + Shift + X | | Спойлер | `\|\|текст\|\|` | «Спойлер» | | Маркер | `==текст==` | «Маркер» | | `Моноширинный` | `` `текст` `` | «Код» | | x2 | `x2` | «Индексы» | | H2O | `H2O` | «Индексы» | Спойлер скрыт, пока участник на него не нажмет. Наведите курсор на серую плашку в таблице, чтобы посмотреть, как это работает. ::: warning Два подчеркивания — это жирный `__текст__` в Telegram делает текст **жирным**, а не подчеркнутым. Для подчеркивания пишите `текст`. ::: Разметку можно ставить вокруг переменных: ```template Поздравляем, **{{ member.name }}**! Теперь у тебя ~~{{ member.rank.level - 1 }}~~ **{{ member.rank.level }}** уровень. ``` Поздравляем, **Анна**! Теперь у тебя ~~11~~ **12** уровень. ## Заголовки { #headings } Решетка `#` в начале строки делает заголовок. Чем больше решеток, тем меньше заголовок — всего шесть размеров. ```template # Большой заголовок ## Заголовок поменьше ### Еще меньше ``` # Большой заголовок ## Заголовок поменьше ### Еще меньше После решетки обязательно ставьте пробел: `# Правила`, а не `#Правила`. ## Списки { #lists } Маркированный список — строки, которые начинаются с дефиса и пробела. Нумерованный — с цифры и точки. Чек-лист — с `- [ ]` (пустой квадрат) или `- [x]` (с галочкой). ```template **Что можно:** - общаться - делиться скриншотами **Как вступить в клуб:** 1. Набрать 20 000 кубков 2. Написать президенту **Задания на неделю:** - [x] Поздороваться - [ ] Сыграть 10 матчей ``` **Что можно:** * общаться * делиться скриншотами **Как вступить в клуб:** 1. Набрать 20 000 кубков 2. Написать президенту **Задания на неделю:** * ☑ Поздороваться * ☐ Сыграть 10 матчей ## Цитаты { #quotes } Строка, которая начинается с `>`, становится цитатой: ```template > Лучший способ выиграть — играть вместе. ``` > Лучший способ выиграть — играть вместе. Для цитаты, которая раскрывается по нажатию, и цитаты с автором удобнее функция `quote`: ```template {{ quote('Лучший способ выиграть — играть вместе.', 'Президент клуба') }} ``` ## Таблицы { #tables } Таблица рисуется вертикальными чертами. Первая строка — заголовки столбцов, вторая — дефисы, дальше — данные: ```template | Уровень | Награда | |---|---| | 5 | Роль «Активный» | | 20 | Доступ к медиа | | 50 | Роль «Легенда» | ``` | Уровень | Награда | |---|---| | 5 | Роль «Активный» | | 20 | Доступ к медиа | | 50 | Роль «Легенда» | ::: warning Данные в таблице — через функцию Если в ячейку таблицы нужно подставить переменную, используйте функцию [`table`](../advanced/functions#table), а не `{{ }}` внутри строки с чертами. Если имя участника будет содержать `|`, самодельная таблица развалится, а функция `table` это учитывает. Редактор предупредит, если вы поставите `{{ }}` в строку таблицы. ::: ## Сворачиваемый блок { #details } Длинный текст можно спрятать под заголовок — участник раскроет его, если захочет: ```template
Правила чата 1. Без рекламы 2. Без оскорблений 3. Без спама
```
Правила чата 1. Без рекламы 2. Без оскорблений 3. Без спама
Пустые строки после `` и перед `` обязательны — без них список внутри не распознается. ## Разделитель и подвал { #divider } Три дефиса `---` на отдельной строке рисуют горизонтальную линию. Мелкая строка внизу сообщения — функция `footer`: ```template Правила обновлены. --- {{ footer('Обновлено 1 сентября') }} ``` ## Ссылки и упоминания { #links } | Что нужно | Как написать | |---|---| | Ссылка с текстом | `[Правила](https://telegra.ph/pravila)` | | Упоминание участника | `{{ member }}` или `{{ mention(member, 'текст') }}` | | Ссылка из переменной | `{{ link('Профиль', member.avatarUrl) }}` | | Почта или телефон | `[Написать](mailto:mail@example.com)`, `[Позвонить](tel:+70000000000)` | ::: warning Переменная внутри ссылки Не пишите `[текст]({{ адрес }})`: если в адресе окажется скобка, ссылка сломается. Используйте функцию `link('текст', адрес)` — она все сделает правильно. ::: ## Картинки и видео { #media } Картинка вставляется так же, как ссылка, но с восклицательным знаком впереди. В квадратных скобках — подпись: ```template ![Наш клуб на турнире](https://example.com/photo.jpg) ``` Ссылка должна начинаться с `https://`. Видео, GIF, аудио и документы вставляются так же — Telegram сам определит тип по ссылке. Для подписи, спойлера на картинке, коллажа из нескольких фото или слайдшоу есть функции — смотрите [Rich-сообщения](../advanced/rich#media). ## Эмодзи { #emoji } Обычные эмодзи просто вставляйте в текст: 🎉 👋 🏆. Кастомные эмодзи из наборов Telegram бот может отправлять, только если у владельца бота есть Telegram Premium. ## Если выбран режим Text { #text-mode } В режиме **Text** работают жирный, курсив, подчеркнутый, зачеркнутый, спойлер, код, ссылки и цитаты. Все остальное бот упростит сам: | В режиме Rich | В режиме Text станет | |---|---| | Заголовок | Жирная строка | | Список | Строки с «•» или «1.» | | Чек-лист | Строки с ☐ и ☑ | | Таблица | Моноширинный текст с выровненными столбцами | | Сворачиваемый блок | Раскрывающаяся цитата с жирным заголовком | | Разделитель | Строка «———» | | Маркер | Жирный | | Несколько картинок | Первая — картинкой, остальные — ссылками | Редактор предупредит, если в шаблоне есть то, что в режиме Text будет выглядеть иначе. ## То же самое на HTML { #html } Если вам привычнее HTML, переключите синтаксис шаблона на **HTML** и пишите теги: ```template

Добро пожаловать, {{ member.name }}!

Ты {{ chat.memberCount }}-й участник.

Секрет: в чате есть пасхалка ``` Полный список тегов — в статье [Rich-сообщения и разметка](../advanced/rich).