forked from dask/dask-sphinx-theme
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix page load flicker by reordering JS and CSS
Moving the CSS above the JS avoids the page load flicker. However the upstream layout doesn't allow overriding this so I've had to pull in the whole layout in order to make the modifications. Ideally this should be fixed upstream but the PR to resolve it has been stuck for some time. readthedocs/sphinx_rtd_theme#853 If this PR is ever merged we should revert back to using the inheritance.
- Loading branch information
1 parent
098ab87
commit c535756
Showing
1 changed file
with
299 additions
and
66 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,72 +1,305 @@ | ||
{% extends "sphinx_rtd_theme/layout.html" %} | ||
{# TEMPLATE VAR SETTINGS #} | ||
{%- set url_root = pathto('', 1) %} | ||
{%- if url_root == '#' %}{% set url_root = '' %}{% endif %} | ||
{%- if not embedded and docstitle %} | ||
{%- set titlesuffix = " — "|safe + docstitle|e %} | ||
{%- else %} | ||
{%- set titlesuffix = "" %} | ||
{%- endif %} | ||
{%- set lang_attr = 'en' if language == None else (language | replace('_', '-')) %} | ||
|
||
{% set css_files = css_files + ["_static/css/explore.css"] %} | ||
{% set css_files = css_files + ["_static/css/nbsphinx.css"] %} | ||
|
||
{% set script_files = script_files + ["_static/js/custom.js"] %} | ||
|
||
{% block extrahead %} | ||
<link rel="shortcut icon" href="{{ pathto('_static/images/favicon.ico', 1) }}"/> | ||
{% endblock %} | ||
|
||
{% block extrabody %} | ||
|
||
<nav id="explore-links"> | ||
<a href="https://docs.dask.org/"> | ||
<img class="caption" src="{{ pathto('_static/images/dask-horizontal-white.svg', 1) }}"/> | ||
</a> | ||
|
||
<ul> | ||
<li> | ||
<a>Get Started</a> | ||
<ul> | ||
<li><a href="https://docs.dask.org/en/latest/install.html"> Install </a></li> | ||
<li><a href="https://examples.dask.org"> Examples </a></li> | ||
<li><a href="https://github.com/dask/dask-tutorial"> Tutorial </a></li> | ||
<li><a href="https://docs.dask.org/en/latest/why.html"> Why Dask? </a></li> | ||
<li><a href="https://stories.dask.org/en/latest"> Use Cases </a></li> | ||
<li><a href="https://www.youtube.com/watch?v=RA_2qdipVng&list=PLRtz5iA93T4PQvWuoMnIyEIz1fXiJ5Pri"> Talks </a></li> | ||
<li><a href="https://mybinder.org/v2/gh/dask/dask-examples/master?urlpath=lab"> Try Online </a></li> | ||
<li><a href="https://dask.org/slides"> Slides </a></li> | ||
</ul> | ||
</li> | ||
|
||
<li> | ||
<a href="">Algorithms</a> | ||
<ul> | ||
<li><a href="https://docs.dask.org/en/latest/array.html">Arrays</a></li> | ||
<li><a href="https://docs.dask.org/en/latest/dataframe.html">Dataframes</a></li> | ||
<li><a href="https://docs.dask.org/en/latest/bag.html">Bags</a></li> | ||
<li><a href="https://docs.dask.org/en/latest/delayed.html">Delayed (custom)</a></li> | ||
<li><a href="https://docs.dask.org/en/latest/futures.html">Futures (real-time)</a></li> | ||
<li><a href="http://ml.dask.org">Machine Learning</a></li> | ||
<li><a href="https://xarray.pydata.org/en/latest/">XArray</a></li> | ||
</ul> | ||
</li> | ||
|
||
<li> | ||
<a href="https://docs.dask.org/en/latest/setup.html">Setup</a> | ||
<ul> | ||
<li><a href="https://docs.dask.org/en/latest/setup/single-machine.html"> Local </a></li> | ||
<li><a href="https://docs.dask.org/en/latest/setup/cloud.html"> Cloud </a></li> | ||
<li><a href="https://docs.dask.org/en/latest/setup/hpc.html"> HPC </a></li> | ||
<li><a href="https://kubernetes.dask.org/en/latest/"> Kubernetes </a></li> | ||
<li><a href="https://yarn.dask.org/en/latest/"> Hadoop / Yarn </a></li> | ||
</ul> | ||
</li> | ||
|
||
<li> | ||
<a>Community</a> | ||
<ul> | ||
<li><a href="http://docs.dask.org/en/latest/support.html">Ask for Help</a></li> | ||
<li><a href="https://github.com/dask">Github</a></li> | ||
<li><a href="https://stackoverflow.com/questions/tagged/dask">Stack Overflow</a></li> | ||
<li><a href="https://twitter.com/dask_dev">Twitter</a></li> | ||
<li><a href="https://blog.dask.org/"> Developer Blog </a></li> | ||
</ul> | ||
</li> | ||
</ul> | ||
|
||
</nav> | ||
|
||
{% endblock %} | ||
<!DOCTYPE html> | ||
<html lang="{{ lang_attr }}" > | ||
<head> | ||
<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 %} | ||
|
||
{# FAVICON #} | ||
{% if favicon %} | ||
<link rel="shortcut icon" href="{{ pathto('_static/' + favicon, 1) }}"/> | ||
{% endif %} | ||
{# CANONICAL URL #} | ||
{% if theme_canonical_url %} | ||
<link rel="canonical" href="{{ theme_canonical_url }}{{ pagename }}.html"/> | ||
{% endif %} | ||
|
||
{# CSS #} | ||
<link rel="stylesheet" href="{{ pathto('_static/' + style, 1) }}" type="text/css" /> | ||
<link rel="stylesheet" href="{{ pathto('_static/pygments.css', 1) }}" type="text/css" /> | ||
{%- 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 %} /> | ||
{%- else %} | ||
<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 %} | ||
|
||
{# 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> | ||
{%- for scriptfile in script_files %} | ||
{{ js_tag(scriptfile) }} | ||
{%- endfor %} | ||
{% else %} | ||
<script type="text/javascript"> | ||
var DOCUMENTATION_OPTIONS = { | ||
URL_ROOT:'{{ url_root }}', | ||
VERSION:'{{ release|e }}', | ||
LANGUAGE:'{{ language }}', | ||
COLLAPSE_INDEX:false, | ||
FILE_SUFFIX:'{{ '' if no_search_suffix else file_suffix }}', | ||
HAS_SOURCE: {{ has_source|lower }}, | ||
SOURCELINK_SUFFIX: '{{ sourcelink_suffix }}' | ||
}; | ||
</script> | ||
{%- for scriptfile in script_files %} | ||
<script type="text/javascript" src="{{ pathto(scriptfile, 1) }}"></script> | ||
{%- endfor %} | ||
{% endif %} | ||
<script type="text/javascript" src="{{ pathto('_static/js/theme.js', 1) }}"></script> | ||
|
||
{# OPENSEARCH #} | ||
{%- if use_opensearch %} | ||
<link rel="search" type="application/opensearchdescription+xml" | ||
title="{% trans docstitle=docstitle|e %}Search within {{ docstitle }}{% endtrans %}" | ||
href="{{ pathto('_static/opensearch.xml', 1) }}"/> | ||
{%- endif %} | ||
{%- endif %} | ||
{%- endblock %} | ||
|
||
{%- block linktags %} | ||
{%- if hasdoc('about') %} | ||
<link rel="author" title="{{ _('About these documents') }}" href="{{ pathto('about') }}" /> | ||
{%- endif %} | ||
{%- if hasdoc('genindex') %} | ||
<link rel="index" title="{{ _('Index') }}" href="{{ pathto('genindex') }}" /> | ||
{%- endif %} | ||
{%- if hasdoc('search') %} | ||
<link rel="search" title="{{ _('Search') }}" href="{{ pathto('search') }}" /> | ||
{%- endif %} | ||
{%- if hasdoc('copyright') %} | ||
<link rel="copyright" title="{{ _('Copyright') }}" href="{{ pathto('copyright') }}" /> | ||
{%- endif %} | ||
{%- if next %} | ||
<link rel="next" title="{{ next.title|striptags|e }}" href="{{ next.link|e }}" /> | ||
{%- endif %} | ||
{%- if prev %} | ||
<link rel="prev" title="{{ prev.title|striptags|e }}" href="{{ prev.link|e }}" /> | ||
{%- endif %} | ||
{%- endblock %} | ||
{%- block extrahead %} | ||
<link rel="shortcut icon" href="{{ pathto('_static/images/favicon.ico', 1) }}"/> | ||
{% endblock %} | ||
</head> | ||
|
||
<body class="wy-body-for-nav"> | ||
|
||
{% block extrabody %} | ||
<nav id="explore-links"> | ||
<a href="https://docs.dask.org/"> | ||
<img class="caption" src="{{ pathto('_static/images/dask-horizontal-white.svg', 1) }}"/> | ||
</a> | ||
|
||
<ul> | ||
<li> | ||
<a>Get Started</a> | ||
<ul> | ||
<li><a href="https://docs.dask.org/en/latest/install.html"> Install </a></li> | ||
<li><a href="https://examples.dask.org"> Examples </a></li> | ||
<li><a href="https://github.com/dask/dask-tutorial"> Tutorial </a></li> | ||
<li><a href="https://docs.dask.org/en/latest/why.html"> Why Dask? </a></li> | ||
<li><a href="https://stories.dask.org/en/latest"> Use Cases </a></li> | ||
<li><a href="https://www.youtube.com/watch?v=RA_2qdipVng&list=PLRtz5iA93T4PQvWuoMnIyEIz1fXiJ5Pri"> Talks </a></li> | ||
<li><a href="https://mybinder.org/v2/gh/dask/dask-examples/master?urlpath=lab"> Try Online </a></li> | ||
<li><a href="https://dask.org/slides"> Slides </a></li> | ||
</ul> | ||
</li> | ||
|
||
<li> | ||
<a href="">Algorithms</a> | ||
<ul> | ||
<li><a href="https://docs.dask.org/en/latest/array.html">Arrays</a></li> | ||
<li><a href="https://docs.dask.org/en/latest/dataframe.html">Dataframes</a></li> | ||
<li><a href="https://docs.dask.org/en/latest/bag.html">Bags</a></li> | ||
<li><a href="https://docs.dask.org/en/latest/delayed.html">Delayed (custom)</a></li> | ||
<li><a href="https://docs.dask.org/en/latest/futures.html">Futures (real-time)</a></li> | ||
<li><a href="http://ml.dask.org">Machine Learning</a></li> | ||
<li><a href="https://xarray.pydata.org/en/latest/">XArray</a></li> | ||
</ul> | ||
</li> | ||
|
||
<li> | ||
<a href="https://docs.dask.org/en/latest/setup.html">Setup</a> | ||
<ul> | ||
<li><a href="https://docs.dask.org/en/latest/setup/single-machine.html"> Local </a></li> | ||
<li><a href="https://docs.dask.org/en/latest/setup/cloud.html"> Cloud </a></li> | ||
<li><a href="https://docs.dask.org/en/latest/setup/hpc.html"> HPC </a></li> | ||
<li><a href="https://kubernetes.dask.org/en/latest/"> Kubernetes </a></li> | ||
<li><a href="https://yarn.dask.org/en/latest/"> Hadoop / Yarn </a></li> | ||
</ul> | ||
</li> | ||
|
||
<li> | ||
<a>Community</a> | ||
<ul> | ||
<li><a href="http://docs.dask.org/en/latest/support.html">Ask for Help</a></li> | ||
<li><a href="https://github.com/dask">Github</a></li> | ||
<li><a href="https://stackoverflow.com/questions/tagged/dask">Stack Overflow</a></li> | ||
<li><a href="https://twitter.com/dask_dev">Twitter</a></li> | ||
<li><a href="https://blog.dask.org/"> Developer Blog </a></li> | ||
</ul> | ||
</li> | ||
</ul> | ||
|
||
</nav> | ||
{% endblock %} | ||
<div class="wy-grid-for-nav"> | ||
{# 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 %} | ||
|
||
{% 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 %} | ||
|
||
{% if logo %} | ||
{# Not strictly valid HTML, but it's the only way to display/scale | ||
it properly, without weird scripting or heaps of work | ||
#} | ||
<img src="{{ pathto('_static/' + logo, 1) }}" class="logo" alt="{{ _('Logo') }}"/> | ||
{% endif %} | ||
</a> | ||
|
||
{% if theme_display_version %} | ||
{%- set nav_version = version %} | ||
{% if READTHEDOCS and current_version %} | ||
{%- set nav_version = current_version %} | ||
{% endif %} | ||
{% if nav_version %} | ||
<div class="version"> | ||
{{ nav_version }} | ||
</div> | ||
{% endif %} | ||
{% endif %} | ||
|
||
{% include "searchbox.html" %} | ||
|
||
{% 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 %} | ||
<!-- Local TOC --> | ||
<div class="local-toc">{{ toc }}</div> | ||
{% endif %} | ||
{% endblock %} | ||
</div> | ||
{% 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 %} | ||
<i data-toggle="wy-nav-top" class="fa fa-bars"></i> | ||
<a href="{{ pathto(master_doc) }}">{{ project }}</a> | ||
{% endblock %} | ||
</nav> | ||
|
||
|
||
<div class="wy-nav-content"> | ||
{%- block content %} | ||
{% if theme_style_external_links|tobool %} | ||
<div class="rst-content style-external-links"> | ||
{% else %} | ||
<div class="rst-content"> | ||
{% endif %} | ||
{% include "breadcrumbs.html" %} | ||
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> | ||
{%- block document %} | ||
<div itemprop="articleBody"> | ||
{% block body %}{% endblock %} | ||
</div> | ||
{% 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" %} | ||
|
||
<script type="text/javascript"> | ||
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 %} | ||
<!-- Theme Analytics --> | ||
<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'); | ||
|
||
ga('create', '{{ theme_analytics_id }}', 'auto'); | ||
ga('send', 'pageview'); | ||
</script> | ||
|
||
{% endif %} | ||
{% endif %} | ||
|
||
{%- block footer %} {% endblock %} | ||
|
||
</body> | ||
</html> |