doc/runrst
author Martin Geisler <mg@aragost.com>
Thu, 22 Apr 2010 10:04:53 +0200
changeset 10972 0a2c6948f5f4
parent 10971 cbe400a8e217
child 10974 854ac04d712c
permissions -rwxr-xr-x
doc, minirst: support hg interpreted text role

#!/usr/bin/env python
#
# runrst - register custom roles and run correct writer
#
# Copyright 2010 Matt Mackall <mpm@selenic.com> and others
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.

"""usage: %s WRITER args...

where WRITER is the name of a Docutils writer such as 'html' or 'manpage'
"""

import sys
from docutils.parsers.rst import roles
from docutils.core import publish_cmdline
from docutils import nodes, utils

def role_hg(name, rawtext, text, lineno, inliner,
            options={}, content=[]):
    node = nodes.literal(rawtext, "hg " + utils.unescape(text, True))
    return [node], []

roles.register_local_role("hg", role_hg)

if __name__ == "__main__":
    if len(sys.argv) < 2:
        sys.stderr.write(__doc__ % sys.argv[0])
        sys.exit(1)

    writer = sys.argv[1]
    del sys.argv[1]

    publish_cmdline(writer_name=writer)