diff options
Diffstat (limited to 'docs/themes/sphinx_rtd_theme/layout.html')
-rw-r--r-- | docs/themes/sphinx_rtd_theme/layout.html | 204 |
1 files changed, 110 insertions, 94 deletions
diff --git a/docs/themes/sphinx_rtd_theme/layout.html b/docs/themes/sphinx_rtd_theme/layout.html index 246d2112a33..1d701197602 100644 --- a/docs/themes/sphinx_rtd_theme/layout.html +++ b/docs/themes/sphinx_rtd_theme/layout.html @@ -7,56 +7,74 @@ {%- set titlesuffix = "" %} {%- endif %} {%- set lang_attr = 'en' if language == None else (language | replace('_', '-')) %} -{%- set sphinx_writer = 'writer-html5' if html5_doctype else 'writer-html4' %} +{%- set sphinx_writer = 'writer-html5' if html5_doctype else 'writer-html4' -%} + +{# Build sphinx_version_info tuple from sphinx_version string in pure Jinja #} +{%- set (_ver_major, _ver_minor, _ver_bugfix) = sphinx_version.split('.') | map('int') -%} +{%- set sphinx_version_info = (_ver_major, _ver_minor, _ver_bugfix) -%} <!DOCTYPE html> <html class="{{ sphinx_writer }}" lang="{{ lang_attr }}" > <head> - <meta charset="utf-8"> - {{ metatags }} - <meta name="viewport" content="width=device-width, initial-scale=1.0"> - {% block htmltitle %} + <meta charset="utf-8" /> + {{- metatags }} + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + {%- block htmltitle %} <title>{{ title|striptags|e }}{{ titlesuffix }}</title> - {% endblock %} + {%- endblock -%} - {# CSS #} - <link rel="stylesheet" href="{{ pathto('_static/' + style, 1) }}" type="text/css" /> - <link rel="stylesheet" href="{{ pathto('_static/pygments.css', 1) }}" type="text/css" /> + {#- CSS #} + {%- if sphinx_version_info < (4, 0) -%} + <link rel="stylesheet" href="{{ pathto('_static/' + style, 1) }}" type="text/css" /> + <link rel="stylesheet" href="{{ pathto('_static/pygments.css', 1) }}" type="text/css" /> + {%- endif %} {%- for css in css_files %} {%- if css|attr("rel") %} - <link rel="{{ css.rel }}" href="{{ pathto(css.filename, 1) }}" type="text/css"{% if css.title is not none %} title="{{ css.title }}"{% endif %} /> + <link rel="{{ css.rel }}" href="{{ pathto(css.filename, 1) }}" type="text/css"{% if css.title is not none %} title="{{ css.title }}"{% endif %} /> {%- else %} - <link rel="stylesheet" href="{{ pathto(css, 1) }}" type="text/css" /> + <link rel="stylesheet" href="{{ pathto(css, 1) }}" type="text/css" /> {%- endif %} {%- endfor %} {%- for cssfile in extra_css_files %} <link rel="stylesheet" href="{{ pathto(cssfile, 1) }}" type="text/css" /> - {%- endfor %} + {%- endfor -%} - {# FAVICON #} - {% if favicon %} + {#- FAVICON #} + {%- if favicon %} + {%- if sphinx_version_info < (4, 0) -%} <link rel="shortcut icon" href="{{ pathto('_static/' + favicon, 1) }}"/> - {% endif %} - {# CANONICAL URL #} - {% if theme_canonical_url %} + {%- else %} + <link rel="shortcut icon" href="{{ favicon_url }}"/> + {%- endif %} + {%- endif -%} + + {#- CANONICAL URL (deprecated) #} + {%- if theme_canonical_url and not pageurl %} <link rel="canonical" href="{{ theme_canonical_url }}{{ pagename }}.html"/> - {% endif %} + {%- endif -%} + + {#- CANONICAL URL #} + {%- if pageurl %} + <link rel="canonical" href="{{ pageurl|e }}" /> + {%- endif -%} - {# JAVASCRIPTS #} + {#- JAVASCRIPTS #} {%- block scripts %} <!--[if lt IE 9]> <script src="{{ pathto('_static/js/html5shiv.min.js', 1) }}"></script> <![endif]--> {%- if not embedded %} {# XXX Sphinx 1.8.0 made this an external js-file, quick fix until we refactor the template to inherert more blocks directly from sphinx #} - {% if sphinx_version >= "1.8.0" %} - <script type="text/javascript" id="documentation_options" data-url_root="{{ pathto('', 1) }}" src="{{ pathto('_static/documentation_options.js', 1) }}"></script> + {%- if sphinx_version_info >= (1, 8) -%} + {%- if sphinx_version_info < (4, 0) -%} + <script id="documentation_options" data-url_root="{{ url_root }}" src="{{ pathto('_static/documentation_options.js', 1) }}"></script> + {%- endif -%} {%- for scriptfile in script_files %} {{ js_tag(scriptfile) }} {%- endfor %} - {% else %} - <script type="text/javascript"> + {%- else %} + <script> var DOCUMENTATION_OPTIONS = { URL_ROOT:'{{ url_root }}', VERSION:'{{ release|e }}', @@ -68,12 +86,12 @@ }; </script> {%- for scriptfile in script_files %} - <script type="text/javascript" src="{{ pathto(scriptfile, 1) }}"></script> + <script src="{{ pathto(scriptfile, 1) }}"></script> {%- endfor %} - {% endif %} - <script type="text/javascript" src="{{ pathto('_static/js/theme.js', 1) }}"></script> + {%- endif %} + <script src="{{ pathto('_static/js/theme.js', 1) }}"></script> - {# OPENSEARCH #} + {#- OPENSEARCH #} {%- if use_opensearch %} <link rel="search" type="application/opensearchdescription+xml" title="{% trans docstitle=docstitle|e %}Search within {{ docstitle }}{% endtrans %}" @@ -107,133 +125,131 @@ <body class="wy-body-for-nav"> - {% block extrabody %} {% endblock %} + {%- block extrabody %} {% endblock %} <div class="wy-grid-for-nav"> - {# SIDE NAV, TOGGLES ON MOBILE #} + {#- SIDE NAV, TOGGLES ON MOBILE #} <nav data-toggle="wy-nav-shift" class="wy-nav-side"> <div class="wy-side-scroll"> <div class="wy-side-nav-search" {% if theme_style_nav_header_background %} style="background: {{theme_style_nav_header_background}}" {% endif %}> - {% block sidebartitle %} + {%- block sidebartitle %} - {% if logo and theme_logo_only %} + {%- if logo and theme_logo_only %} <a href="{{ pathto(master_doc) }}"> - {% else %} - <a href="{{ pathto(master_doc) }}" class="icon icon-home" alt="{{ _("Documentation Home") }}"> {{ project }} - {% endif %} + {%- else %} + <a href="{{ pathto(master_doc) }}" class="icon icon-home"> {{ project }} + {%- endif %} - {% if logo %} - {# Not strictly valid HTML, but it's the only way to display/scale - it properly, without weird scripting or heaps of work + {%- if logo %} + {#- Not strictly valid HTML, but it's the only way to display/scale + it properly, without weird scripting or heaps of work #} + {%- if sphinx_version_info < (4, 0) -%} <img src="{{ pathto('_static/' + logo, 1) }}" class="logo" alt="{{ _('Logo') }}"/> - {% endif %} + {%- else %} + <img src="{{ logo_url }}" class="logo" alt="{{ _('Logo') }}"/> + {%- endif %} + {%- endif %} </a> - {% if theme_display_version %} + {%- if theme_display_version %} {%- set nav_version = version %} - {% if READTHEDOCS and current_version %} + {%- if READTHEDOCS and current_version %} {%- set nav_version = current_version %} - {% endif %} - {% if nav_version %} + {%- endif %} + {%- if nav_version %} <div class="version"> {{ nav_version }} </div> - {% endif %} - {% endif %} + {%- endif %} + {%- endif %} - {% include "searchbox.html" %} + {%- include "searchbox.html" %} - {% endblock %} + {%- endblock %} </div> - {% block navigation %} - <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation"> - {% block menu %} - {# - The singlehtml builder doesn't handle this toctree call when the - toctree is empty. Skip building this for now. - #} - {% if 'singlehtml' not in builder %} - {% set global_toc = toctree(maxdepth=theme_navigation_depth|int, - collapse=theme_collapse_navigation|tobool, - includehidden=theme_includehidden|tobool, - titles_only=theme_titles_only|tobool) %} - {% endif %} - {% if global_toc %} - {{ global_toc }} - {% else %} + {%- block navigation %} + {#- Translators: This is an ARIA section label for the main navigation menu -#} + <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="{{ _('Navigation menu') }}"> + {%- block menu %} + {%- set toctree = toctree(maxdepth=theme_navigation_depth|int, + collapse=theme_collapse_navigation|tobool, + includehidden=theme_includehidden|tobool, + titles_only=theme_titles_only|tobool) %} + {%- if toctree %} + {{ toctree }} + {%- else %} <!-- Local TOC --> <div class="local-toc">{{ toc }}</div> - {% endif %} - {% endblock %} + {%- endif %} + {%- endblock %} </div> - {% endblock %} + {%- endblock %} </div> </nav> <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"> - {# MOBILE NAV, TRIGGLES SIDE NAV ON TOGGLE #} - <nav class="wy-nav-top" aria-label="top navigation"> - {% block mobile_nav %} + {#- MOBILE NAV, TRIGGLES SIDE NAV ON TOGGLE #} + {#- Translators: This is an ARIA section label for the navigation menu that is visible when viewing the page on mobile devices -#} + <nav class="wy-nav-top" aria-label="{{ _('Mobile navigation menu') }}" {% if theme_style_nav_header_background %} style="background: {{theme_style_nav_header_background}}" {% endif %}> + {%- block mobile_nav %} <i data-toggle="wy-nav-top" class="fa fa-bars"></i> <a href="{{ pathto(master_doc) }}">{{ project }}</a> - {% endblock %} + {%- endblock %} </nav> - <div class="wy-nav-content"> {%- block content %} - {% if theme_style_external_links|tobool %} + {%- if theme_style_external_links|tobool %} <div class="rst-content style-external-links"> - {% else %} + {%- else %} <div class="rst-content"> - {% endif %} + {%- endif %} {% include "breadcrumbs.html" %} <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> {%- block document %} <div itemprop="articleBody"> - {% block body %}{% endblock %} + {% block body %}{% endblock %} </div> - {% if self.comments()|trim %} - <div class="articleComments"> - {% block comments %}{% endblock %} - </div> - {% endif%} + {%- if self.comments()|trim %} + <div class="articleComments"> + {%- block comments %}{% endblock %} + </div> + {%- endif%} </div> {%- endblock %} {% include "footer.html" %} </div> {%- endblock %} </div> - </section> - </div> - {% include "versions.html" %} + {% include "versions.html" -%} - <script type="text/javascript"> + <script> jQuery(function () { SphinxRtdTheme.Navigation.enable({{ 'true' if theme_sticky_navigation|tobool else 'false' }}); }); </script> - {# Do not conflict with RTD insertion of analytics script #} - {% if not READTHEDOCS %} - {% if theme_analytics_id %} + {#- Do not conflict with RTD insertion of analytics script #} + {%- if not READTHEDOCS %} + {%- if theme_analytics_id %} <!-- Theme Analytics --> + <script async src="https://www.googletagmanager.com/gtag/js?id={{ theme_analytics_id }}"></script> <script> - (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ - (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), - m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) - })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); + window.dataLayer = window.dataLayer || []; + function gtag(){dataLayer.push(arguments);} + gtag('js', new Date()); - ga('create', '{{ theme_analytics_id }}', 'auto'); - ga('send', 'pageview'); + gtag('config', '{{ theme_analytics_id }}', { + 'anonymize_ip': {{ 'true' if theme_analytics_anonymize_ip|tobool else 'false' }}, + }); </script> - {% endif %} - {% endif %} + {%- endif %} + {%- endif %} {%- block footer %} {% endblock %} |