Open SKY-ALIN opened 2 years ago
Interesting proposal. I'll have a closer look next week.
Ok. Also, I can help with the integration if you agree with the approach
Hi! What have you decided on this issue?
from telegram_text import Bold, Italic, Underline
text = Underline(Bold("Bold") + "and" + Italic("italic") + "with underline.")
Hello! I want to table a proposal to add a special submodule to generate Telegram-specific markup easily.
Motivation
A common markdown format that every programmer uses is really simple and doesn’t require special utils for that, but MarkdownV2 and HTML which let include spoiler, strikethrough and other telegram innovations are different. For example, MarkdownV2 also requires to escape 18 characters, and if it’s not, reject the request. This may make the task of designing markup generation for bots that include business logic complicated enough and I suppose it’s better to have a ready-made out-of-the-box solution for this.
Implementation suggestion
General explanation
I have recently worked on a related challenge and I’m writing this to propose to re-use my solution. It’s the
telegram-text
module. The general structure in the context of thepytgbot
module I propose to implement is the following:telegram-text
as a dependency (maybe even optional)pytgbot
module core to import styles and other needed classes asfrom pytgbot import ...
. Or it’s quite pretty to add a separated file (text.py
ormarkup.py
for example) to import asfrom pytgbot.text import ...
Why
telegram-text
module?Example of the module:
Usage example in the
pytgbot
context