view scripts/fontaine @ 9:a5488b474c6b

Add HTML renderer.
author Ludovic Chabant <ludovic@chabant.com>
date Wed, 04 Jan 2017 02:56:08 -0800
parents 9053902c750e
children 2cea36073188
line wrap: on
line source

#!/usr/bin/env python
import os.path
import sys
import argparse


sys.path.append(os.path.dirname(os.path.dirname(__file__)))


def main():
    parser = argparse.ArgumentParser(
        description='Fontaine command line utility')
    parser.add_argument('script')
    parser.add_argument('out_file', nargs='?')
    args = parser.parse_args()

    from fontaine.parser import FontaineParser
    p = FontaineParser()
    doc = p.parse(args.script)

    if not args.out_file:
        from fontaine.console import ConsoleDocumentRenderer
        rdr = ConsoleDocumentRenderer()
        rdr.render_doc(doc, sys.stdout)
    else:
        from fontaine.html import HtmlDocumentRenderer
        rdr = HtmlDocumentRenderer()
        with open(args.out_file, 'w') as fp:
            rdr.render_doc(doc, fp)

if __name__ == '__main__':
    main()