diff options
Diffstat (limited to 'markdown_renderer.py')
-rw-r--r-- | markdown_renderer.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/markdown_renderer.py b/markdown_renderer.py new file mode 100644 index 0000000..2f78a0d --- /dev/null +++ b/markdown_renderer.py @@ -0,0 +1,26 @@ +import tempfile +import webbrowser +import misaka +import sys +import os + +class SearchReportRenderer(misaka.HtmlRenderer): + # override the default renderer to add line breaks after every paragraph + def paragraph(self, text): + return "<p>%s</p><br><br>" % text + +def render(md_path): + renderer = SearchReportRenderer() + md = misaka.Markdown(renderer) + with open(md_path, "r", encoding='utf-8') as f: + return md(f.read()) + +def render_and_view(md_path): + html_path = os.path.join(*os.path.split(md_path)[:-1], os.path.splitext(os.path.split(md_path)[-1])[0] + ".html") + with open(html_path, "w", encoding='utf-8') as f: + f.writelines(render(md_path)) + + webbrowser.open(html_path) + +if __name__ == "__main__": + render_and_view(sys.argv[1])
\ No newline at end of file |