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
bec31032cc
commit
71c39b8e6f
1 changed files with 22 additions and 10 deletions
|
|
@ -210,16 +210,28 @@ class Markdown:
|
||||||
e = entity.offset + entity.length
|
e = entity.offset + entity.length
|
||||||
delimiter = delimiters.get(entity.type, None)
|
delimiter = delimiters.get(entity.type, None)
|
||||||
if delimiter:
|
if delimiter:
|
||||||
open_delimiter = delimiter
|
if entity.type != MessageEntityType.BLOCKQUOTE and entity.type != MessageEntityType.EXPANDABLE_BLOCKQUOTE:
|
||||||
close_delimiter = delimiter
|
open_delimiter = delimiter
|
||||||
if entity.type == MessageEntityType.PRE:
|
close_delimiter = delimiter
|
||||||
close_delimiter = '\n' + delimiter
|
if entity.type == MessageEntityType.PRE:
|
||||||
if entity.language:
|
close_delimiter = '\n' + delimiter
|
||||||
open_delimiter += entity.language + '\n'
|
if entity.language:
|
||||||
else:
|
open_delimiter += entity.language + '\n'
|
||||||
open_delimiter += '\n'
|
else:
|
||||||
insert_at.append((s, i, open_delimiter))
|
open_delimiter += '\n'
|
||||||
insert_at.append((e, -i, close_delimiter))
|
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:
|
else:
|
||||||
url = None
|
url = None
|
||||||
if entity.type == MessageEntityType.TEXT_LINK:
|
if entity.type == MessageEntityType.TEXT_LINK:
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue