From 7131d99df20e1c2546452124ee52a95fa3ace97b Mon Sep 17 00:00:00 2001 From: bnewbold Date: Tue, 30 Dec 2014 03:42:27 +0100 Subject: 'better' theme --- _better_theme/__init__.py | 3 + _better_theme/layout.html | 95 +++++++ _better_theme/relbar.html | 52 ++++ _better_theme/searchbox.html | 11 + _better_theme/static/better.css_t | 324 +++++++++++++++++++++++ _better_theme/static/better_basic.css_t | 455 ++++++++++++++++++++++++++++++++ _better_theme/theme.conf | 28 ++ _static/pygments-solarized-dark.css | 70 +++++ _static/style.css | 143 ++++++++++ _templates/layout.html | 9 + _templates/sidebarresources.html | 6 + conf.py | 39 +-- index.rst | 21 +- 13 files changed, 1227 insertions(+), 29 deletions(-) create mode 100644 _better_theme/__init__.py create mode 100644 _better_theme/layout.html create mode 100644 _better_theme/relbar.html create mode 100644 _better_theme/searchbox.html create mode 100644 _better_theme/static/better.css_t create mode 100644 _better_theme/static/better_basic.css_t create mode 100644 _better_theme/theme.conf create mode 100644 _static/pygments-solarized-dark.css create mode 100644 _static/style.css create mode 100644 _templates/layout.html create mode 100644 _templates/sidebarresources.html diff --git a/_better_theme/__init__.py b/_better_theme/__init__.py new file mode 100644 index 0000000..010d4ac --- /dev/null +++ b/_better_theme/__init__.py @@ -0,0 +1,3 @@ +import os +better_theme_path = os.path.split(os.path.dirname(__file__))[0] +__version__ = '0.1.5' diff --git a/_better_theme/layout.html b/_better_theme/layout.html new file mode 100644 index 0000000..31c6675 --- /dev/null +++ b/_better_theme/layout.html @@ -0,0 +1,95 @@ +{%- extends "basic/layout.html" %} +{%- from "relbar.html" import relbar_top with context %} +{%- from "relbar.html" import relbar_bottom with context %} + +{#- ### head ### -#} + +{%- block extrahead %} + + {#- make mobile reasonable #} + + + {%- for css_file in theme_cssfiles %} + {%- if css_file.startswith('http') %} + + {%- else %} + + {%- endif %} + {%- endfor %} + + {%- for js_file in theme_scriptfiles %} + + {%- endfor %} + + {%- if theme_inlinecss %} + + {%- endif %} + + {%- block userhead %} + {%- endblock %} +{%- endblock %} + +{#- ### content ### -#} + +{%- block header %} + {%- if theme_showheader|tobool %} + + {%- endif %} +{%- endblock %} + +{%- block relbar1 -%}{{ relbar_top() }}{%- endblock -%} +{%- block relbar2 -%}{{ relbar_bottom() }}{%- endblock -%} + +{%- block footer %} + + + {% if theme_ga_ua %} + + {% endif %} +{%- endblock %} diff --git a/_better_theme/relbar.html b/_better_theme/relbar.html new file mode 100644 index 0000000..6dc8b46 --- /dev/null +++ b/_better_theme/relbar.html @@ -0,0 +1,52 @@ +{%- macro rellink_markup() %} + +{%- endmacro %} + +{%- macro breadcrumbs_markup() %} + +{%- endmacro %} + +{%- macro relbar_top() %} + {%- if theme_showrelbartop|tobool %} + + {%- endif %} +{%- endmacro %} + +{%- macro relbar_bottom() %} + {%- if theme_showrelbarbottom|tobool %} + + {%- endif %} +{%- endmacro %} diff --git a/_better_theme/searchbox.html b/_better_theme/searchbox.html new file mode 100644 index 0000000..f761ce8 --- /dev/null +++ b/_better_theme/searchbox.html @@ -0,0 +1,11 @@ +{%- if pagename != "search" %} + + +{%- endif %} diff --git a/_better_theme/static/better.css_t b/_better_theme/static/better.css_t new file mode 100644 index 0000000..a697182 --- /dev/null +++ b/_better_theme/static/better.css_t @@ -0,0 +1,324 @@ +@import url("better_basic.css"); + +{% set theme_headtextcolor = theme_headtextcolor or theme_textcolor %} +{% set theme_footertextcolor = theme_footertextcolor or theme_textcolor %} + +/* main styles */ + +body { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 100%; + color: {{ theme_textcolor }}; + margin: 0; + padding: 0; + line-height: 135%; +} + +a { + color: #008; + text-decoration: none; +} + +a:visited { + color: #208; + text-decoration: none; +} + +a:hover { + text-decoration: underline; +} + +a.toc-backref { + color: {{ theme_headtextcolor }}; +} + +p { + margin: 1rem 0; +} + +h1, h2, h3, h4, h5, h6 { + margin-top: 1em; + margin-bottom: 0.5em; + color: {{ theme_headtextcolor }}; + line-height: 135%; +} + +.body .section:first-child > :first-child, +.sphinxsidebarwrapper > :first-child, +.sphinxsidebar .search:first-child +{ + margin-top: 1rem; +} + +h1 { font-size: 1.5rem; font-weight: bold; } +h2 { font-size: 1.5rem; font-weight: normal; } +h3 { font-size: 1.25rem; font-weight: bold; } +h4 { font-size: 1.25rem; font-weight: normal; } +h5 { font-size: 1rem; font-weight: bold; } +h6 { font-size: 1rem; font-weight: normal; } + +/* page-level layout of containers */ + +header#pageheader, footer#pagefooter, .related, .document { + width: 100%; + max-width: 60rem; + margin: auto; +} + +.documentwrapper { + float: left; + width: 100%; +} + +.bodywrapper { + {% if theme_rightsidebar|tobool -%} + margin: 0 {{ theme_sidebarwidth }} 0 0; + {%- else -%} + margin: 0 0 0 {{ theme_sidebarwidth }}; + {%- endif %} +} + +footer#pagefooter, footer#pagefooter a { + color: {{ theme_footertextcolor }}; +} + + +footer#pagefooter { + padding-top: 2rem; + padding-bottom: 2rem; + text-align: center; +} + +footer#pagefooter a { + text-decoration: underline; +} + +/* header styles */ + +body > header h1 a, body > header h1 a:visited { + color: {{ theme_headtextcolor }}; +} + +a.headerlink { + font-size: 0.8em; + padding: 0 4px 0 4px; + text-decoration: none; +} + +/* code styles */ + +pre, tt { + background-color: #eee; + color: #333; +} + +pre { + font-family: Monaco, Consolas, "Lucida Console", monospace; + margin: 1rem -5px; + padding: 5px; + border-left: none; + border-right: none; + font-size: 0.8rem; + line-height: 1rem; +} + +tt { + padding: 0 1px 0 1px; + font-family: Consolas, Monaco, monospace; +} + +/* API doc styles */ + +dl.function, +dl.class, +dl.method, +dl.attribute, +dl.data, +dl.classmethod { + margin-bottom: 2rem; +} + +/* relbar */ + +.related { + line-height: 30px; + width: 100%; + font-size: 0.9rem; +} + +.related.top { + border-bottom: 1px solid #aaa; +} + +.related.bottom { + border-top: 1px solid #aaa; +} + +.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"; +} + +/* sidebar */ + +.sphinxsidebarwrapper { + padding: 0 1rem 0 0; +} + +.sphinxsidebar { + width: {{ theme_sidebarwidth }}; + margin-left: -100%; + font-size: 0.9rem; + {%- if theme_rightsidebar|tobool %} + float: right; + {%- else %} + float: left; + {%- endif %} +} + +.sphinxsidebar h3 a { + color: {{ theme_headtextcolor }}; +} + +.sphinxsidebar p.topless { + margin: 5px 10px 10px 10px; +} + +.sphinxsidebar ul { + margin: 0; + padding: 0; + margin-bottom: 1rem; + list-style: none; +} + +.sphinxsidebar ul ul, +.sphinxsidebar ul.want-points { + margin-left: 20px; + list-style: square; +} + +.sphinxsidebar ul ul { + margin-top: 0; + margin-bottom: 0; +} + +.sphinxsidebar input { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + height: 1.5rem; + font-size: 0.9rem; + margin: 0; + + background-color: white; + border: 1px solid #ccc; + color: #555; +} + +.sphinxsidebar .search { + margin-top: 2rem; +} + +.sphinxsidebar .search input[type=text] { + {#- width: calc({{ theme_sidebarwidth }} - 5rem); #} + {#- width: -webkit-calc({{ theme_sidebarwidth }} - 5rem); #} + width: 90%; + display: inline-block; +} + +.sphinxsidebar .search input[type=submit] { + width: 4rem; + display: inline-block; +} + +/* paragraph-level markup */ + +.admonition p.admonition-title + p { + display: inline; +} + +.admonition p { + margin-bottom: 5px; +} + +.admonition pre { + margin-bottom: 5px; +} + +.admonition ul, .admonition ol { + margin-bottom: 5px; +} + +p.admonition-title { + display: inline; + margin-right: 0; +} + +p.admonition-title:after { + content: ":"; +} + +.note { + background-color: #eee; + border: 1px solid #ccc; +} + +.seealso { + background-color: #ffc; + border: 1px solid #ff6; +} + +.topic { + background-color: #eee; +} + +.warning { + background-color: #ffe4e4; + border: 1px solid #f66; +} + +.warning tt { + background: #efc2c2; +} + +.note tt { + background: #d6d6d6; +} + +.viewcode-block:target { + background-color: #f4debf; + border-top: 1px solid #ac9; + border-bottom: 1px solid #ac9; +} + +/* responsive styles */ + +@media (max-width: 820px) { + /* kill the sidebar */ + .bodywrapper { margin: 0; } + .sphinxsidebar { + display: none; + } + header#pageheader, footer#pagefooter, .related, .document { + margin: 0 1rem; + width: calc(100% - 2rem); + width: -webkit-calc(100% - 2rem); + } +} diff --git a/_better_theme/static/better_basic.css_t b/_better_theme/static/better_basic.css_t new file mode 100644 index 0000000..e06e6e9 --- /dev/null +++ b/_better_theme/static/better_basic.css_t @@ -0,0 +1,455 @@ +/* basic.css_t from Sphinx project modified for sphinx-better-theme */ + +/* -- main layout ----------------------------------------------------------- */ + +div.clearer { + clear: both; +} + +/* -- search page ----------------------------------------------------------- */ + +ul.search { + margin: 10px 0 0 20px; + padding: 0; +} + +ul.search li { + padding: 5px 0 5px 20px; + background-image: url(file.png); + background-repeat: no-repeat; + background-position: 0 7px; +} + +ul.search li a { + font-weight: bold; +} + +ul.search li div.context { + color: #888; + margin: 2px 0 0 30px; + text-align: left; +} + +ul.keywordmatches li.goodmatch a { + font-weight: bold; +} + +/* -- index page ------------------------------------------------------------ */ + +table.contentstable { + width: 90%; +} + +table.contentstable p.biglink { + line-height: 150%; +} + +a.biglink { + font-size: 1.3em; +} + +span.linkdescr { + font-style: italic; + padding-top: 5px; + font-size: 90%; +} + +/* -- general index --------------------------------------------------------- */ + +table.indextable { + width: 100%; +} + +table.indextable td { + text-align: left; + vertical-align: top; +} + +table.indextable dl, table.indextable dd { + margin-top: 0; + margin-bottom: 0; +} + +table.indextable tr.pcap { + height: 10px; +} + +table.indextable tr.cap { + margin-top: 10px; + background-color: #f2f2f2; +} + +img.toggler { + margin-right: 3px; + margin-top: 3px; + cursor: pointer; +} + +div.modindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +div.genindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +/* -- general body styles --------------------------------------------------- */ + +a.headerlink { + visibility: hidden; +} + +h1:hover > a.headerlink, +h2:hover > a.headerlink, +h3:hover > a.headerlink, +h4:hover > a.headerlink, +h5:hover > a.headerlink, +h6:hover > a.headerlink, +dt:hover > a.headerlink { + visibility: visible; +} + +div.body p.caption { + text-align: inherit; +} + +div.body td { + text-align: left; +} + +.field-list ul { + padding-left: 1em; +} + +.first { + margin-top: 0 !important; +} + +p.rubric { + margin-top: 30px; + font-weight: bold; +} + +img.align-left, .figure.align-left, object.align-left { + clear: left; + float: left; + margin-right: 1em; +} + +img.align-right, .figure.align-right, object.align-right { + clear: right; + float: right; + margin-left: 1em; +} + +img.align-center, .figure.align-center, object.align-center { + display: block; + margin-left: auto; + margin-right: auto; +} + +.align-left { + text-align: left; +} + +.align-center { + text-align: center; +} + +.align-right { + text-align: right; +} + +/* -- sidebars -------------------------------------------------------------- */ + +div.sidebar { + margin: 0 0 0.5em 1em; + border: 1px solid #ddb; + padding: 7px 7px 0 7px; + background-color: #ffe; + width: 40%; + float: right; +} + +p.sidebar-title { + font-weight: bold; +} + +/* -- topics ---------------------------------------------------------------- */ + +div.topic { + border: 1px solid #ccc; + padding: 7px 7px 0 7px; + margin: 10px 0 10px 0; +} + +p.topic-title { + font-size: 1.1em; + font-weight: bold; + margin-top: 10px; +} + +/* -- admonitions ----------------------------------------------------------- */ + +div.admonition { + margin-top: 10px; + margin-bottom: 10px; + padding: 7px; +} + +div.admonition dt { + font-weight: bold; +} + +div.admonition dl { + margin-bottom: 0; +} + +p.admonition-title { + margin: 0px 10px 5px 0px; + font-weight: bold; +} + +div.body p.centered { + text-align: center; + margin-top: 25px; +} + +/* -- tables ---------------------------------------------------------------- */ + +table.docutils { + border: 0; + border-collapse: collapse; +} + +table.docutils td, table.docutils th { + padding: 1px 8px 1px 5px; + border-top: 0; + border-left: 0; + border-right: 0; + border-bottom: 1px solid #aaa; +} + +table.field-list td, table.field-list th { + border: 0 !important; +} + +table.footnote td, table.footnote th { + border: 0 !important; +} + +th { + text-align: left; + padding-right: 5px; +} + +table.citation { + border-left: solid 1px gray; + margin-left: 1px; +} + +table.citation td { + border-bottom: none; +} + +/* -- other body styles ----------------------------------------------------- */ + +ol.arabic { + list-style: decimal; +} + +ol.loweralpha { + list-style: lower-alpha; +} + +ol.upperalpha { + list-style: upper-alpha; +} + +ol.lowerroman { + list-style: lower-roman; +} + +ol.upperroman { + list-style: upper-roman; +} + +dl { + margin-bottom: 15px; +} + +dd p { + margin-top: 0px; +} + +dd ul, dd table { + margin-bottom: 10px; +} + +dd { + margin-top: 3px; + margin-bottom: 10px; + margin-left: 30px; +} + +dt:target, .highlighted { + background-color: #fbe54e; +} + +dl.glossary dt { + font-weight: bold; + font-size: 1.1em; +} + +.field-list ul { + margin: 0; + padding-left: 1em; +} + +.field-list p { + margin: 0; +} + +.refcount { + color: #060; +} + +.optional { + font-size: 1.3em; +} + +.versionmodified { + font-style: italic; +} + +.system-message { + background-color: #fda; + padding: 5px; + border: 3px solid red; +} + +.footnote:target { + background-color: #ffa; +} + +.line-block { + display: block; + margin-top: 1em; + margin-bottom: 1em; +} + +.line-block .line-block { + margin-top: 0; + margin-bottom: 0; + margin-left: 1.5em; +} + +.guilabel, .menuselection { + font-family: sans-serif; +} + +.accelerator { + text-decoration: underline; +} + +.classifier { + font-style: oblique; +} + +abbr, acronym { + border-bottom: dotted 1px; + cursor: help; +} + +/* -- code displays --------------------------------------------------------- */ + +pre { + overflow: auto; + overflow-y: hidden; /* fixes display issues on Chrome browsers */ +} + +td.linenos pre { + padding: 5px 0px; + border: 0; + background-color: transparent; + color: #aaa; +} + +table.highlighttable { + margin-left: 0.5em; +} + +table.highlighttable td { + padding: 0 0.5em 0 0.5em; +} + +tt.descname { + background-color: transparent; + font-weight: bold; + font-size: 1.2em; +} + +tt.descclassname { + background-color: transparent; +} + +tt.xref, a tt { + background-color: transparent; + font-weight: bold; +} + +h1 tt, h2 tt, h3 tt, h4 tt, h5 tt, h6 tt { + background-color: transparent; +} + +.viewcode-link { + float: right; +} + +.viewcode-back { + float: right; + font-family: sans-serif; +} + +div.viewcode-block:target { + margin: -1px -10px; + padding: 0 10px; +} + +/* -- math display ---------------------------------------------------------- */ + +img.math { + vertical-align: middle; +} + +div.body div.math p { + text-align: center; +} + +span.eqno { + float: right; +} + +/* -- printout stylesheet --------------------------------------------------- */ + +@media print { + div.document, + div.documentwrapper, + div.bodywrapper { + margin: 0 !important; + width: 100%; + } + + div.sphinxsidebar, + div.related, + div.footer, + #top-link { + display: none; + } +} diff --git a/_better_theme/theme.conf b/_better_theme/theme.conf new file mode 100644 index 0000000..32bf173 --- /dev/null +++ b/_better_theme/theme.conf @@ -0,0 +1,28 @@ +[theme] +inherit = basic +stylesheet = better.css +pygments_style = sphinx + +[options] +rightsidebar = false +inlinecss = +cssfiles = +scriptfiles = +ga_ua = +ga_domain = + +showrelbartop = true +showrelbarbottom = true +showheader = true +linktotheme = true + +# css shortcuts that should decrease as the markup improves + +## page width is determined by CSS +sidebarwidth = 15rem + +## headtextcolor (color of h* tags) and footertextcolor default to the value +## of textcolor +textcolor = #000000 +headtextcolor = +footertextcolor = diff --git a/_static/pygments-solarized-dark.css b/_static/pygments-solarized-dark.css new file mode 100644 index 0000000..45421a3 --- /dev/null +++ b/_static/pygments-solarized-dark.css @@ -0,0 +1,70 @@ +/* From: https://gist.github.com/tdreyno/1125708 */ +.highlight .hll { background-color: #ffffcc } +.highlight .c { color: #586E75 } /* Comment */ +.highlight .err { color: #93A1A1 } /* Error */ +.highlight .g { color: #93A1A1 } /* Generic */ +.highlight .k { color: #859900 } /* Keyword */ +.highlight .l { color: #93A1A1 } /* Literal */ +.highlight .n { color: #93A1A1 } /* Name */ +.highlight .o { color: #859900 } /* Operator */ +.highlight .x { color: #CB4B16 } /* Other */ +.highlight .p { color: #93A1A1 } /* Punctuation */ +.highlight .cm { color: #586E75 } /* Comment.Multiline */ +.highlight .cp { color: #859900 } /* Comment.Preproc */ +.highlight .c1 { color: #586E75 } /* Comment.Single */ +.highlight .cs { color: #859900 } /* Comment.Special */ +.highlight .gd { color: #2AA198 } /* Generic.Deleted */ +.highlight .ge { color: #93A1A1; font-style: italic } /* Generic.Emph */ +.highlight .gr { color: #DC322F } /* Generic.Error */ +.highlight .gh { color: #CB4B16 } /* Generic.Heading */ +.highlight .gi { color: #859900 } /* Generic.Inserted */ +.highlight .go { color: #93A1A1 } /* Generic.Output */ +.highlight .gp { color: #93A1A1 } /* Generic.Prompt */ +.highlight .gs { color: #93A1A1; font-weight: bold } /* Generic.Strong */ +.highlight .gu { color: #CB4B16 } /* Generic.Subheading */ +.highlight .gt { color: #93A1A1 } /* Generic.Traceback */ +.highlight .kc { color: #CB4B16 } /* Keyword.Constant */ +.highlight .kd { color: #268BD2 } /* Keyword.Declaration */ +.highlight .kn { color: #859900 } /* Keyword.Namespace */ +.highlight .kp { color: #859900 } /* Keyword.Pseudo */ +.highlight .kr { color: #268BD2 } /* Keyword.Reserved */ +.highlight .kt { color: #DC322F } /* Keyword.Type */ +.highlight .ld { color: #93A1A1 } /* Literal.Date */ +.highlight .m { color: #2AA198 } /* Literal.Number */ +.highlight .s { color: #2AA198 } /* Literal.String */ +.highlight .na { color: #93A1A1 } /* Name.Attribute */ +.highlight .nb { color: #B58900 } /* Name.Builtin */ +.highlight .nc { color: #268BD2 } /* Name.Class */ +.highlight .no { color: #CB4B16 } /* Name.Constant */ +.highlight .nd { color: #268BD2 } /* Name.Decorator */ +.highlight .ni { color: #CB4B16 } /* Name.Entity */ +.highlight .ne { color: #CB4B16 } /* Name.Exception */ +.highlight .nf { color: #268BD2 } /* Name.Function */ +.highlight .nl { color: #93A1A1 } /* Name.Label */ +.highlight .nn { color: #93A1A1 } /* Name.Namespace */ +.highlight .nx { color: #93A1A1 } /* Name.Other */ +.highlight .py { color: #93A1A1 } /* Name.Property */ +.highlight .nt { color: #268BD2 } /* Name.Tag */ +.highlight .nv { color: #268BD2 } /* Name.Variable */ +.highlight .ow { color: #859900 } /* Operator.Word */ +.highlight .w { color: #93A1A1 } /* Text.Whitespace */ +.highlight .mf { color: #2AA198 } /* Literal.Number.Float */ +.highlight .mh { color: #2AA198 } /* Literal.Number.Hex */ +.highlight .mi { color: #2AA198 } /* Literal.Number.Integer */ +.highlight .mo { color: #2AA198 } /* Literal.Number.Oct */ +.highlight .sb { color: #586E75 } /* Literal.String.Backtick */ +.highlight .sc { color: #2AA198 } /* Literal.String.Char */ +.highlight .sd { color: #93A1A1 } /* Literal.String.Doc */ +.highlight .s2 { color: #2AA198 } /* Literal.String.Double */ +.highlight .se { color: #CB4B16 } /* Literal.String.Escape */ +.highlight .sh { color: #93A1A1 } /* Literal.String.Heredoc */ +.highlight .si { color: #2AA198 } /* Literal.String.Interpol */ +.highlight .sx { color: #2AA198 } /* Literal.String.Other */ +.highlight .sr { color: #DC322F } /* Literal.String.Regex */ +.highlight .s1 { color: #2AA198 } /* Literal.String.Single */ +.highlight .ss { color: #2AA198 } /* Literal.String.Symbol */ +.highlight .bp { color: #268BD2 } /* Name.Builtin.Pseudo */ +.highlight .vc { color: #268BD2 } /* Name.Variable.Class */ +.highlight .vg { color: #268BD2 } /* Name.Variable.Global */ +.highlight .vi { color: #268BD2 } /* Name.Variable.Instance */ +.highlight .il { color: #2AA198 } /* Literal.Number.Integer.Long */ diff --git a/_static/style.css b/_static/style.css new file mode 100644 index 0000000..bf279d8 --- /dev/null +++ b/_static/style.css @@ -0,0 +1,143 @@ +/* Intended to be applied over the "better" theme's defaults */ + +/* TODO: http://practicaltypography.com/rules-and-borders.html */ + +body { + font-family: serif; + font-size: 16px; +} + +.body { + font-size: 120%; + line-height: 135%; + color: rgb(72, 72, 72); +} + +h1, h2, h3, h4, h5, h6 { + color: #000; + font-family: "Helvetica", sans-serif; +} + +h1 { font-size: 1.6em; font-weight: bold; } +h2 { font-size: 1.3em; font-weight: normal; } +h3 { font-size: 1.05em; font-weight: normal; } +h4 { font-size: 0.9em; font-weight: normal; } +h5 { font-size: 0.9em; font-weight: normal; } + +header h1 { + opacity: 0.65; + margin-top: 0.3em; + font-size: 1.2em; + margin-left: 240px; + font-family: "Helvetica", sans-serif; + font-weight: bold; + text-transform: uppercase; + font-variant: small-caps; + font-weight: normal; +} + +header h1:hover { + opacity: 0.9; +} + +header h1 a, header h1 a:visited { + color: #000; +} + +.rubric { + text-align: center; + text-transform: uppercase; +} + +a.toc-backref { + color: #000; +} + +a.internal em { + font-style: normal; +} + +footer#pagefooter, footer#pagefooter a { + color: #777; +} + +.contents .topic-title { + font-weight: normal; +} +pre, tt { + font-family: "Source Code Pro", "Monaco", "Consolas", "Lucida Console", monospace; +} + +tt { + font-size: 80%; + background: #f4f4f4; +} + +.note tt { + background: #ececec; +} + +a tt { + font-weight: normal; +} + +.sphinxsidebar { + padding-top: 10em; + opacity: 0.65; + font-size: 0.9rem; +} + +.sphinxsidebar:hover { + opacity: 0.9; +} + +.sphinxsidebar .search input { + padding-left: 0.25rem; + margin-bottom: 2em; +} + +.sphinxsidebar h3 a { + color: #222; +} + +.highlight pre { + color: #ddd; + background-color: #333; + padding: 0.75em; + margin-bottom: 2em; + margin-left: 0px; + margin-right: 0px; + border-radius: 2px; + font-size: 0.9rem; + line-height: 120%; +} + +a:hover { + text-decoration: none; +} + +tt.descname { + font-size: 0.8em; +} + +dl.function > dt, dl.class > dt, dl.method > dt, dl.attribute > dt, dl.data > dt, dl.classmethod > dt, dl.enum > dt { + margin-bottom: 0.5em; + background: #f4f4f4; +} + +dl li > p { + display: inline; +} + +.related.bottom { + margin-top: 2em; +} + +div.admondition, div.topic, div.warning, div.note { + border-left: none; + border-right: none; +} + +div.note, div.topic { + background-color: #f4f4f4; +} diff --git a/_templates/layout.html b/_templates/layout.html new file mode 100644 index 0000000..7d9b9a4 --- /dev/null +++ b/_templates/layout.html @@ -0,0 +1,9 @@ +{% extends "!layout.html" %} + + +{% block header %} + +{% endblock %} diff --git a/_templates/sidebarresources.html b/_templates/sidebarresources.html new file mode 100644 index 0000000..f3630ec --- /dev/null +++ b/_templates/sidebarresources.html @@ -0,0 +1,6 @@ +

Resources

+ + diff --git a/conf.py b/conf.py index 9ebbab1..c174acd 100644 --- a/conf.py +++ b/conf.py @@ -55,9 +55,9 @@ copyright = u'2014, contributors like you' # built documents. # # The short X.Y version. -version = 'prerelease' +version = '' # The full version, including alpha/beta/rc tags. -release = 'prerelease' +release = '' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. @@ -67,7 +67,7 @@ release = 'prerelease' # non-false value, then it is used: #today = '' # Else, today_fmt is used as the format for a strftime call. -#today_fmt = '%B %d, %Y' +today_fmt = '%B %d, %Y' # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. @@ -89,35 +89,42 @@ exclude_patterns = ['_build'] #show_authors = False # The name of the Pygments (syntax highlighting) style to use. -pygments_style = 'sphinx' +pygments_style = 'native' # A list of ignored prefixes for module index sorting. #modindex_common_prefix = [] # If true, keep warnings as "system message" paragraphs in the built documents. -#keep_warnings = False +keep_warnings = False + +# Warn about all references where the target cannot be found. +nitpicky = True # -- Options for HTML output ---------------------------------------------- +# Add any paths that contain custom themes here, relative to this directory. +html_theme_path = ['.'] + # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. -html_theme = 'default' +html_theme = '_better_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. -#html_theme_options = {} - -# Add any paths that contain custom themes here, relative to this directory. -#html_theme_path = [] +html_theme_options = { + 'showrelbartop': False, + 'showrelbarbottom': True, + 'cssfiles': ['_static/style.css', ] +} # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". #html_title = None # A shorter title for the navigation bar. Default is the same as html_title. -#html_short_title = None +html_short_title = 'fpga-lube' # The name of an image file (relative to this directory) to place at the top # of the sidebar. @@ -140,14 +147,16 @@ html_static_path = ['_static'] # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. -#html_last_updated_fmt = '%b %d, %Y' +html_last_updated_fmt = '%b %d, %Y' # If true, SmartyPants will be used to convert quotes and dashes to # typographically correct entities. #html_use_smartypants = True # Custom sidebar templates, maps document names to template names. -#html_sidebars = {} +html_sidebars = { + '**': ['globaltoc.html', 'sidebarresources.html', 'searchbox.html'], +} # Additional templates that should be rendered to pages, maps page names to # template names. @@ -157,7 +166,7 @@ html_static_path = ['_static'] #html_domain_indices = True # If false, no index is generated. -#html_use_index = True +html_use_index = False # If true, the index is split into individual pages for each letter. #html_split_index = False @@ -180,7 +189,7 @@ html_static_path = ['_static'] #html_file_suffix = None # Output file base name for HTML help builder. -htmlhelp_basename = 'fpga-lubedoc' +htmlhelp_basename = 'fpga-lube' # -- Options for LaTeX output --------------------------------------------- diff --git a/index.rst b/index.rst index bc27317..557e8c1 100644 --- a/index.rst +++ b/index.rst @@ -1,22 +1,15 @@ -.. fpga-lube documentation master file, created by - sphinx-quickstart on Tue Dec 30 02:49:41 2014. - You can adapt this file completely to your liking, but it should at least - contain the root `toctree` directive. -Welcome to fpga-lube's documentation! -===================================== +FPGA LUBE +============ + +*making programmable logic development less painful* +--------------------------------------------------------------- Contents: .. toctree:: :maxdepth: 2 - - -Indices and tables -================== - -* :ref:`genindex` -* :ref:`modindex` -* :ref:`search` +About This Document +--------------------- -- cgit v1.2.3