Text Formatting =============== Pyrogram, just like `Telegram Bot API`_, supports basic Markdown and HTML formatting styles for messages and media captions; Markdown uses the same syntax as Telegram Desktop's and is enabled by default. Beside bold, italic, and pre-formatted code, **Pyrogram does also support inline URLs and inline mentions of users**. Markdown Style -------------- To use this mode, pass :obj:`MARKDOWN ` or "markdown" in the *parse_mode* field when using :obj:`send_message `. Use the following syntax in your message: .. code:: **bold text** __italic text__ [inline URL](http://www.example.com/) [inline mention of a user](tg://user?id=123456789) `inline fixed-width code` ```block_language pre-formatted fixed-width code block ``` HTML Style ---------- To use this mode, pass :obj:`HTML ` or "html" in the *parse_mode* field when using :obj:`send_message `. The following tags are currently supported: .. code:: bold, bold italic, italic inline URL inline mention of a user inline fixed-width code
pre-formatted fixed-width code block
.. note:: Mentions are only guaranteed to work if you have already contacted the user. Examples -------- - Markdown inline entities (bold, italic, ...): .. code-block:: python client.send_message( chat_id="me", text=( "**bold**, " "__italic__, " "[mention](tg://user?id=23122162), " "[url](https://pyrogram.ml), " "`code`" ) ) - Markdown code blocks: .. code-block:: python client.send_message( chat_id="me", text=( # Code block language is optional "``` python\n" "for i in range(10):\n" " print(i)\n" "```" ) ) - HTML example: .. code-block:: python from pyrogram import ParseMode client.send_message( chat_id="me", text=( "bold, bold, " "italic, italic, " "inline URL, " "inline mention of a user, " "inline fixed-width code, " "
pre-formatted fixed-width code block
" ), parse_mode=ParseMode.HTML ) .. _Telegram Bot API: https://core.telegram.org/bots/api#formatting-options