Fixed formatting and html entity

This commit is contained in:
Painor 2018-10-04 10:38:32 +01:00
parent 0dc890e371
commit 2c4a8b0354
2 changed files with 13 additions and 14 deletions

View File

@ -9,8 +9,8 @@ from html.parser import HTMLParser
from ..tl.types import ( from ..tl.types import (
MessageEntityBold, MessageEntityItalic, MessageEntityCode, MessageEntityBold, MessageEntityItalic, MessageEntityCode,
MessageEntityPre, MessageEntityEmail, MessageEntityUrl, MessageEntityPre, MessageEntityEmail, MessageEntityUrl,
MessageEntityTextUrl, MessageEntityTextUrl, MessageEntityMentionName
MessageEntityMentionName) )
# Helpers from markdown.py # Helpers from markdown.py
@ -179,7 +179,7 @@ def unparse(text, entities):
html.append('<a href="{}">{}</a>' html.append('<a href="{}">{}</a>'
.format(escape(entity.url), entity_text)) .format(escape(entity.url), entity_text))
elif entity_type == MessageEntityMentionName: elif entity_type == MessageEntityMentionName:
html.append('<a href="{}">{}</a>' html.append('<a href="tg://user?id={}">{}</a>'
.format(entity.user_id, entity_text)) .format(entity.user_id, entity_text))
else: else:
skip_entity = True skip_entity = True

View File

@ -9,8 +9,8 @@ from ..helpers import add_surrogate, del_surrogate
from ..tl import TLObject from ..tl import TLObject
from ..tl.types import ( from ..tl.types import (
MessageEntityBold, MessageEntityItalic, MessageEntityCode, MessageEntityBold, MessageEntityItalic, MessageEntityCode,
MessageEntityPre, MessageEntityTextUrl, MessageEntityPre, MessageEntityTextUrl, MessageEntityMentionName
MessageEntityMentionName) )
DEFAULT_DELIMITERS = { DEFAULT_DELIMITERS = {
'**': MessageEntityBold, '**': MessageEntityBold,
@ -120,9 +120,9 @@ def parse(message, delimiters=None, url_re=None):
# If this is the case, we want to insert the delimiter character back. # If this is the case, we want to insert the delimiter character back.
if current is not None: if current is not None:
message = ( message = (
message[:current.offset] message[:current.offset]
+ end_delimiter + end_delimiter
+ message[current.offset:] + message[current.offset:]
) )
return del_surrogate(message), result return del_surrogate(message), result
@ -163,12 +163,11 @@ def unparse(text, entities, delimiters=None, url_fmt=None):
text = text[:s] + delimiter + text[s:e] + delimiter + text[e:] text = text[:s] + delimiter + text[s:e] + delimiter + text[e:]
elif isinstance(entity, MessageEntityTextUrl) and url_fmt: elif isinstance(entity, MessageEntityTextUrl) and url_fmt:
text = ( text = (
text[:s] + text[:s] +
add_surrogate(url_fmt.format(text[s:e], entity.url)) + add_surrogate(url_fmt.format(text[s:e], entity.url)) +
text[e:] text[e:]
) )
elif isinstance(entity, MessageEntityMentionName): elif isinstance(entity, MessageEntityMentionName):
text = text[:entity.offset] + "[{}](tg://user?id={})".format( text = text[:s] + "[{}](tg://user?id={})".format(
text[entity.offset:entity.offset + entity.length], entity.user_id) + text[ text[s:e], entity.user_id) + text[e:]
entity.offset + entity.length:]
return del_surrogate(text) return del_surrogate(text)