diff options
Diffstat (limited to 'doc/build/builder/builders.py')
-rw-r--r-- | doc/build/builder/builders.py | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/doc/build/builder/builders.py b/doc/build/builder/builders.py deleted file mode 100644 index 57c88ee..0000000 --- a/doc/build/builder/builders.py +++ /dev/null @@ -1,97 +0,0 @@ -from sphinx.application import TemplateBridge -from sphinx.builders.html import StandaloneHTMLBuilder -from sphinx.highlighting import PygmentsBridge -from sphinx.jinja2glue import BuiltinTemplateLoader -from pygments import highlight -from pygments.lexer import RegexLexer, bygroups, using -from pygments.token import * -from pygments.filter import Filter, apply_filters -from pygments.lexers import PythonLexer, PythonConsoleLexer -from pygments.formatters import HtmlFormatter, LatexFormatter -import re -import os -from mako.lookup import TemplateLookup -from mako.template import Template -from mako.ext.pygmentplugin import MakoLexer - -rtd = os.environ.get('READTHEDOCS', None) == 'True' - -class MakoBridge(TemplateBridge): - def init(self, builder, *args, **kw): - self.jinja2_fallback = BuiltinTemplateLoader() - self.jinja2_fallback.init(builder, *args, **kw) - - builder.config.html_context['site_base'] = builder.config['site_base'] - - self.lookup = TemplateLookup( - directories=builder.config.templates_path, - imports=[ - "from builder import util" - ], - #format_exceptions=True, - ) - - def render(self, template, context): - template = template.replace(".html", ".mako") - context['prevtopic'] = context.pop('prev', None) - context['nexttopic'] = context.pop('next', None) - - # RTD layout - if rtd: - # add variables if not present, such - # as if local test of READTHEDOCS variable - if 'MEDIA_URL' not in context: - context['MEDIA_URL'] = "http://media.readthedocs.org/" - if 'slug' not in context: - context['slug'] = "mako-test-slug" - if 'url' not in context: - context['url'] = "/some/test/url" - if 'current_version' not in context: - context['current_version'] = "some_version" - if 'versions' not in context: - context['versions'] = [('default', '/default/')] - - context['docs_base'] = "http://readthedocs.org" - context['toolbar'] = True - context['layout'] = "rtd_layout.mako" - context['pdf_url'] = "%spdf/%s/%s/%s.pdf" % ( - context['MEDIA_URL'], - context['slug'], - context['current_version'], - context['slug'] - ) - # local docs layout - else: - context['toolbar'] = False - context['docs_base'] = "/" - context['layout'] = "layout.mako" - - context.setdefault('_', lambda x:x) - return self.lookup.get_template(template).render_unicode(**context) - - def render_string(self, template, context): - # this is used for .js, .css etc. and we don't have - # local copies of that stuff here so use the jinja render. - return self.jinja2_fallback.render_string(template, context) - -class StripDocTestFilter(Filter): - def filter(self, lexer, stream): - for ttype, value in stream: - if ttype is Token.Comment and re.match(r'#\s*doctest:', value): - continue - yield ttype, value - - -def autodoc_skip_member(app, what, name, obj, skip, options): - if what == 'class' and skip and name == '__init__': - return False - else: - return skip - -def setup(app): -# app.connect('autodoc-skip-member', autodoc_skip_member) - # Mako is already in Pygments, adding the local - # lexer here so that the latest syntax is available - app.add_lexer('mako', MakoLexer()) - app.add_config_value('site_base', "", True) - |