summaryrefslogtreecommitdiff
path: root/doc/_ext/px_xlator.py
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2009-05-26 23:41:24 -0400
committerNed Batchelder <ned@nedbatchelder.com>2009-05-26 23:41:24 -0400
commita70319af59dc99373fa1b8febd0bbf86b6ca5200 (patch)
treee1c4f9cf247b7318c5fc4123d5ab714b430d609c /doc/_ext/px_xlator.py
parentc77c6649d8438762f20fd9e15cf6c4cc9b94643b (diff)
downloadpython-coveragepy-a70319af59dc99373fa1b8febd0bbf86b6ca5200.tar.gz
First successful coversion .rst -> .px -> .html
Diffstat (limited to 'doc/_ext/px_xlator.py')
-rw-r--r--doc/_ext/px_xlator.py35
1 files changed, 25 insertions, 10 deletions
diff --git a/doc/_ext/px_xlator.py b/doc/_ext/px_xlator.py
index 65cb761..7bc3d69 100644
--- a/doc/_ext/px_xlator.py
+++ b/doc/_ext/px_xlator.py
@@ -6,25 +6,32 @@ def setup(app):
app.add_builder(PxBuilder)
-class PxTranslator(SmartyPantsHTMLTranslator):
+BaseHtmlXlator = SmartyPantsHTMLTranslator
+class PxTranslator(BaseHtmlXlator):
"""Adjust the HTML translator into a .px translator.
"""
def __init__(self, *args, **kwargs):
- SmartyPantsHTMLTranslator.__init__(self, *args, **kwargs)
+ BaseHtmlXlator.__init__(self, *args, **kwargs)
#self.document.reporter.debug_flag = 1
-
+ # To make the doc title be h0 (skipped), and the next h1.
+ self.initial_header_level = 0
+
def visit_section(self, node):
self.section_level += 1
def depart_section(self, node):
self.section_level -= 1
+ def visit_title(self, node):
+ if self.section_level == 1:
+ raise nodes.SkipNode
+ else:
+ BaseHtmlXlator.visit_title(self, node)
# TODO: get history from here?
def visit_field_list(self, node):
- #self.document.reporter.debug_flag = 1; # This should go somewhere else.
raise nodes.SkipNode
def depart_field_list(self, node): pass
@@ -35,14 +42,10 @@ class PxTranslator(SmartyPantsHTMLTranslator):
def visit_field_body(self, node): pass
def depart_field_body(self, node): pass
- def xx_visit_Text(self, node):
- self.body.append("XX")
- SmartyPantsHTMLTranslator.visit_Text(self, node)
-
def visit_literal_block(self, node):
if node.rawsource != node.astext():
# most probably a parsed-literal block -- don't highlight
- return BaseTranslator.visit_literal_block(self, node)
+ return BaseHtmlXlator.visit_literal_block(self, node)
lang = self.highlightlang
if node.has_key('language'):
# code-block directives
@@ -51,7 +54,14 @@ class PxTranslator(SmartyPantsHTMLTranslator):
self.body.append(self.encode(node.rawsource))
self.body.append('</code>\n')
raise nodes.SkipNode
-
+
+ def visit_desc_parameterlist(self, node):
+ self.body.append('(')
+ self.first_param = 1
+ def depart_desc_parameterlist(self, node):
+ self.body.append(')')
+
+
class PxBuilder(StandaloneHTMLBuilder):
name = 'px'
@@ -63,3 +73,8 @@ class PxBuilder(StandaloneHTMLBuilder):
self.out_suffix = '.px'
self.link_suffix = '.html'
+
+ self.px_uri = "/code/coverage/"
+
+ def get_target_uri(self, docname, typ=None):
+ return self.px_uri + docname + self.link_suffix