Перейти к основному содержимому
Версия: 2.2.2-1

Форматирование

в RimTUB используется HTML разметка для форматирования сообщений.

warning

Настоятельно рекомендуется использовать функции форматирования (которые здесь описаны) для форматирования текста

Почему?

  • Безопасность: При использовании функций форматирования весь входной текст экранируется. Т.е. исключаются ошибки форматирования.
  • Совместимость: Если обновится форматирование в Pyrogram (например, изменится название тега или аттрибута) не нужно будет переписывать все форматирование.

Быстрый свод функций форматирования

ФункцияОписаниепример
escape("<text & <<>")Экранирует текст для подстановки. Встроенно во все функции форматирования.&lt;text &amp; &lt;&lt;&gt;
code('text')моноширинный текст. Копируется при нажатииtext
pre('code', "py")Блок кода с подсветкой синтаксиса
code
emoji(5404799425245626483, "🌟")Премиум емодзи. ID можно узнать командой .emjs🌟
bq("text", True)Блок цитаты. Второй аргумент, если True то цитату можно будет свернуть/развернуть
text
blockquote("text", True)тоже самое, что и bq.
text
b('text')Жирный тексттекст
i('text')Наклонный тексттекст
s('text')Зачеркнутый тексттекст
u('text')Подчеркнутый тексттекст
a('text', 'https://t.me/RimTUB')Ссылкаtext
spoiler('text')Спойлер. Текст покажется только после нажатияпоказать невозможно

Все функции

escape

Экранирует специальные HTML символы в строке.

Аргументы:

  • text (str) - Текст для экранирования.

Возвращает: str - Экранированный текст.

Пример:

escape("<notag>Test & Test</notag>")

format_tag

Генерирует HTML тег.

Аргументы:

  • tag_name (str) - Имя тега. Например "a" или "div".
  • content (str) = "" - Содержимое тега.
  • escape_content (bool) = True - Нужно ли экранировать контент.
  • close_tag (bool) = True - Нужен ли закрывающий тег.
  • kwargs (dict) - Атрибуты тега.

Возвращает: str - Сгенерированный HTML тег.

Пример:

format_tag('new_formatting_on_TG', 'test text', color="Red")

code

Создает HTML тег для кода.

Аргументы:

  • text (str) - Код для размещения в теге.
  • escape_html (bool) = True - Нужно ли экранировать HTML в коде.

Возвращает: str - Сгенерированный HTML тег для кода.

Пример:

code('print("Hello World")')

pre

Генерирует HTML тег для отображения блока кода.

Аргументы:

  • text (str) - Код для отображения в теге.
  • lang (str) = "" - Язык программирования.
  • escape_html (bool) = True - Нужно ли экранировать HTML.

Возвращает: str - Сгенерированный HTML тег для отображения блока кода.

Пример:

pre('print("Hello World")', lang="python")

blockquote

Создает HTML тег для блока цитаты.

Аргументы:

  • text (str) - Текст для размещения в теге.
  • expandable (bool) = False - Можно ли разворачивать цитату.
  • escape_html (bool) = True - Нужно ли экранировать HTML.

Возвращает: str - Сгенерированный HTML тег для блока цитаты.

Пример:

blockquote('This is a quote.', expandable=True)

bq

Тоже самое что и blockquote. Создает HTML тег для блока цитаты.

Аргументы:

  • text (str) - Текст для размещения в теге.
  • expandable (bool) = False - Можно ли разворачивать цитату.
  • escape_html (bool) = True - Нужно ли экранировать HTML.

Возвращает: str - Сгенерированный HTML тег для блока цитаты.

Пример:

bq('This is a blockquote.', expandable=True)

b

Создает HTML тег для жирного текста.

Аргументы:

  • text (str) - Текст для размещения в теге.
  • escape_html (bool) = True - Нужно ли экранировать HTML.

Возвращает: str - Сгенерированный HTML тег для жирного текста.

Пример:

b('Bold text')

i

Создает HTML тег для курсива.

Аргументы:

  • text (str) - Текст для размещения в теге.
  • escape_html (bool) = True - Нужно ли экранировать HTML.

Возвращает: str - Сгенерированный HTML тег для курсива.

Пример:

i('Italic text')

a

Создает HTML тег для ссылки.

Аргументы:

  • text (str) - Текст ссылки.
  • url (str) = "" - URL для ссылки.
  • escape_html (bool) = True - Нужно ли экранировать HTML.

Возвращает: str - Сгенерированный HTML тег для ссылки.

Пример:

a('Click Here', 'https://example.com')

u

Создает HTML тег для подчеркивания текста.

Аргументы:

  • text (str) - Текст для размещения в теге.
  • escape_html (bool) = True - Нужно ли экранировать HTML.

Возвращает: str - Сгенерированный HTML тег для подчеркивания текста.

Пример:

u('Underlined text')

s

Создает HTML тег для зачеркнутого текста.

Аргументы:

  • text (str) - Текст для размещения в теге.
  • escape_html (bool) = True - Нужно ли экранировать HTML.

Возвращает: str - Сгенерированный HTML тег для зачеркнутого текста.

Пример:

s('Strikethrough text')

spoiler

Создает HTML тег для спойлера.

Аргументы:

  • text (str) - Текст для размещения в теге.
  • escape_html (bool) = True - Нужно ли экранировать HTML.

Возвращает: str - Сгенерированный HTML тег для спойлера.

Пример:

spoiler('This is a spoiler')

emoji

Создает HTML тег для премиум эмодзи.

Аргументы:

  • id (int) - ID кастомного эмодзи.
  • emoticon (str) - Стандартный эмодзи, который будет показываться, если у пользователя нет Telegram Premium.

Возвращает: str - Сгенерированный HTML тег для кастомного эмодзи.

Пример:

emoji(5404799425245626483, "🌟")

remove_emoji_tags

Удаляет из текста премиум эмодзи.

Аргументы:

  • text (str) - Текст с эмодзи.

Возвращает: str - Текст без эмодзи.

Пример:

text_with_emojis = f"RimTUB {emoji(5404799425245626483, '🌟')}"
text = remove_emoji_tags(text_with_emojis)
# text = 'RimTUB 🌟'