# HG changeset patch # User Martin Geisler # Date 1272009205 -7200 # Node ID 854ac04d712c2293f8b3e110951958c4ce5f2dcb # Parent 49a07f44149631b668682bb65dbc9973bf113e3a doc: make links for hg role The system has a bit of smartness: :hg:`update` -> links to hg.1.html#update :hg:`help diffs` -> links to hg.1.html#diffs diff -r 49a07f441496 -r 854ac04d712c doc/runrst --- a/doc/runrst Thu Apr 22 10:24:49 2010 +0200 +++ b/doc/runrst Fri Apr 23 09:53:25 2010 +0200 @@ -19,7 +19,14 @@ def role_hg(name, rawtext, text, lineno, inliner, options={}, content=[]): - node = nodes.literal(rawtext, "hg " + utils.unescape(text, True)) + text = "hg " + utils.unescape(text) + linktext = nodes.literal(rawtext, text) + parts = text.split() + cmd, args = parts[1], parts[2:] + if cmd == 'help' and args: + cmd = args[0] # link to 'dates' for 'hg help dates' + node = nodes.reference(rawtext, '', linktext, + refuri="hg.1.html#%s" % cmd) return [node], [] roles.register_local_role("hg", role_hg)