mirror of
https://github.com/LonamiWebs/Telethon.git
synced 2025-07-22 05:49:45 +03:00
add spoiler, strike and underline
- markdown ||spoiler|| - html <spoiler>spoiler</spoiler> - html <strike>strike</strike> - markdown --underline--
This commit is contained in:
parent
e750eb7ab5
commit
2084fd66af
|
@ -12,7 +12,7 @@ from ..tl.types import (
|
||||||
MessageEntityBold, MessageEntityItalic, MessageEntityCode,
|
MessageEntityBold, MessageEntityItalic, MessageEntityCode,
|
||||||
MessageEntityPre, MessageEntityEmail, MessageEntityUrl,
|
MessageEntityPre, MessageEntityEmail, MessageEntityUrl,
|
||||||
MessageEntityTextUrl, MessageEntityMentionName,
|
MessageEntityTextUrl, MessageEntityMentionName,
|
||||||
MessageEntityUnderline, MessageEntityStrike, MessageEntityBlockquote,
|
MessageEntityUnderline, MessageEntityStrike, MessageEntityBlockquote, MessageEntitySpoiler,
|
||||||
TypeMessageEntity
|
TypeMessageEntity
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -51,10 +51,12 @@ class HTMLToTelegramParser(HTMLParser):
|
||||||
EntityType = MessageEntityItalic
|
EntityType = MessageEntityItalic
|
||||||
elif tag == 'u':
|
elif tag == 'u':
|
||||||
EntityType = MessageEntityUnderline
|
EntityType = MessageEntityUnderline
|
||||||
elif tag == 'del' or tag == 's':
|
elif tag in ['del', 's', 'strike']:
|
||||||
EntityType = MessageEntityStrike
|
EntityType = MessageEntityStrike
|
||||||
elif tag == 'blockquote':
|
elif tag == 'blockquote':
|
||||||
EntityType = MessageEntityBlockquote
|
EntityType = MessageEntityBlockquote
|
||||||
|
elif tag == 'spoiler':
|
||||||
|
EntityType = MessageEntitySpoiler
|
||||||
elif tag == 'code':
|
elif tag == 'code':
|
||||||
try:
|
try:
|
||||||
# If we're in the middle of a <pre> tag, this <code> tag is
|
# If we're in the middle of a <pre> tag, this <code> tag is
|
||||||
|
@ -195,8 +197,14 @@ def unparse(text: str, entities: Iterable[TypeMessageEntity], _offset: int = 0,
|
||||||
html.append('<u>{}</u>'.format(entity_text))
|
html.append('<u>{}</u>'.format(entity_text))
|
||||||
elif entity_type == MessageEntityStrike:
|
elif entity_type == MessageEntityStrike:
|
||||||
html.append('<del>{}</del>'.format(entity_text))
|
html.append('<del>{}</del>'.format(entity_text))
|
||||||
|
elif entity_type == MessageEntityStrike:
|
||||||
|
html.append('<s>{}</s>'.format(entity_text))
|
||||||
|
elif entity_type == MessageEntityStrike:
|
||||||
|
html.append('<strike>{}</strike>'.format(entity_text))
|
||||||
elif entity_type == MessageEntityBlockquote:
|
elif entity_type == MessageEntityBlockquote:
|
||||||
html.append('<blockquote>{}</blockquote>'.format(entity_text))
|
html.append('<blockquote>{}</blockquote>'.format(entity_text))
|
||||||
|
elif entity_type == MessageEntitySpoiler:
|
||||||
|
html.append('<spoiler>{}</spoiler>'.format(entity_text))
|
||||||
elif entity_type == MessageEntityPre:
|
elif entity_type == MessageEntityPre:
|
||||||
if entity.language:
|
if entity.language:
|
||||||
html.append(
|
html.append(
|
||||||
|
|
|
@ -11,7 +11,7 @@ from ..tl import TLObject
|
||||||
from ..tl.types import (
|
from ..tl.types import (
|
||||||
MessageEntityBold, MessageEntityItalic, MessageEntityCode,
|
MessageEntityBold, MessageEntityItalic, MessageEntityCode,
|
||||||
MessageEntityPre, MessageEntityTextUrl, MessageEntityMentionName,
|
MessageEntityPre, MessageEntityTextUrl, MessageEntityMentionName,
|
||||||
MessageEntityStrike
|
MessageEntityStrike, MessageEntityUnderline, MessageEntitySpoiler
|
||||||
)
|
)
|
||||||
|
|
||||||
DEFAULT_DELIMITERS = {
|
DEFAULT_DELIMITERS = {
|
||||||
|
@ -19,7 +19,9 @@ DEFAULT_DELIMITERS = {
|
||||||
'__': MessageEntityItalic,
|
'__': MessageEntityItalic,
|
||||||
'~~': MessageEntityStrike,
|
'~~': MessageEntityStrike,
|
||||||
'`': MessageEntityCode,
|
'`': MessageEntityCode,
|
||||||
'```': MessageEntityPre
|
'```': MessageEntityPre,
|
||||||
|
'--': MessageEntityUnderline,
|
||||||
|
'||': MessageEntitySpoiler
|
||||||
}
|
}
|
||||||
|
|
||||||
DEFAULT_URL_RE = re.compile(r'\[([^\]]+)\]\(([^)]+)\)')
|
DEFAULT_URL_RE = re.compile(r'\[([^\]]+)\]\(([^)]+)\)')
|
||||||
|
|
Loading…
Reference in New Issue
Block a user