diff options
Diffstat (limited to 'tyrian_sphinx_theme')
-rw-r--r-- | tyrian_sphinx_theme/__init__.py | 23 | ||||
-rw-r--r-- | tyrian_sphinx_theme/_version.py | 2 | ||||
-rw-r--r-- | tyrian_sphinx_theme/layout.html | 479 | ||||
-rw-r--r-- | tyrian_sphinx_theme/localtoc.html | 12 | ||||
-rw-r--r-- | tyrian_sphinx_theme/static/custom.css | 1 | ||||
-rw-r--r-- | tyrian_sphinx_theme/static/tyrian-sphinx-theme.css_t | 944 | ||||
-rw-r--r-- | tyrian_sphinx_theme/support.py | 91 | ||||
-rw-r--r-- | tyrian_sphinx_theme/theme.conf | 130 |
8 files changed, 1682 insertions, 0 deletions
diff --git a/tyrian_sphinx_theme/__init__.py b/tyrian_sphinx_theme/__init__.py new file mode 100644 index 0000000..5304f18 --- /dev/null +++ b/tyrian_sphinx_theme/__init__.py @@ -0,0 +1,23 @@ +import os + +from tyrian_sphinx_theme import _version as version + +def get_path(): + """ + Shortcut for users whose theme is next to their conf.py. + """ + # Theme directory is defined as our parent directory + return os.path.abspath(os.path.dirname(os.path.dirname(__file__))) + + +def update_context(app, pagename, templatename, context, doctree): + context["tyrian_version"] = version.__version__ + + +def setup(app): + # add_html_theme is new in Sphinx 1.6+ + if hasattr(app, "add_html_theme"): + theme_path = os.path.abspath(os.path.dirname(__file__)) + app.add_html_theme("tyrian_sphinx_theme", theme_path) + app.connect("html-page-context", update_context) + return {"version": version.__version__, "parallel_read_safe": True}
\ No newline at end of file diff --git a/tyrian_sphinx_theme/_version.py b/tyrian_sphinx_theme/_version.py new file mode 100644 index 0000000..e388a85 --- /dev/null +++ b/tyrian_sphinx_theme/_version.py @@ -0,0 +1,2 @@ +__version_info__ = (0, 0, 1) +__version__ = ".".join(map(str, __version_info__)) diff --git a/tyrian_sphinx_theme/layout.html b/tyrian_sphinx_theme/layout.html new file mode 100644 index 0000000..8a4be9d --- /dev/null +++ b/tyrian_sphinx_theme/layout.html @@ -0,0 +1,479 @@ +{%- block doctype -%} +{%- if html5_doctype %} +<!doctype html> +{%- else %} +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +{%- endif %}{%- endblock %} +{%- set reldelim1 = reldelim1 is not defined and ' »' or reldelim1 %} +{%- set reldelim2 = reldelim2 is not defined and ' |' or reldelim2 %} +{%- set reldelim2 = reldelim2 is not defined and ' |' or reldelim2 %} +{%- set url_root = pathto('', 1) %} +{# XXX necessary? #} +{%- if url_root == '#' %}{% set url_root = '' %}{% endif %} +{%- if not embedded and docstitle %} + {%- set titlesuffix = " — "|safe + docstitle|e %} +{%- else %} + {%- set titlesuffix = "" %} +{%- endif %} + +{%- macro script() %} + <script type="text/javascript" id="documentation_options" data-url_root="{{ pathto('', 1) }}" src="{{ pathto('_static/documentation_options.js', 1) }}"></script> + {%- for js in script_files %} + {{ js_tag(js) }} + {%- endfor %} +{%- endmacro %} + +{%- macro css() %} + <link rel="stylesheet" href="{{ pathto('_static/' + style, 1) }}" type="text/css" /> + <link rel="stylesheet" href="{{ pathto('_static/pygments.css', 1) }}" type="text/css" /> + <link rel="stylesheet" href="{{ pathto('_static/custom.css', 1) }}" type="text/css" /> + + <link rel="icon" href="https://www.gentoo.org/favicon.ico" type="image/x-icon"> + <link href="https://assets.gentoo.org/tyrian/bootstrap.min.css" rel="stylesheet" media="screen"> + <link href="https://assets.gentoo.org/tyrian/tyrian.min.css" rel="stylesheet" media="screen"> + {%- for css in css_files %} + {%- if css|attr("filename") %} + {{ css_tag(css) }} + {%- else %} + <link rel="stylesheet" href="{{ pathto(css, 1) }}" type="text/css" /> + {%- endif %} + {%- endfor %} +{%- endmacro %} + +{%- macro sidebar() %} +<div class="" role="navigation" aria-label="main navigation"> + <div class=""> + {%- block sidebarlogo %} + {%- if logo %} + <p class="logo"><a href="{{ pathto(master_doc) }}"> + <img class="logo" src="{{ pathto('_static/' + logo, 1) }}" alt="Logo"/> + </a></p> + {%- endif %} + {%- endblock %} + + {%- if sidebars != None %} + {#- new style sidebar: explicitly include/exclude templates #} + {%- for sidebartemplate in sidebars %} + {%- include sidebartemplate %} + {%- endfor %} + {%- else %} + {#- old style sidebars: using blocks -- should be deprecated #} + {%- block sidebartoc %} + {%- include "localtoc.html" %} + {%- endblock %} + {%- block sidebarrel %} + {%- include "relations.html" %} + {%- endblock %} + {%- block sidebarsourcelink %} + {%- include "sourcelink.html" %} + {%- endblock %} + {%- if customsidebar %} + {%- include customsidebar %} + {%- endif %} + {%- block sidebarsearch %} + {%- include "searchbox.html" %} + {%- endblock %} + {%- endif %} + </div> +</div> +{%- endmacro %} + +{%- macro navlinks(navlink_style) %} + {% if navlink_style != "none" %} + {% if prev or next %} + <div class="row" style="margin-top:50px;"> + <div class="col-sm-6"> + {% if prev %} + <a href="{{ prev.link|e }}" style="color:#767676;"> + <i class="fa fa-angle-double-left" aria-hidden="true"></i> + {% if navlink_style == "long" %} + {{ prev.title }} + {% endif %} + </a> + {% endif %} + </div> + + <div class="col-sm-6"> + {% if next %} + <a href="{{ next.link|e }}" class="pull-right" style="color:#767676;"> + {% if navlink_style == "long" %} + {{ next.title }} + {% endif %} + <i class="fa fa-angle-double-right" aria-hidden="true"></i> + </a> + {% endif %} + </div> + </div> + {% endif %} + {% endif %} +{%- endmacro %} + + +{%- if html_tag %} +{{ html_tag }} +{%- else %} +<html xmlns="http://www.w3.org/1999/xhtml"{% if language is not none %} lang="{{ language }}"{% endif %}> +{%- endif %} + <head> + <meta charset="utf-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + {{- metatags }} + {%- block htmltitle %} + <title>{{ title|striptags|e }}{{ titlesuffix }}</title> + {%- endblock %} + {%- block css %} + {{- css() }} + {%- endblock %} + {%- if not embedded %} + {%- block scripts %} + {{- script() }} + {%- endblock %} + {%- if pageurl %} + <link rel="canonical" href="{{ pageurl }}" /> + {%- endif %} + {%- 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 %} + {%- if favicon %} + <link rel="shortcut icon" href="{{ pathto('_static/' + favicon, 1) }}"/> + {%- endif %} + {%- endif %} +{%- 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 %} {% endblock %} + </head> + {%- block body_tag %}<body>{% endblock %} + + +{%- block header %} + <header> + <div class="site-title"> + <div class="container"> + <div class="row"> + <div class="site-title-buttons"> + <div class="btn-group btn-group-sm"> + <a href="https://get.gentoo.org/" role="button" class="btn get-gentoo"><span class="fa fa-fw fa-download"></span> <strong>Get Gentoo!</strong></a> + <div class="btn-group btn-group-sm"> + <a class="btn gentoo-org-sites dropdown-toggle" data-toggle="dropdown" data-target="#" href="#"> + <span class="fa fa-fw fa-map-o"></span> <span class="hidden-xs">gentoo.org sites</span> <span class="caret"></span> + </a> + <ul class="dropdown-menu dropdown-menu-right"> + <li><a href="https://www.gentoo.org/" title="Main Gentoo website"><span class="fa fa-home fa-fw"></span> gentoo.org</a></li> + <li><a href="https://wiki.gentoo.org/" title="Find and contribute documentation"><span class="fa fa-file-text-o fa-fw"></span> Wiki</a></li> + <li><a href="https://bugs.gentoo.org/" title="Report issues and find common issues"><span class="fa fa-bug fa-fw"></span> Bugs</a></li> + <li><a href="https://forums.gentoo.org/" title="Discuss with the community"><span class="fa fa-comments-o fa-fw"></span> Forums</a></li> + <li><a href="https://packages.gentoo.org/" title="Find software for your Gentoo"><span class="fa fa-hdd-o fa-fw"></span> Packages</a></li> + <li class="divider"></li> + <li><a href="https://planet.gentoo.org/" title="Find out what's going on in the developer community"><span class="fa fa-rss fa-fw"></span> Planet</a></li> + <li><a href="https://archives.gentoo.org/" title="Read up on past discussions"><span class="fa fa-archive fa-fw"></span> Archives</a></li> + <li><a href="https://sources.gentoo.org/" title="Browse our source code"><span class="fa fa-code fa-fw"></span> Sources</a></li> + <li class="divider"></li> + <li><a href="https://infra-status.gentoo.org/" title="Get updates on the services provided by Gentoo"><span class="fa fa-server fa-fw"></span> Infra Status</a></li> + </ul> + </div> + </div> + </div> + <div class="logo"> + <a href="index.html" title="Back to the homepage" class="site-logo"></a> + <span class="site-label">{{ docstitle|replace("Gentoo","")|replace("documentation","") }}</span> + </div> + </div> + </div> + </div> + <nav class="tyrian-navbar" role="navigation"> + <div class="container"> + <div class="row"> + <div class="navbar-header"> + <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-main-collapse"> + <span class="sr-only">Toggle navigation</span> + <span class="icon-bar"></span> + <span class="icon-bar"></span> + <span class="icon-bar"></span> + </button> + </div> + <div class="collapse navbar-collapse navbar-main-collapse"> + <ul class="nav navbar-nav"> + {%- if pagename == "index" %} + <li class="active"> + {%- else %} + <li> + {%- endif %} + <a href="index.html">Home</a></li> + + {%- if show_source %} + {%- if builder != "singlehtml" and has_source and sourcename %} + <li class=""><a href="{{ pathto('_sources/' + sourcename, true)|e }}">Source</a></li> + {%- else %} + <li class=""><a href="https://gitweb.gentoo.org/proj/policy-guide.git/">Source</a></li> + {%- endif %} + {%- endif %} + + {%- if builder != "singlehtml" %} + {%- if pagename == "search" %} + <li class="active"> + {%- else %} + <li> + {%- endif %} + <a href="search.html">Search</a></li> + + {%- if pagename == "genindex" %} + <li class="active"> + {%- else %} + <li> + {%- endif %} + <a href="genindex.html">Index</a></li> + {%- endif %} + + {% if theme_navigationlinks_navbar != "none" %} + <li class="disabled"><a>|</a></li> + {% if prev %} + <li> + <a href="{{ prev.link|e }}"> + <i class="fa fa-angle-double-left" aria-hidden="true"></i> + {% if theme_navigationlinks_navbar == "long" %} + {{ prev.title }} + {% endif %} + </a> + </li> + {%- endif %} + + {% if next %} + <li> + <a href="{{ next.link|e }}"> + {% if theme_navigationlinks_navbar == "long" %} + {{ next.title }} + {% endif %} + <i class="fa fa-angle-double-right" aria-hidden="true"></i> + </a> + </li> + {%- endif %} + + + {%- endif %} + + </ul> + + + {%- if builder == "singlehtml" %} + + <form action="index.html" class="navbar-form navbar-right" method="get" onsubmit="if (this.quicksearch.value == '') + { alert('Please enter one or more search terms first.'); + return false; } return true;"> + + <div class="input-group" style="margin-top:2px;"> + <span class="input-group-addon" style="background:#61597b;color:#FFF;border:0px;" id="basic-addon1"><i class="fa fa-search" aria-hidden="true"></i></span> + <input class="form-control" style="height:30px;border:0px;background:#61597b;color:#FFF;padding-left:0px;box-shadow: none;" type="text" id="highlight" name="highlight" title="Quick Search" placeholder="Quick Search" value=""> + </div> + <button class="btn btn-default hidden" type="submit" value="Search" id="find_top">Search</button> + </form> + + {%- else %} + + <form action="{{ pathto('search') }}" class="navbar-form navbar-right" method="get" onsubmit="if (this.quicksearch.value == '') + { alert('Please enter one or more search terms first.'); + return false; } return true;"> + + <div class="input-group" style="margin-top:2px;"> + <span class="input-group-addon" style="background:#61597b;color:#FFF;border:0px;" id="basic-addon1"><i class="fa fa-search" aria-hidden="true"></i></span> + <input class="form-control" style="height:30px;border:0px;background:#61597b;color:#FFF;padding-left:0px;box-shadow: none;" type="text" id="quicksearch_top" name="q" title="Quick Search" placeholder="Quick Search" value=""> + </div> + <button class="btn btn-default hidden" type="submit" value="Search" id="find_top">Search</button> + </form> + + {%- endif %} + + </div> + </div> + </div> + </nav> + </header> +{% endblock %} + +{%- block content %} + + <div class="container"> + {%- block document %} + <div class="row"> + + {% if theme_sidebar == "left" %} + <div class="col-md-3 hidden-sm hidden-xs" role="main"> + {{- sidebar() }} + </div> + {%- endif %} + + <div class="col-md-9 col-sm-12 col-xs-12" role="main"> + + {% if theme_navigationlinks_top %} + {{- navlinks(theme_navigationlinks_top) }} + {% endif %} + + {% block body %} {% endblock %} + + {% if theme_navigationlinks_bottom %} + {{- navlinks(theme_navigationlinks_bottom) }} + {% endif %} + + </div> + + {% if theme_sidebar == "right" %} + <div class="col-md-3 hidden-sm hidden-xs" role="main"> + {{- sidebar() }} + </div> + {%- endif %} + + </div> + {%- endblock %} + <div class="clearer"></div> + </div> +{%- endblock %} + +{%- block footer %} + <footer> + <div class="container"> + <div class="row"> + <div class="col-xs-12 col-md-offset-2 col-md-7"> + <h3 class="footerhead">{{ docstitle|replace("documentation","") }}</h3> + <div class="row"> + <div class="col-xs-12 col-md-4"> + <span class="kk-group-header">Powered by</span><br><span><a href="http://sphinx-doc.org/">Sphinx {{ sphinx_version }}</a> & <a href="#">Tyrian Theme {{ tyrian_version }}</a></span> + </div> + <div class="col-xs-12 col-md-4"> + </div> + <div class="col-xs-12 col-md-4"> + </div> + </div> + </div> + <div class="col-xs-12 col-md-3"> + <h3 class="footerhead">Questions or comments?</h3> + Please feel free to <a href="https://www.gentoo.org/inside-gentoo/contact/">contact us</a>. + </div> + </div> + <div class="row"> + <div class="col-xs-2 col-sm-3 col-md-2"> + <ul class="footerlinks three-icons"> + <li><a href="https://twitter.com/gentoo" title="@Gentoo on Twitter"><span class="fa fa-twitter fa-fw"></span></a></li> + <li><a href="https://plus.google.com/+Gentoo" title="+Gentoo on Google+"><span class="fa fa-google-plus fa-fw"></span></a></li> + <li><a href="https://www.facebook.com/gentoo.org" title="Gentoo on Facebook"><span class="fa fa-facebook fa-fw"></span></a></li> + </ul> + </div> + <div class="col-xs-10 col-sm-9 col-md-10"> + <strong>© 2001–2020 Gentoo Foundation, Inc.</strong><br> + <small> + Gentoo is a trademark of the Gentoo Foundation, Inc. + The contents of this document, unless otherwise expressly stated, are licensed under the + <a href="https://creativecommons.org/licenses/by-sa/3.0/" rel="license">CC-BY-SA-3.0</a> license. + The <a href="https://www.gentoo.org/inside-gentoo/foundation/name-logo-guidelines.html">Gentoo Name and Logo Usage Guidelines</a> apply. + </small> + </div> + </div> + </div> + </footer> + + <script src="https://assets.gentoo.org/tyrian/bootstrap.min.js"></script> + + {%- if pagename == "index" %} + + <div id="custom_toc"> + + {%- if builder == "singlehtml" %} + <span style="border-bottom: 1px solid #e1e1e1;font-weight: bold;">Contents</span> + [<a class="" id="show_contents" role="button" data-toggle="collapse" href="#collapseExample" aria-expanded="false" aria-controls="collapseExample">show</a>] + {%- else %} + <h2 style="margin-top:20px!important;">Contents</h2> + {%- endif %} + <div class="collapse" id="collapseExample" style="margin-top:10px;"> + {%- if builder == "singlehtml" %} + {{ toc }} + {%- endif %} + </div> + + </div> + + <script type="text/javascript"> + $("#custom_toc").prependTo(".toctree-wrapper"); + $("#custom_toc").css("display", "inline-block"); + + $('#collapseExample').on('show.bs.collapse', function () { + $("#show_contents").html("hide"); + }) + + $('#collapseExample').on('hide.bs.collapse', function () { + $("#show_contents").html("show"); + }) + + $("#collapseExample").collapse('show'); + + {%- if builder == "singlehtml" %} + $("#show_contents").html("hide"); + {%- endif %} + + {%- if builder != "singlehtml" %} + $(".caption").next().detach().appendTo('#collapseExample'); + $(".caption").hide(); + {%- endif %} + + </script> + {%- endif %} + + + <script type="text/javascript"> + $('body').scrollspy({ + target: '.bs-docs-sidebar', + offset: 40 + }); + </script> + + + <script type="text/javascript"> + $('#indices-and-tables').hide() + </script> + + + + {% if theme_analytics_id %} + <script type="text/javascript"> + + var _gaq = _gaq || []; + _gaq.push(['_setAccount', '{{ theme_analytics_id }}']); + _gaq.push(['_setDomainName', 'none']); + _gaq.push(['_setAllowLinker', true]); + _gaq.push(['_trackPageview']); + + (function() { + var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; + ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; + var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); + })(); + + </script> + {% endif %} +{%- endblock %} + + + + </body> +</html> + + diff --git a/tyrian_sphinx_theme/localtoc.html b/tyrian_sphinx_theme/localtoc.html new file mode 100644 index 0000000..2957ad6 --- /dev/null +++ b/tyrian_sphinx_theme/localtoc.html @@ -0,0 +1,12 @@ +{%- if display_toc %} + + <nav class="bs-docs-sidebar" data-spy="affix" data-offset-top="140" data-offset-bottom="400"> + + {%- if builder != "singlehtml" %} + {{ toctree()|replace("caption", "hidden")|replace("<ul>", "<ul class='nav'>")|replace('<ul class="current">', "<ul class='current nav'>")|replace("index.html#", "#") }} + {%- else %} + {{ toc|replace("caption", "hidden")|replace("<ul>", "<ul class='nav'>")|replace("index.html#", "#") }} + {%- endif %} + + </nav> +{%- endif %} diff --git a/tyrian_sphinx_theme/static/custom.css b/tyrian_sphinx_theme/static/custom.css new file mode 100644 index 0000000..2a924f1 --- /dev/null +++ b/tyrian_sphinx_theme/static/custom.css @@ -0,0 +1 @@ +/* This file intentionally left blank. */ diff --git a/tyrian_sphinx_theme/static/tyrian-sphinx-theme.css_t b/tyrian_sphinx_theme/static/tyrian-sphinx-theme.css_t new file mode 100644 index 0000000..38cd75b --- /dev/null +++ b/tyrian_sphinx_theme/static/tyrian-sphinx-theme.css_t @@ -0,0 +1,944 @@ +{%- set theme_body_bg = theme_body_bg or theme_base_bg %} +{%- set theme_code_highlight_bg = theme_code_highlight_bg or theme_body_bg %} +{%- set theme_sidebar_header = theme_sidebar_header or theme_gray_1 %} +{%- set theme_sidebar_link = theme_sidebar_link or theme_gray_1 %} +{%- set theme_anchor_hover_fg = theme_anchor_hover_fg or theme_gray_1 %} + +{%- set theme_footnote_border = theme_footnote_border or theme_gray_2 %} +{%- set theme_pre_bg = theme_pre_bg or theme_gray_2 %} + +{%- set theme_head_font_family = theme_head_font_family or theme_font_family %} + +{#- set up admonition styling #} +{#- - basic level #} +{%- set theme_admonition_xref_bg = theme_admonition_xref_bg or theme_xref_bg %} +{%- set theme_admonition_bg = theme_admonition_bg or theme_gray_2 %} +{%- set theme_note_bg = theme_note_bg or theme_gray_2 %} +{%- set theme_seealso_bg = theme_seealso_bg or theme_gray_2 %} + +{#- - critical level #} +{%- set theme_danger_bg = theme_danger_bg or theme_pink_1 %} +{%- set theme_danger_border = theme_danger_border or theme_pink_2 %} +{%- set theme_danger_shadow = theme_danger_shadow or theme_pink_3 %} + +{%- set theme_error_bg = theme_error_bg or theme_pink_1 %} +{%- set theme_error_border = theme_error_border or theme_pink_2 %} +{%- set theme_error_shadow = theme_error_shadow or theme_pink_3 %} + +{#- - warning level #} +{%- set theme_caution_bg = theme_caution_bg or theme_pink_1 %} +{%- set theme_caution_border = theme_caution_border or theme_pink_2 %} + +{%- set theme_attention_bg = theme_attention_bg or theme_pink_1 %} +{%- set theme_attention_border = theme_attention_border or theme_pink_2 %} + +{%- set theme_warn_bg = theme_warn_bg or theme_pink_1 %} +{%- set theme_warn_border = theme_warn_border or theme_pink_2 %} + +{#- - normal level #} +{%- set theme_important_bg = theme_important_bg or theme_gray_2 %} +{%- set theme_tip_bg = theme_tip_bg or theme_gray_2 %} +{%- set theme_hint_bg = theme_hint_bg or theme_gray_2 %} + +{#- /set up admonition styling #} + +{%- set theme_shadow = theme_shadow or theme_gray_2 %} + + +{%- set theme_topic_bg = theme_topic_bg or theme_gray_2 %} + +{%- set theme_narrow_sidebar_link = theme_narrow_sidebar_link or theme_gray_3 %} +{%- set theme_sidebar_hr = theme_sidebar_hr or theme_gray_3 %} + +{%- set theme_relbar_border = theme_relbar_border or theme_gray_2 -%} + + +@import url("basic.css"); + +/* -- page layout ----------------------------------------------------------- */ + +body { + font-family: {{ theme_font_family }}; + font-size: {{ theme_font_size }}; + background-color: {{ theme_base_bg }}; + color: {{ theme_base_text }}; + margin: 0; + padding: 0; +} + + +div.document { + width: {{ theme_page_width }}; + margin: 30px auto 0 auto; +} + +div.documentwrapper { + float: left; + width: 100%; +} + +div.bodywrapper { + margin: 0 0 0 {{ theme_sidebar_width }}; +} + +div.sphinxsidebar { + width: {{ theme_sidebar_width }}; + font-size: 14px; + line-height: 1.5; +} + +hr { + border: 1px solid {{ theme_hr_border }}; +} + +div.body { + background-color: {{ theme_body_bg }}; + color: {{ theme_body_text }}; + padding: 0 30px 0 30px; +} + +div.body > .section { + text-align: {{ theme_body_text_align }}; +} + +div.footer { + width: {{ theme_page_width }}; + margin: 20px auto 30px auto; + font-size: 14px; + color: {{ theme_footer_text }}; + text-align: right; +} + +div.footer a { + color: {{ theme_footer_text }}; +} + +p.caption { + font-family: {{ theme_caption_font_family }}; + font-size: {{ theme_caption_font_size }}; +} + +{% if theme_show_related|lower == 'false' %} +div.relations { + display: none; +} +{% endif %} + +div.sphinxsidebar a { + color: {{ theme_sidebar_link }}; + text-decoration: none; + border-bottom: 1px solid {{ theme_sidebar_link_underscore }}; +} + +div.sphinxsidebar a:hover { + border-bottom: 1px solid {{ theme_sidebar_link_underscore }}; +} + +div.sphinxsidebarwrapper { + padding: 18px 10px; +} + +div.sphinxsidebarwrapper p.logo { + padding: 0; + margin: -10px 0 0 0px; + text-align: center; +} + +div.sphinxsidebarwrapper h1.logo { + margin-top: -10px; + text-align: center; + margin-bottom: 5px; + text-align: {{ theme_logo_text_align }}; +} + +div.sphinxsidebarwrapper h1.logo-name { + margin-top: 0px; +} + +div.sphinxsidebarwrapper p.blurb { + margin-top: 0; + font-style: {{ theme_description_font_style }}; +} + +div.sphinxsidebar h3, +div.sphinxsidebar h4 { + font-family: {{ theme_head_font_family }}; + color: {{ theme_sidebar_header }}; + font-size: 24px; + font-weight: normal; + margin: 0 0 5px 0; + padding: 0; +} + +div.sphinxsidebar h4 { + font-size: 20px; +} + +div.sphinxsidebar h3 a { + color: {{ theme_sidebar_link }}; +} + +div.sphinxsidebar p.logo a, +div.sphinxsidebar h3 a, +div.sphinxsidebar p.logo a:hover, +div.sphinxsidebar h3 a:hover { + border: none; +} + +div.sphinxsidebar p { + color: {{ theme_sidebar_text }}; + margin: 10px 0; +} + +div.sphinxsidebar ul { + margin: 10px 0; + padding: 0; + color: {{ theme_sidebar_list }}; +} + +div.sphinxsidebar ul li.toctree-l1 > a { + font-size: 120%; +} + +div.sphinxsidebar ul li.toctree-l2 > a { + font-size: 110%; +} + +div.sphinxsidebar input { + border: 1px solid {{ theme_sidebar_search_button }}; + font-family: {{ theme_font_family }}; + font-size: 1em; +} + +div.sphinxsidebar hr { + border: none; + height: 1px; + color: {{ theme_sidebar_hr }}; + background: {{ theme_sidebar_hr }}; + + text-align: left; + margin-left: 0; + width: 50%; +} + +/* -- body styles ----------------------------------------------------------- */ + +a { + color: {{ theme_link }}; + text-decoration: underline; +} + +a:hover { + color: {{ theme_link_hover }}; + text-decoration: underline; +} + +div.body h1, +div.body h2, +div.body h3, +div.body h4, +div.body h5, +div.body h6 { + font-family: {{ theme_head_font_family }}; + font-weight: normal; + margin: 30px 0px 10px 0px; + padding: 0; +} + +div.body h1 { margin-top: 0; padding-top: 0; font-size: 240%; } +div.body h2 { font-size: 180%; } +div.body h3 { font-size: 150%; } +div.body h4 { font-size: 130%; } +div.body h5 { font-size: 100%; } +div.body h6 { font-size: 100%; } + +a.headerlink { + color: {{ theme_anchor }}; + padding: 0 4px; + text-decoration: none; +} + +a.headerlink:hover { + color: {{ theme_anchor_hover_fg }}; + background: {{ theme_anchor_hover_bg }}; +} + +div.body p, div.body dd, div.body li { + line-height: 1.4em; +} + +div.admonition { + margin: 20px 0px; + padding: 10px 30px; + background-color: {{ theme_admonition_bg }}; + border: 1px solid {{ theme_admonition_border }}; +} + +div.admonition tt.xref, div.admonition code.xref, div.admonition a tt { + background-color: {{ theme_admonition_xref_bg }}; + border-bottom: 1px solid {{ theme_admonition_xref_border }}; +} + +div.admonition p.admonition-title { + font-family: {{ theme_head_font_family }}; + font-weight: normal; + font-size: 24px; + margin: 0 0 10px 0; + padding: 0; + line-height: 1; +} + +div.admonition p.last { + margin-bottom: 0; +} + +div.highlight { + background-color: {{ theme_code_highlight_bg }}; +} + +dt:target, .highlight { + background: {{ theme_highlight_bg }}; +} + +div.warning { + background-color: {{ theme_warn_bg }}; + border: 1px solid {{ theme_warn_border }}; +} + +div.danger { + background-color: {{ theme_danger_bg }}; + border: 1px solid {{ theme_danger_border }}; + -moz-box-shadow: 2px 2px 4px {{ theme_danger_shadow }}; + -webkit-box-shadow: 2px 2px 4px {{ theme_danger_shadow }}; + box-shadow: 2px 2px 4px {{ theme_danger_shadow }}; +} + +div.error { + background-color: {{ theme_error_bg }}; + border: 1px solid {{ theme_error_border }}; + -moz-box-shadow: 2px 2px 4px {{ theme_error_shadow }}; + -webkit-box-shadow: 2px 2px 4px {{ theme_error_shadow }}; + box-shadow: 2px 2px 4px {{ theme_error_shadow }}; +} + +div.caution { + background-color: {{ theme_caution_bg }}; + border: 1px solid {{ theme_caution_border }}; +} + +div.attention { + background-color: {{ theme_attention_bg }}; + border: 1px solid {{ theme_attention_border }}; +} + +div.important { + background-color: {{ theme_important_bg }}; + border: 1px solid {{ theme_important_border }}; +} + +div.note { + background-color: {{ theme_note_bg }}; + border: 1px solid {{ theme_note_border }}; +} + +div.tip { + background-color: {{ theme_tip_bg }}; + border: 1px solid {{ theme_tip_border }}; +} + +div.hint { + background-color: {{ theme_hint_bg }}; + border: 1px solid {{ theme_hint_border }}; +} + +div.seealso { + background-color: {{ theme_seealso_bg }}; + border: 1px solid {{ theme_seealso_border }}; +} + +div.topic { + background-color: {{ theme_topic_bg }}; +} + +p.admonition-title { + display: inline; +} + +p.admonition-title:after { + content: ":"; +} + +pre, tt, code { + font-family: {{theme_code_font_family}}; + font-size: {{ theme_code_font_size }}; +} + +.hll { + background-color: {{theme_code_highlight}}; + margin: 0 -12px; + padding: 0 12px; + display: block; +} + +img.screenshot { +} + +tt.descname, tt.descclassname, code.descname, code.descclassname { + font-size: 0.95em; +} + +tt.descname, code.descname { + padding-right: 0.08em; +} + +img.screenshot { + -moz-box-shadow: 2px 2px 4px {{ theme_shadow }}; + -webkit-box-shadow: 2px 2px 4px {{ theme_shadow }}; + box-shadow: 2px 2px 4px {{ theme_shadow }}; +} + +table.docutils { + border: 1px solid {{ theme_table_border }}; + -moz-box-shadow: 2px 2px 4px {{ theme_shadow }}; + -webkit-box-shadow: 2px 2px 4px {{ theme_shadow }}; + box-shadow: 2px 2px 4px {{ theme_shadow }}; +} + +table.docutils td, table.docutils th { + border: 1px solid {{ theme_table_border }}; + padding: 0.25em 0.7em; +} + +table.field-list, table.footnote { + border: none; + -moz-box-shadow: none; + -webkit-box-shadow: none; + box-shadow: none; +} + +table.footnote { + margin: 15px 0; + width: 100%; + border: 1px solid {{ theme_footnote_border }}; + background: {{ theme_footnote_bg }}; + font-size: 0.9em; +} + +table.footnote + table.footnote { + margin-top: -15px; + border-top: none; +} + +table.field-list th { + padding: 0 0.8em 0 0; +} + +table.field-list td { + padding: 0; +} + +table.field-list p { + margin-bottom: 0.8em; +} + +/* Cloned from + * https://github.com/sphinx-doc/sphinx/commit/ef60dbfce09286b20b7385333d63a60321784e68 + */ +.field-name { + -moz-hyphens: manual; + -ms-hyphens: manual; + -webkit-hyphens: manual; + hyphens: manual; +} + +table.footnote td.label { + width: .1px; + padding: 0.3em 0 0.3em 0.5em; +} + +table.footnote td { + padding: 0.3em 0.5em; +} + +dl { + margin: 0; + padding: 0; +} + +dl dd { + margin-left: 30px; +} + +blockquote { + margin: 0 0 0 30px; + padding: 0; +} + +ul, ol { + /* Matches the 30px from the narrow-screen "li > ul" selector below */ + margin: 10px 0 10px 30px; + padding: 0; +} + +pre { + background: {{ theme_pre_bg }}; + padding: 7px 30px; + margin: 15px 0px; + line-height: 1.3em; +} + +div.viewcode-block:target { + background: {{ theme_viewcode_target_bg }}; +} + +dl pre, blockquote pre, li pre { + margin-left: 0; + padding-left: 30px; +} + +tt, code { + background-color: {{ theme_code_bg }}; + color: {{ theme_code_text }}; + /* padding: 1px 2px; */ +} + +tt.xref, code.xref, a tt { + background-color: {{ theme_xref_bg }}; + border-bottom: 1px solid {{ theme_xref_border }}; +} + +a.reference { + text-decoration: none; + border-bottom: none; +} + +/* Don't put an underline on images */ +a.image-reference, a.image-reference:hover { + border-bottom: none; +} + +a.reference:hover { + border-bottom: none; +} + +a.footnote-reference { + text-decoration: none; + font-size: 0.7em; + vertical-align: top; + border-bottom: 1px dotted {{ theme_link }}; +} + +a.footnote-reference:hover { + border-bottom: 1px solid {{ theme_link_hover }}; +} + +a:hover tt, a:hover code { + background: {{ theme_code_hover }}; +} + + +@media screen and (max-width: 870px) { + + div.sphinxsidebar { + display: none; + } + + div.document { + width: 100%; + + } + + div.documentwrapper { + margin-left: 0; + margin-top: 0; + margin-right: 0; + margin-bottom: 0; + } + + div.bodywrapper { + margin-top: 0; + margin-right: 0; + margin-bottom: 0; + margin-left: 0; + } + + ul { + margin-left: 0; + } + + li > ul { + /* Matches the 30px from the "ul, ol" selector above */ + margin-left: 30px; + } + + .document { + width: auto; + } + + .footer { + width: auto; + } + + .bodywrapper { + margin: 0; + } + + .footer { + width: auto; + } + + .github { + display: none; + } + + + +} + + + +@media screen and (max-width: 875px) { + + body { + margin: 0; + } + + div.documentwrapper { + float: none; + background: {{ theme_base_bg }}; + } + + div.sphinxsidebar { + display: block; + float: none; + width: 102.5%; + {%- if theme_fixed_sidebar|lower == 'true' %} + margin: -20px -30px 20px -30px; + {%- else %} + margin: 50px -30px -20px -30px; + {%- endif %} + padding: 10px 20px; + background: {{ theme_narrow_sidebar_bg }}; + color: {{ theme_narrow_sidebar_fg }}; + } + + div.sphinxsidebar h3, div.sphinxsidebar h4, div.sphinxsidebar p, + div.sphinxsidebar h3 a { + color: {{ theme_base_bg }}; + } + + div.sphinxsidebar a { + color: {{ theme_narrow_sidebar_link }}; + } + + div.sphinxsidebar p.logo { + display: none; + } + + div.document { + width: 100%; + margin: 0; + } + + div.footer { + display: none; + } + + div.bodywrapper { + margin: 0; + } + + div.body { + min-height: 0; + padding: 0; + } + + .rtd_doc_footer { + display: none; + } + + .document { + width: auto; + } + + .footer { + width: auto; + } + + .footer { + width: auto; + } + + .github { + display: none; + } +} + +{%- if theme_fixed_sidebar|lower == 'true' %} +@media screen and (min-width: 876px) { + div.sphinxsidebar { + position: fixed; + margin-left: 0; + } +} +{%- endif %} + + +/* misc. */ + +.revsys-inline { + display: none!important; +} + +/* Make nested-list/multi-paragraph items look better in Releases changelog + * pages. Without this, docutils' magical list fuckery causes inconsistent + * formatting between different release sub-lists. + */ +div#changelog > div.section > ul > li > p:only-child { + margin-bottom: 0; +} + +/* Hide fugly table cell borders in ..bibliography:: directive output */ +table.docutils.citation, table.docutils.citation td, table.docutils.citation th { + border: none; + /* Below needed in some edge cases; if not applied, bottom shadows appear */ + -moz-box-shadow: none; + -webkit-box-shadow: none; + box-shadow: none; +} + + +/* relbar */ + +.related { + line-height: 30px; + width: 100%; + font-size: 0.9rem; +} + +.related.top { + border-bottom: 1px solid {{ theme_relbar_border }}; + margin-bottom: 20px; +} + +.related.bottom { + border-top: 1px solid {{ theme_relbar_border }}; +} + +.related ul { + padding: 0; + margin: 0; + list-style: none; +} + +.related li { + display: inline; +} + +nav#rellinks { + float: right; +} + +nav#rellinks li+li:before { + content: "|"; +} + +nav#breadcrumbs li+li:before { + content: "\00BB"; +} + +/* Hide certain items when printing */ +@media print { + div.related { + display: none; + } +} + + +.bs-docs-sidebar { + padding-left: 20px; + margin-top: 20px; + margin-bottom: 20px; +} + + +.bs-docs-sidebar .nav>li>a { + color: #767676; + border-left: 2px solid transparent; + padding: 4px 20px; + font-size: 13px; + font-weight: 400; +} + +.bs-docs-sidebar .nav .nav>li>a { + padding-top: 1px; + padding-bottom: 1px; + padding-left: 30px; + font-size: 12px; +} + +.bs-docs-sidebar .nav>.current>a, +.bs-docs-sidebar .nav>.active>a, +.bs-docs-sidebar .nav>li>a:hover, +.bs-docs-sidebar .nav>li>a:focus { + color: #54487A; + text-decoration: none; + background-color: transparent; + border-left-color: #54487A; +} + +.bs-docs-sidebar .nav>.current>a, +.bs-docs-sidebar .nav>.current:hover>a, +.bs-docs-sidebar .nav>.current:focus>a, +.bs-docs-sidebar .nav>.active>a, +.bs-docs-sidebar .nav>.active:hover>a, +.bs-docs-sidebar .nav>.active:focus>a { + font-weight: 700; +} + +.bs-docs-sidebar .nav .nav>.active>a, +.bs-docs-sidebar .nav .nav>.active:hover>a, +.bs-docs-sidebar .nav .nav>.active:focus>a { + font-weight: 500; +} + +.bs-docs-sidebar .nav ul.nav { + display: none; +} + +.bs-docs-sidebar .nav>.current>ul.nav, +.bs-docs-sidebar .nav>.active>ul.nav { + display: block; +} + +.bs-docs-sidebar > .caption { + display: none!important; +} + + +#collapseExample > p { + display: none!important; +} + + +.bs-docs-sidebar.affix { + top: 10px!important; +} + +h2 { + margin-top: 40px!important; + padding-bottom: 5px; + border-bottom: 1px solid #eee; +} + +.collapsed > li > ul { + display:block!important; +} + +body { + min-height: 100vh; + position: relative; + margin: 0; + padding-bottom: 215px; +} + +footer { + position: absolute; + margin-top: 40px; + bottom: 0; + width: 100%; +} + +.site-welcome { + font-size:2.5em; + text-align:center; + margin-bottom:1em +} + +@media (max-width: 870px) { + .simple > li { + margin-left: 30px; + } +} + +@media (min-width: 351px) { + .site-logo { + height: 63px; + width: 191px; + background: url(https://assets.gentoo.org/tyrian/site-logo.png); + background: url(https://assets.gentoo.org/tyrian/site-logo.svg), + linear-gradient(transparent, transparent); + } +} + +@media (max-width: 350px) { + .site-logo { + margin-top: 7px; + height: 49px!important; + width: 49px!important; + background: url(https://www.gentoo.org/assets/img/logo/gentoo-signet.svg); + background: url(https://www.gentoo.org/assets/img/logo/gentoo-signet.svg), + linear-gradient(transparent, transparent); + } +} + + +@media (min-width: 351px) { + .site-label{ + vertical-align: 2.75em!important; + margin-left: 15px; + } +} + +@media (max-width: 350px) { + .site-label{ + vertical-align: 2em!important; + margin-left: 5px; + } +} + + +.gentoo_svg_logo { + content:url("https://assets.gentoo.org/tyrian/site-logo.svg"); +} + +.gentoo_logo { + content:url("https://assets.gentoo.org/tyrian/site-logo.svg"); +} + + +{%- if builder == "singlehtml" %} + +#collapseExample > ul > li { + list-style-type: none; +} + +#collapseExample > ul > li > ul > li { + list-style-type: none; +} + +#custom_toc { + width:auto;border: 1px solid #ddd;padding:5px;display: none; +} + +{%- else %} + +h1 + div > h2 { + margin-top: 15px !important; +} + +h1 + span + div > span + h2 { + margin-top: 15px !important; +} + +#custom_toc { + width:auto;margin-bottom:30px;padding:5px;display: none; +} + +@media (max-width: 870px) { + #collapseExample { + padding-left:20px; + } +} + +{%- endif %} diff --git a/tyrian_sphinx_theme/support.py b/tyrian_sphinx_theme/support.py new file mode 100644 index 0000000..0438317 --- /dev/null +++ b/tyrian_sphinx_theme/support.py @@ -0,0 +1,91 @@ +# flake8: noqa + +from pygments.style import Style +from pygments.token import ( + Keyword, + Name, + Comment, + String, + Error, + Number, + Operator, + Generic, + Whitespace, + Punctuation, + Other, + Literal, +) + + +# Originally based on Alabaster which was based on 'FlaskyStyle'. +class TyrianSphinxTheme(Style): + background_color = "#f8f8f8" # doesn't seem to override CSS 'pre' styling? + default_style = "" + + styles = { + # No corresponding class for the following: + # Text: "", # class: '' + Whitespace: "underline #f8f8f8", # class: 'w' + Error: "#a40000 border:#ef2929", # class: 'err' + Other: "#000000", # class 'x' + Comment: "italic #8f5902", # class: 'c' + Comment.Preproc: "noitalic", # class: 'cp' + Keyword: "bold #004461", # class: 'k' + Keyword.Constant: "bold #004461", # class: 'kc' + Keyword.Declaration: "bold #004461", # class: 'kd' + Keyword.Namespace: "bold #004461", # class: 'kn' + Keyword.Pseudo: "bold #004461", # class: 'kp' + Keyword.Reserved: "bold #004461", # class: 'kr' + Keyword.Type: "bold #004461", # class: 'kt' + Operator: "#582800", # class: 'o' + Operator.Word: "bold #004461", # class: 'ow' - like keywords + Punctuation: "bold #000000", # class: 'p' + # because special names such as Name.Class, Name.Function, etc. + # are not recognized as such later in the parsing, we choose them + # to look the same as ordinary variables. + Name: "#000000", # class: 'n' + Name.Attribute: "#c4a000", # class: 'na' - to be revised + Name.Builtin: "#004461", # class: 'nb' + Name.Builtin.Pseudo: "#3465a4", # class: 'bp' + Name.Class: "#000000", # class: 'nc' - to be revised + Name.Constant: "#000000", # class: 'no' - to be revised + Name.Decorator: "#888", # class: 'nd' - to be revised + Name.Entity: "#ce5c00", # class: 'ni' + Name.Exception: "bold #cc0000", # class: 'ne' + Name.Function: "#000000", # class: 'nf' + Name.Property: "#000000", # class: 'py' + Name.Label: "#f57900", # class: 'nl' + Name.Namespace: "#000000", # class: 'nn' - to be revised + Name.Other: "#000000", # class: 'nx' + Name.Tag: "bold #004461", # class: 'nt' - like a keyword + Name.Variable: "#000000", # class: 'nv' - to be revised + Name.Variable.Class: "#000000", # class: 'vc' - to be revised + Name.Variable.Global: "#000000", # class: 'vg' - to be revised + Name.Variable.Instance: "#000000", # class: 'vi' - to be revised + Number: "#990000", # class: 'm' + Literal: "#000000", # class: 'l' + Literal.Date: "#000000", # class: 'ld' + String: "#4e9a06", # class: 's' + String.Backtick: "#4e9a06", # class: 'sb' + String.Char: "#4e9a06", # class: 'sc' + String.Doc: "italic #8f5902", # class: 'sd' - like a comment + String.Double: "#4e9a06", # class: 's2' + String.Escape: "#4e9a06", # class: 'se' + String.Heredoc: "#4e9a06", # class: 'sh' + String.Interpol: "#4e9a06", # class: 'si' + String.Other: "#4e9a06", # class: 'sx' + String.Regex: "#4e9a06", # class: 'sr' + String.Single: "#4e9a06", # class: 's1' + String.Symbol: "#4e9a06", # class: 'ss' + Generic: "#000000", # class: 'g' + Generic.Deleted: "#a40000", # class: 'gd' + Generic.Emph: "italic #000000", # class: 'ge' + Generic.Error: "#ef2929", # class: 'gr' + Generic.Heading: "bold #000080", # class: 'gh' + Generic.Inserted: "#00A000", # class: 'gi' + Generic.Output: "#888", # class: 'go' + Generic.Prompt: "#745334", # class: 'gp' + Generic.Strong: "bold #000000", # class: 'gs' + Generic.Subheading: "bold #800080", # class: 'gu' + Generic.Traceback: "bold #a40000", # class: 'gt' + } diff --git a/tyrian_sphinx_theme/theme.conf b/tyrian_sphinx_theme/theme.conf new file mode 100644 index 0000000..4607648 --- /dev/null +++ b/tyrian_sphinx_theme/theme.conf @@ -0,0 +1,130 @@ +[theme] +inherit = basic +stylesheet = tyrian-sphinx-theme.css +sidebars = localtoc.html + +[options] +sidebar = right +navigationlinks_top = none +navigationlinks_bottom = long +navigationlinks_navbar = none +logo = +logo_name = false +logo_text_align = left +description = +description_font_style = normal +github_user = +github_repo = +github_button = true +github_banner = false +github_type = watch +github_count = true +badge_branch = master +travis_button = false +codecov_button = false +gratipay_user = +gittip_user = +analytics_id = +touch_icon = +canonical_url = +extra_nav_links = +sidebar_includehidden = true +sidebar_collapse = true +show_powered_by = true +show_related = false +show_relbars = false +show_relbar_top = +show_relbar_bottom = + +gray_1 = #444 +gray_2 = #EEE +gray_3 = #AAA + +pink_1 = #FCC +pink_2 = #FAA +pink_3 = #D52C2C + +base_bg = #fff +base_text = #000 +hr_border = #B1B4B6 +body_bg = +body_text = #3E4349 +body_text_align = left +footer_text = #888 +link = #004B6B +link_hover = #6D4100 +sidebar_header = +sidebar_text = #555 +sidebar_link = +sidebar_link_underscore = #999 +sidebar_search_button = #CCC +sidebar_list = #000 +sidebar_hr = +anchor = #DDD +anchor_hover_fg = +anchor_hover_bg = #EAEAEA +table_border = #888 +shadow = + +# Admonition options +## basic level +admonition_bg = +admonition_border = #CCC +note_bg = +note_border = #CCC +seealso_bg = +seealso_border = #CCC + +## critical level +danger_bg = +danger_border = +danger_shadow = +error_bg = +error_border = +error_shadow = + +## normal level +tip_bg = +tip_border = #CCC +hint_bg = +hint_border = #CCC +important_bg = +important_border = #CCC + +## warning level +caution_bg = +caution_border = +attention_bg = +attention_border = +warn_bg = +warn_border = + +topic_bg = +code_highlight_bg = +highlight_bg = #FAF3E8 +xref_border = #fff +xref_bg = #FBFBFB +admonition_xref_border = #fafafa +admonition_xref_bg = +footnote_bg = #FDFDFD +footnote_border = +pre_bg = +narrow_sidebar_bg = #333 +narrow_sidebar_fg = #FFF +narrow_sidebar_link = +font_size = 17px +caption_font_size = inherit +viewcode_target_bg = #ffd +code_bg = #ecf0f3 +code_text = #222 +code_hover = #EEE +code_font_size = 0.9em +code_font_family = 'Consolas', 'Menlo', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace +font_family = Georgia, serif +head_font_family = +caption_font_family = inherit +code_highlight = #FFC +page_width = 940px +sidebar_width = 220px +fixed_sidebar = false +relbar_border = |