from app import app from markupsafe import Markup from markdown import markdown from markdown.extensions.codehilite import CodeHiliteExtension from markdown.extensions.footnotes import FootnoteExtension from markdown.extensions.toc import TocExtension from app.utils.markdown_extensions.pclinks import PCLinkExtension from app.utils.markdown_extensions.escape_html import EscapeHtml @app.template_filter('md') def md(text): """ Converts markdown to html5 """ options = 0 extensions = [ # 'admonition', 'fenced_code', 'nl2br', 'sane_lists', 'tables', CodeHiliteExtension(linenums=True, use_pygments=True), EscapeHtml(), FootnoteExtension(UNIQUE_IDS=True), TocExtension(baselevel=2), PCLinkExtension(), ] out = markdown(text, options=options, extensions=extensions) return Markup(out)