Разметка Markdown. Форматирование сообщения в Telegram

Как делать разметку текста (Markdown) в Telegram

Для правильной разметки текста в нужном блоке (разметка находится под полем для ввода текста сообщения) строго соблюдайте следующие шаги:

  1. Ставим нужный текст в поле ответ.

Если вы используете переменные в тексте, то на данном этапе их указывать не нужно. В противном случае синтаксис переменных будет нарушен и знаки #{} также будут экранированы, а переменная не отобразится в тексте.

  1. Включаем "Markdown в Telegram". Так в ваш текст будут добавлены символы экранирования.

  2. Выделяем текст ** либо _ _ и т.п.

Если в этом блоке встречаются символы из перечисленных: '_', '*', '[', ']', '(', ')', '~', '`', '>', '#', '+', '-', '=', '|', '{', '}', '.', '!' — их нужно экранировать, добавлять перед ними обратный слэш \

Иначе сообщение не отправится вообще. При этом не имеет значения, какой участок текста вы размечаете.

Пример: привет\. Рады *тебя* видеть\!

Далее размечаете нужный текст при помощи спецсимволов:

Жирный текст — с обеих сторон ставите звездочки: *тут текст* Курсив — нижнее подчёркивание: _текст_ Подчеркнутый текст — два нижних подчеркивания с обеих сторон: __текст__ Зачеркнутый текст — тильда с обеих сторон текста: ~текст~ Ссылка в тексте: [текст в квадратных скобках](ссылка в круглых скобках) [inline URL](http://www.example.com/) Упоминание пользователя ТГ: [текст в квадратных скобках](ссылка на пользователя в круглых скобках). В ссылке после знака равно можно использовать #{platform_id} [inline mention of a user](tg://user?id=123456789) Текст в виде кода — с обеих сторон текста поставить обратный апостроф: `inline fixed-width code` Скрытый текст или spoiler - с обеих сторон от текста используйте ||

Пример:

Результат:

При работе с Markdown необходимо не забывать, что спецсимволы следует экранировать, заменить в тексте управляющие символы на соответствующие текстовые подстановки. Делается это достаточно просто - перед спецсимволом добавляется обратный слэш \ или при помощи функции Калькулятора

txt = tg_escape(s), где s - строка с исходным текстом.

Чтобы в переменную записать текст с переносами строк, укажите значение следующим образом:

ваша_переменная = "Текст первой строки" + "\n" + "Текст второй строки" + "\n" +"Третья строка"

На выходе в txt приходит строка уже с вставленными слешами в нужных местах.

Пример:

Пример с длинным текстом:

Для этого в калькуляторе необходимо:

Далее экранируем:

Если после отправки сообщения, оно не дошло в мессенджер, а в диалоге в разделе Клиенты вы видите ошибку, значит вы неверно экранировали символы.

При этом вы увидите ошибку при отправке сообщения в разделе "Клиенты", в ней будет указан символ, который не был экранирован.

Сообщения об ошибках, которые вы можете встретить:

  1. Нет закрывающего символа:

  1. Отсутствует экранирование символа:

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

Как включить защищенный режим для контента

Чтобы защитить контент от распространения можно включить защищенный режим для сообщений. Для этого в разделе "Сообщение" включите "Защитить контент":

Защищенные сообщения нельзя переслать, на телефоне нельзя сделать скриншот.

Как редактировать сообщение

Отредактировать можно только сообщения, отправленные с помощью функций API, сохранив при этом идентификатор сообщения.

Last updated