From 3ae5f072ee3ea0f39d54a7c8a9bc275034f3b4d0 Mon Sep 17 00:00:00 2001 From: Miguel BarĂ£o Date: Fri, 23 Dec 2022 18:14:02 +0000 Subject: [PATCH] update to new mistune 3.0.0rc4 --- aprendizations/renderer_markdown.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+), 0 deletions(-) create mode 100644 aprendizations/renderer_markdown.py diff --git a/aprendizations/renderer_markdown.py b/aprendizations/renderer_markdown.py new file mode 100644 index 0000000..c504126 --- /dev/null +++ b/aprendizations/renderer_markdown.py @@ -0,0 +1,27 @@ + +# third party libraries +import mistune +from mistune.plugins.math import math + +from pygments import highlight +from pygments.lexers import get_lexer_by_name +# from pygments.formatters import HtmlFormatter +from pygments.formatters import html + +class HighlightRenderer(mistune.HTMLRenderer): + def block_code(self, code, info=None): + if info: + lexer = get_lexer_by_name(info, stripall=True) + formatter = html.HtmlFormatter() + return highlight(code, lexer, formatter) + return '
' + mistune.escape(code) + '
' + + def image(self, text, url, title=None): + text = mistune.escape(text, quote=True) + title = mistune.escape(title or '', quote=True) + return (f'{text}') + +md_to_html = mistune.create_markdown(renderer=HighlightRenderer(), plugins=[math]) +# FIXME error "argument HighlightRenderer cannot be assigned to parameter +# renderer of type str. HighlightRenderer is incimpatible with str" -- libgit2 0.21.2