diff --git a/.travis.yml b/.travis.yml index 66aadde82fa..c2ea52595f9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -54,7 +54,7 @@ matrix: BUILD_DOCS=true BUILD_CMD="cd ${TRAVIS_BUILD_DIR}/package && python setup.py build_ext --inplace" INSTALL_HOLE="false" - PIP_DEPENDENCIES="${PIP_DEPENDENCIES} sphinx==1.8.5 sphinx-sitemap" + PIP_DEPENDENCIES="${PIP_DEPENDENCIES} sphinx==1.8.5 sphinx-sitemap sphinx_rtd_theme" - env: NAME="Lint" PYLINTRC="${TRAVIS_BUILD_DIR}/package/.pylintrc" diff --git a/package/doc/sphinx/source/_static/custom.css b/package/doc/sphinx/source/_static/custom.css index cd04a426b8f..480aa325f03 100644 --- a/package/doc/sphinx/source/_static/custom.css +++ b/package/doc/sphinx/source/_static/custom.css @@ -5,8 +5,10 @@ /* MDAnalysis gray: #808080 */ /* MDAnalysis white: #FFFFFF */ /* MDAnalysis black: #000000 */ - -@import url('readable.css'); +/* Darker orange: e76900 */ +/* Even darker orange: #a24900 */ +/* RTD dark grey: #343131 */ +/* RTD light grey: #e6e6e6 */ /* -- page layout --------------------------------------------------------- */ @@ -20,27 +22,53 @@ div.body { } div.sphinxsidebar a:hover { - color: #FF9200; + text-decoration: none !important; } div.sphinxsidebar p { color: #808080; } +/* Home MDAnalysis colour */ +.wy-side-nav-search > a { + color: #343131; +} + +/* Side MDAnalysis version colour */ +.wy-side-nav-search > div.version { + color: #808080; +} + +/* Menubar caption colour */ +div.wy-menu-vertical span.caption-text { + color: #FF9200; +} + +/* Mobile layout menubar option */ +nav.wy-nav-top { + background: #343131; +} + +/* Menu search bar outline (default blue) */ +.wy-side-nav-search input[type="text"] { + border-color: #808080; +} + /* -- body styles --------------------------------------------------------- */ -a { +/* Different coloured links for sidebar vs body) */ +div.rst-content a { color: #FF9200; text-decoration: none; } -a:visited { +div.rst-content a:visited { color: #FF9200; } a:hover { - color: #FF9200; + color: #FF9200 !important; text-decoration: underline; } @@ -66,6 +94,7 @@ a.headerlink:hover { color: #fff; } +/* ------- admonition boxes ------- */ div.admonition { margin: 10px 0px; @@ -75,4 +104,103 @@ div.admonition { div.admonition p.admonition-title { font-size: 100%; font-weight: bolder; +} + +/* ----- Tables ----- */ + +/* override table width restrictions */ +/* wrap tables instead of scrolling */ +@media screen and (min-width: 767px) { + + .wy-table-responsive table td, .wy-table-responsive table th { + /* !important prevents the common CSS stylesheets from overriding + this as on RTD they are loaded after this stylesheet */ + white-space: normal !important; + } + + .wy-table-responsive { + overflow: visible !important; + max-width: 100% !important; + } + } + +/* ----- Field lists ------ */ + +.section > dl.field-list { + display: flex; + flex-wrap: wrap; + margin: 0; + padding: 0; +} + +dl.field-list > dt::after { + content: ":"; +} + +.rst-content dl:not(.docutils) dt { + background: none; + color: #000000; + border-top: none; +} + +.section > dl.field-list dt { + margin: 0; + padding: 0; + flex-basis: 20%; + display: block; +} + +.section > dl.field-list > dd { + flex-basis: 70%; + margin: 0; +} + +.section > dl.field-list > dd p { + margin: 0; +} + +/* ----- MDAnalysis coloured elements ------ */ + +.rst-content dl.class dt, .rst-content dl.function dt { + color: #ca6500; + background: #FFEBD0; + border-top: solid 3px #FF9200; +} + +.rst-content .viewcode-link, .rst-content .viewcode-back { + color: #808080; +} + +.rst-content .guilabel { + background: #efefef; + border: 1px solid #808080; +} + + +.rst-content .seealso p.admonition-title { + background: #808080; +} + +.rst-content .seealso { + background: #e3e3e3; +} + +.rst-content .error p.admonition-title, .rst-content .warning p.admonition-title { + background: #F45F4B; +} + +.rst-content .error, .rst-content .warning { + background: #FFEEED; +} + +.rst-content .caution p.admonition-title, .rst-content .note p.admonition-title, .rst-content .important p.admonition-title { + background: #FF9200; +} + +.rst-content .caution, .rst-content .note, .rst-content .important { + background: #FFEBD0; +} + +.rst-content code:not(.xref).literal { + color: #ca6500; } \ No newline at end of file diff --git a/package/doc/sphinx/source/_static/logos/mdanalysis-logo-thin.png b/package/doc/sphinx/source/_static/logos/mdanalysis-logo-thin.png new file mode 100644 index 00000000000..e7d372f0812 Binary files /dev/null and b/package/doc/sphinx/source/_static/logos/mdanalysis-logo-thin.png differ diff --git a/package/doc/sphinx/source/conf.py b/package/doc/sphinx/source/conf.py index f1cfeceee83..0ff7a93752e 100644 --- a/package/doc/sphinx/source/conf.py +++ b/package/doc/sphinx/source/conf.py @@ -14,9 +14,9 @@ import sys import os import platform - -# http://alabaster.readthedocs.io/en/latest/ -import alabaster +import datetime +# https://sphinx-rtd-theme.readthedocs.io/en/stable/ +import sphinx_rtd_theme # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the @@ -37,7 +37,7 @@ 'sphinx.ext.mathjax', 'sphinx.ext.viewcode', 'sphinx.ext.napoleon', 'sphinx.ext.todo', 'sphinx_sitemap', - 'alabaster'] + 'sphinx_rtd_theme'] mathjax_path = 'https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS-MML_HTMLorMML' @@ -68,7 +68,8 @@ author_list = __import__('MDAnalysis').__authors__ authors = u', '.join(author_list[:-1]) + u', and ' + author_list[-1] project = u'MDAnalysis' -copyright = u'2005-2017, ' + authors +now = datetime.datetime.now() +copyright = u'2005-{}, '.format(now.year) + authors # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the @@ -110,7 +111,7 @@ #show_authors = False # The name of the Pygments (syntax highlighting) style to use. -pygments_style = 'sphinx' +pygments_style = 'default' # A list of ignored prefixes for module index sorting. #modindex_common_prefix = [] @@ -122,7 +123,7 @@ # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. -html_theme = 'alabaster' +html_theme = 'sphinx_rtd_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 @@ -141,34 +142,22 @@ 'black': '#000000',} html_theme_options = { - 'logo' : "logos/mdanalysis-logo-200x150.png", - 'github_user': "MDAnalysis", - 'github_repo': "mdanalysis", - #'travis_button': "MDAnalysis/mdanalysis", - 'travis_button': False, - 'github_type': 'star', - 'github_banner': True, - 'show_related': True, - 'fixed_sidebar': False, - 'sidebar_includehidden': True, - 'sidebar_collapse': True, - # style - 'link': color['orange'], - 'link_hover': color['orange'], - 'gray_1': color['gray'], - 'narrow_sidebar_bg': color['gray'], - 'narrow_sidebar_fg': color['white'], - # typography - #'font_size': 17, - 'font_family': "'PT Sans', Helvetica, Arial, 'sans-serif'", - 'head_font_family': "", - 'code_font_size': "smaller", - 'code_font_family': "Menlo, Monaco, 'Courier New', monospace", - 'caption_font_size': "smaller", + 'canonical_url': '', + 'logo_only': True, + 'display_version': True, + 'prev_next_buttons_location': 'bottom', + 'style_external_links': False, + 'style_nav_header_background': 'white', + # Toc options + 'collapse_navigation': True, + 'sticky_navigation': True, + 'navigation_depth': 5, + 'includehidden': True, + 'titles_only': False, } # Add any paths that contain custom themes here, relative to this directory. -html_theme_path = [alabaster.get_path()] +# html_theme_path = ['_themes',] # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". @@ -179,7 +168,7 @@ # The name of an image file (relative to this directory) to place at the top # of the sidebar. --- use theme -##html_logo = "logos/mdanalysis-logo-200x150.png" +html_logo = "_static/logos/mdanalysis-logo-thin.png" # The name of an image file (within the static path) to use as favicon of the # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 @@ -189,8 +178,9 @@ # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". -# For alabaster: custom.css to override theme defaults. +# For RTD theme: custom.css to override theme defaults. html_static_path = ['_static'] +html_css_files = ['custom.css'] # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format.