Пример #1
0
class WikiMarkdown:
    def __init__(self):
        renderer = WikiRenderer()
        inline = WikiInlineLexer(renderer)
        # enable the feature
        inline.enable_wiki_page()
        inline.enable_wiki_file()
        self.markdown = Markdown(renderer, inline=inline)

    def __call__(self, wiki_page, markdown):
        g.wiki_page = wiki_page
        self.markdown.renderer.reset_toc()
        html = self.markdown.parse(markdown)

        # workaround for when there is no headings
        try:
            toc = self.markdown.renderer.render_toc(level=3)
        except TypeError:
            toc = ''
        return toc, html
Пример #2
0
 def parse_md_file(self, renderer, markdown):
     """ parse markdown file according to our renderer type """
     dict_renderer = renderer()
     md = Markdown(escape=True, renderer=dict_renderer)
     md.parse(markdown)
     return md.renderer.get_python_dict()