Fix code highlight

This commit is contained in:
Thomas Sileo 2022-07-12 09:43:50 +02:00
parent 368dd30e8f
commit 4080d1432e
2 changed files with 6 additions and 2 deletions

View file

@ -66,6 +66,7 @@ _RESIZED_CACHE: MutableMapping[tuple[str, int], tuple[bytes, str, Any]] = LFUCac
# TODO(ts):
#
# Next:
# - DB models for webmentions
# - allow to undo follow requests
# - indieauth tweaks
# - API for posting notes

View file

@ -16,9 +16,12 @@ def highlight(html: str) -> str:
for code in soup.find_all("code"):
if not code.parent.name == "pre":
continue
lexer = guess_lexer(code.text)
code_content = (
code.encode_contents().decode().replace("<br>", "\n").replace("<br/>", "\n")
)
lexer = guess_lexer(code_content)
tag = BeautifulSoup(
phighlight(code.text, lexer, _FORMATTER), "html5lib"
phighlight(code_content, lexer, _FORMATTER), "html5lib"
).body.next
pre = code.parent
pre.replaceWith(tag)