]> git.cameronkatri.com Git - cgit.git/commitdiff
md2html: use utf-8 and flush output buffer
authorJason A. Donenfeld <Jason@zx2c4.com>
Fri, 17 Jun 2016 10:27:10 +0000 (12:27 +0200)
committerJason A. Donenfeld <Jason@zx2c4.com>
Fri, 17 Jun 2016 10:28:03 +0000 (12:28 +0200)
Otherwise we get the classic Python UTF-8 errors, and the text is all
out of order. While we're at it, switch to python3 so we only have to
support one set of oddball semantics.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Suggested-by: Daniel Campbell <dlcampbell@gmx.com>
filters/html-converters/md2html

index c8ee7d97076d0885711923ae9dd1495fc6ee48f4..ebf3856a3978ed4385b61262650e3b6f6f1ca414 100755 (executable)
@@ -1,7 +1,11 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
 import markdown
+import sys
+import io
 from pygments.formatters import HtmlFormatter
-print('''
+sys.stdin = io.TextIOWrapper(sys.stdin.buffer, encoding='utf-8')
+sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
+sys.stdout.write('''
 <style>
 .markdown-body {
     font-size: 14px;
@@ -279,11 +283,12 @@ print('''
     border: none;
 }
 ''')
-print(HtmlFormatter(style='pastie').get_style_defs('.highlight'))
-print('''
+sys.stdout.write(HtmlFormatter(style='pastie').get_style_defs('.highlight'))
+sys.stdout.write('''
 </style>   
 ''')
-print("<div class='markdown-body'>")
+sys.stdout.write("<div class='markdown-body'>")
+sys.stdout.flush()
 # Note: you may want to run this through bleach for sanitization
 markdown.markdownFromFile(output_format="html5", extensions=["markdown.extensions.fenced_code", "markdown.extensions.codehilite", "markdown.extensions.tables"], extension_configs={"markdown.extensions.codehilite":{"css_class":"highlight"}})
-print("</div>")
+sys.stdout.write("</div>")