diff options
Diffstat (limited to 'highlight_code.py')
| -rwxr-xr-x | highlight_code.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/highlight_code.py b/highlight_code.py new file mode 100755 index 0000000..d708fd2 --- /dev/null +++ b/highlight_code.py @@ -0,0 +1,29 @@ +#!/bin/env python3 + +import os +import re +import subprocess + +code_format = "```{0}\n{1}\n```" +code_re = re.compile("<c (.*)>(.*)<\/c>") + +def main(): + while True: + try: + s = input() + except EOFError as e: + break + m = re.search(code_re, s) + if m: + pandoc = subprocess.Popen(["pandoc","-f", "markdown", "-"], + universal_newlines=True, stdin=subprocess.PIPE, + stdout=subprocess.PIPE) + code, err = pandoc.communicate(input=code_format.format(m.group(1), m.group(2))) + pandoc.kill() + s = re.sub(code_re, code, s) + s = s.replace('\n', '') + print(s) + + +if __name__ == "__main__": + main() |
