mirror of
https://github.com/Mayuri-Chan/pyrofork.git
synced 2025-12-29 12:04:51 +00:00
pyrofork: Add support for multi-line blockquote in markdown unparser
Signed-off-by: wulan17 <wulan17@nusantararom.org>
This commit is contained in:
parent
4a5af71d25
commit
943a7e0342
1 changed files with 21 additions and 9 deletions
|
|
@ -210,15 +210,27 @@ class Markdown:
|
|||
e = entity.offset + entity.length
|
||||
delimiter = delimiters.get(entity.type, None)
|
||||
if delimiter:
|
||||
if entity.type != MessageEntityType.BLOCKQUOTE and entity.type != MessageEntityType.EXPANDABLE_BLOCKQUOTE:
|
||||
open_delimiter = delimiter
|
||||
close_delimiter = delimiter
|
||||
if entity.type == MessageEntityType.PRE:
|
||||
if entity.language:
|
||||
open_delimiter += entity.language + '\n'
|
||||
else:
|
||||
open_delimiter += '\n'
|
||||
open_delimiter += entity + '\n'
|
||||
insert_at.append((s, i, open_delimiter))
|
||||
insert_at.append((e, -i, close_delimiter))
|
||||
else:
|
||||
# Handle multiline blockquotes
|
||||
text_subset = text[s:e]
|
||||
lines = text_subset.splitlines()
|
||||
for line_num, line in enumerate(lines):
|
||||
line_start = s + sum(len(l) + 1 for l in lines[:line_num])
|
||||
if entity.collapsed:
|
||||
insert_at.append((line_start, i, BLOCKQUOTE_EXPANDABLE_DELIM))
|
||||
else:
|
||||
insert_at.append((line_start, i, BLOCKQUOTE_DELIM))
|
||||
# No closing delimiter for blockquotes
|
||||
else:
|
||||
url = None
|
||||
if entity.type == MessageEntityType.TEXT_LINK:
|
||||
|
|
|
|||
Loading…
Reference in a new issue