Markdown в Telegram: как выделить код (и не только)
Расскажем о том, как правильно форматировать код и текст через Markdown в Telegram. Это удобный способ делиться технической информацией через мессенджер
17К открытий57К показов
«Долой HTML-теги в новой документации Telegram!» cказал бы Павел Дуров, если бы мы это слышали. Сегодня обычным пользователям и большим техническим командам доступна возможность форматировать текст и добавлять код прямо в мессенджер. Но как? С помощью Markdown. В чем специфика этого языка разметки, и как его грамотно использовать в Телеге, читайте в материале.
Markdown — это язык разметки, который часто используется при создании документов, readme-файлов и многого другого. Его цель — сделать процесс форматирования более простым как для авторов, так и для читателей. Широко используется на различных платформах (GitHub, Reddit, Slack, и т.д), где необходимо оформлять тексты без использования сложных HTML-тегов.
Telegram — один из немногих мессенджеров, поддерживающий Markdown. Но функциональность маркдауна здесь гораздо уже, чем у стандартной разметки (вы не сможете делать большие посты с разбивкой по заголовкам, списками и т. д.), но не менее полезен. Разберемся, что необходимо учитывать.
Стандартный Markdown vs. Markdown в Телеграм
Простота и читаемость синтаксиса, а также портативность файлов делают Markdown популярным инструментом для создания различного текстового контента — от документации до презентаций и комментариев на форумах. Язык позволяет сосредоточиться на содержании, а не на оформлении, что объясняет его широкое применение.
Функциональность Markdown в Телеграм, наоборот, ограничен. Вот основные различия:
Синтаксис
Стандартный Markdown использует определенный синтаксис для форматирования текста, например, # для заголовков, * для курсива, ** для жирного текста.
Markdown в Telegram использует слегка модифицированный синтаксис, который адаптирован под возможности платформы. Например, вместо *курсив* используется _курсив_.
Возможности
Стандартный Markdown поддерживает много способов форматирования текста: заголовки, списки, ссылки, изображения, таблицы и другие элементы.
Markdown в Telegram поддерживает основные типы форматирования текста (жирный, курсив, моноширинный и т. д.), а также вставку кода. Некоторые расширенные возможности, например, таблицы или уровни заголовков, недоступны. Однако стандартный Markdown не предполагает формат скрытого текста, до этого додумались только разработчики Telegram.
Отображение
Стандартный Markdown отображается в соответствии с его синтаксисом, и результат одинаков независимо от публикуемой платформы.
Markdown в Telegram отображается с учетом особенностей платформы. Например, код будет встроенным сообщением (и его можно скопировать одним кликом), а на скрытый текст придется нажать.
Совместимость
Стандартный Markdown совместим с большинством приложений и платформ, поддерживающих Markdown-форматирование (логично).
Markdown в Telegram специфичен для платформы и может не отображаться корректно или быть недоступным в других приложениях.
Перейдем к конкретным инструкциям. Как же использовать Markdown?
Инструкция: Markdown + текст + Telegram
Если мы зайдем на официальный сайт Teлеграм, то увидим вкладку с простым синтаксисом. Выглядит она так:
Но не все так просто. Если мы попробуем скопировать, выйдет примерно это:
Видно, что не работает часть функций (подчеркнутый формат в гайде вообще представлен через HTML). Путем недолгих манипуляций с текстом находим правильный синтаксис:
**Жирный текст**
__курсивный текст__
~~перечеркнутый текст ~~
`моноширный текст`
||скрытый текст||
Такую верстку можно применять как в личных сообщениях, так и в постах в каналах. Некогда были доступны гиперссылки, подчеркнутый текст и цитаты, но сейчас эти фичи не работают через стандартный Markdown. Если они вам нужны, примените специальное форматирование через сочетание клавиш:
Подчеркнутый текст — Ctrl+U
Гиперссылка — Ctrl+K
Цитата — Ctrl+Shift+точка
HTML-разметка тоже канула в лету. Если раньше можно было форматировать через специального бота и вспоминать времена MySpace, то сегодня Telegram стремится к упрощению.
Но что если вы — разработчик или техническая команда? Мессенджер предусмотрел и это. Так как из письменных строк получить красивую вставку?
Инструкция: Markdown + код + Telegram
Возможности Telegram позволяют использовать простенький синтаксис, чтобы добавлять код. Сейчас это:
Для строки кода — обрамляем обратными апострофами (``).
Для блока кода — используем три обратных апострофа (```), после которых указываем язык программирования. Например:
```python
def hello(name: str = "World"):
print(f'Hello, {name}!')
hello()
hello("Tproger")
```
Казалось бы, процесс предельно понятен. Расставили апострофы и радуемся. Но на что стоит обращать пристальное внимание?
1. Не забывайте про синтаксическое подсвечивание. Telegram поддерживает подсветку синтаксиса для разных языков программирования. После открывающих трех обратных апострофов нужно указать язык (например, ```python).
2. Используйте возможности редакторов. Многие современные редакторы (например, Visual Studio Code, Sublime Text) имеют расширения для Markdown, которые помогают в оформлении и предварительном просмотре кода.
К примеру, в Visual Studio Code можно быстро создать блок кода, нажав комбинацию клавиш Ctrl+K Ctrl+C (или Cmd+K Cmd+C на Mac). Редактор автоматически добавит обратные апострофы и укажет язык программирования.
3. Используйте выравнивание кода. При использовании блоков кода следите за правильным отступом и выравниванием. Это улучшит читаемость вашего текста.
4. Не забывайте про экранирование специальных символов. Если в вашем коде присутствуют специальные символы (например, звездочки, подчеркивания), их необходимо экранировать обратным слешем (\), чтобы они не были интерпретированы как форматирование.
Например: print("Hello, \*World\*!")
5. Используйте комбинации клавиш для создания блоков кода. Многие редакторы текста предлагают сочетания клавиш для быстрого создания блоков кода в Markdown. Узнайте, какие они доступны в вашем редакторе.
В Sublime Text можно создать блок кода, нажав Ctrl+Shift+P (или Cmd+Shift+P на Mac), выбрав "Markdown: Insert Code Block" и указав язык программирования.
Markdown — простенький, но крайне полезный инструмент для нашего клипового мышления. Возможность форматировать текст и добавлять код — то, за что мы можем любить Телеграм.
17К открытий57К показов