summaryrefslogtreecommitdiff
path: root/sphinx/builders/websupport.py
diff options
context:
space:
mode:
Diffstat (limited to 'sphinx/builders/websupport.py')
-rw-r--r--sphinx/builders/websupport.py17
1 files changed, 11 insertions, 6 deletions
diff --git a/sphinx/builders/websupport.py b/sphinx/builders/websupport.py
index 8663dd3ca..4a33667c6 100644
--- a/sphinx/builders/websupport.py
+++ b/sphinx/builders/websupport.py
@@ -27,6 +27,7 @@ class WebSupportBuilder(PickleHTMLBuilder):
"""
name = 'websupport'
versioning_method = 'commentable'
+ versioning_compare = True # for commentable node's uuid stability.
def init(self):
PickleHTMLBuilder.init(self)
@@ -46,7 +47,8 @@ class WebSupportBuilder(PickleHTMLBuilder):
self.storage = storage
def init_translator_class(self):
- self.translator_class = WebSupportTranslator
+ if self.translator_class is None:
+ self.translator_class = WebSupportTranslator
def prepare_writing(self, docnames):
PickleHTMLBuilder.prepare_writing(self, docnames)
@@ -57,7 +59,8 @@ class WebSupportBuilder(PickleHTMLBuilder):
doctree.settings = self.docsettings
self.secnumbers = self.env.toc_secnumbers.get(docname, {})
- self.imgpath = '/' + posixpath.join(self.virtual_staticdir, '_images')
+ self.fignumbers = self.env.toc_fignumbers.get(docname, {})
+ self.imgpath = '/' + posixpath.join(self.virtual_staticdir, self.imagedir)
self.dlpath = '/' + posixpath.join(self.virtual_staticdir, '_downloads')
self.current_docname = docname
self.docwriter.write(doctree, destination)
@@ -69,7 +72,7 @@ class WebSupportBuilder(PickleHTMLBuilder):
self.handle_page(docname, ctx, event_arg=doctree)
def write_doc_serialized(self, docname, doctree):
- self.imgpath = '/' + posixpath.join(self.virtual_staticdir, '_images')
+ self.imgpath = '/' + posixpath.join(self.virtual_staticdir, self.imagedir)
self.post_process_images(doctree)
title = self.env.longtitles.get(docname)
title = title and self.render_partial(title)['title'] or ''
@@ -102,8 +105,10 @@ class WebSupportBuilder(PickleHTMLBuilder):
self.add_sidebars(pagename, ctx)
ctx.update(addctx)
- self.app.emit('html-page-context', pagename, templatename,
- ctx, event_arg)
+ newtmpl = self.app.emit_firstresult('html-page-context', pagename,
+ templatename, ctx, event_arg)
+ if newtmpl:
+ templatename = newtmpl
# create a dict that will be pickled and used by webapps
doc_ctx = {
@@ -147,7 +152,7 @@ class WebSupportBuilder(PickleHTMLBuilder):
PickleHTMLBuilder.handle_finish(self)
# move static stuff over to separate directory
- directories = ['_images', '_static']
+ directories = [self.imagedir, '_static']
for directory in directories:
src = path.join(self.outdir, directory)
dst = path.join(self.staticdir, directory)