Markdown в Telegram: как выделить код (и не только)

Расскажем о том, как правильно форматировать код и текст через Markdown в Telegram. Это удобный способ делиться технической информацией через мессенджер

11К открытий43К показов
Markdown в Telegram: как выделить код (и не только)

«Долой 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леграм, то увидим вкладку с простым синтаксисом. Выглядит она так:

Markdown в Telegram: как выделить код (и не только) 1

Но не все так просто. Если мы попробуем скопировать, выйдет примерно это:

Markdown в Telegram: как выделить код (и не только) 2

Видно, что не работает часть функций (подчеркнутый формат в гайде вообще представлен через HTML). Путем недолгих манипуляций с текстом находим правильный синтаксис:

**Жирный текст**

__курсивный текст__

~~перечеркнутый текст ~~

`моноширный текст`

||скрытый текст||

Markdown в Telegram: как выделить код (и не только) 3

Такую верстку можно применять как в личных сообщениях, так и в постах в каналах. Некогда были доступны гиперссылки, подчеркнутый текст и цитаты, но сейчас эти фичи не работают через стандартный 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")

```

Markdown в Telegram: как выделить код (и не только) 4
Так это будет выглядеть в Telegram
Markdown в Telegram: как выделить код (и не только) 5
Попробуем что-нибудь написать на Java

Казалось бы, процесс предельно понятен. Расставили апострофы и радуемся. Но на что стоит обращать пристальное внимание?

1. Не забывайте про синтаксическое подсвечивание. Telegram поддерживает подсветку синтаксиса для разных языков программирования. После открывающих трех обратных апострофов нужно указать язык (например, ```python).

Markdown в Telegram: как выделить код (и не только) 6

2. Используйте возможности редакторов. Многие современные редакторы (например, Visual Studio Code, Sublime Text) имеют расширения для Markdown, которые помогают в оформлении и предварительном просмотре кода.

К примеру, в Visual Studio Code можно быстро создать блок кода, нажав комбинацию клавиш Ctrl+K Ctrl+C (или Cmd+K Cmd+C на Mac). Редактор автоматически добавит обратные апострофы и укажет язык программирования.

3. Используйте выравнивание кода. При использовании блоков кода следите за правильным отступом и выравниванием. Это улучшит читаемость вашего текста.

Markdown в Telegram: как выделить код (и не только) 7

4. Не забывайте про экранирование специальных символов. Если в вашем коде присутствуют специальные символы (например, звездочки, подчеркивания), их необходимо экранировать обратным слешем (\), чтобы они не были интерпретированы как форматирование.

Например: print("Hello, \*World\*!")

5. Используйте комбинации клавиш для создания блоков кода. Многие редакторы текста предлагают сочетания клавиш для быстрого создания блоков кода в Markdown. Узнайте, какие они доступны в вашем редакторе.

В Sublime Text можно создать блок кода, нажав Ctrl+Shift+P (или Cmd+Shift+P на Mac), выбрав "Markdown: Insert Code Block" и указав язык программирования.

Markdown — простенький, но крайне полезный инструмент для нашего клипового мышления. Возможность форматировать текст и добавлять код  —  то, за что мы можем любить Телеграм. 

Следите за новыми постами
Следите за новыми постами по любимым темам
11К открытий43К показов