diff --git a/src/snek/system/markdown.py b/src/snek/system/markdown.py index f0b6e25..ca603d8 100644 --- a/src/snek/system/markdown.py +++ b/src/snek/system/markdown.py @@ -24,17 +24,20 @@ class MarkdownRenderer(HTMLRenderer): def _escape(self, str): return str ##escape(str) + def get_lexer(self, lang, default='bash'): + try: + return get_lexer_by_name(lang, stripall=True) + except: + return get_lexer_by_name(default, stripall=True) + def block_code(self, code, lang=None, info=None): if not lang: lang = info if not lang: lang = 'bash' - # return '\n
%s
\n' % escape(code) - lexer = get_lexer_by_name(lang, stripall=True) + lexer = self.get_lexer(lang) formatter = html.HtmlFormatter(lineseparator="
") result = highlight(code, lexer, formatter) - if not result: - return f"
{escape(code)}
" return result def render(self):