From 5b74bba3a3e6be2a3bab1aa735d45120181dc0fd Mon Sep 17 00:00:00 2001 From: Damien George Date: Wed, 9 Mar 2016 12:15:47 +0000 Subject: [PATCH] docs: Add versions.html template and support code for a version sidebar. --- docs/conf.py | 24 +++++++++++++++------- docs/templates/versions.html | 39 ++++++++++++++++++++++++++++++++++++ 2 files changed, 56 insertions(+), 7 deletions(-) create mode 100644 docs/templates/versions.html diff --git a/docs/conf.py b/docs/conf.py index 28ee113995..6ff7cb0d95 100755 --- a/docs/conf.py +++ b/docs/conf.py @@ -26,18 +26,28 @@ from collections import OrderedDict micropy_port = os.getenv('MICROPY_PORT') or 'pyboard' tags.add('port_' + micropy_port) ports = OrderedDict(( - ("unix", "unix"), - ("pyboard", "the pyboard"), - ("wipy", "the WiPy"), - ("esp8266", "esp8266"), + ('unix', ('unix', 'unix')), + ('pyboard', ('pyboard', 'the pyboard')), + ('wipy', ('WiPy', 'the WiPy')), + ('esp8266', ('ESP8266', 'the ESP8266')), )) # The members of the html_context dict are available inside topindex.html -url_prefix = os.getenv('MICROPY_URL_PREFIX') or '/' +micropy_version = os.getenv('MICROPY_VERSION') or 'latest' +url_pattern = '%s/en/%%s/%%s' % (os.getenv('MICROPY_URL_PREFIX') or '/',) html_context = { 'port':micropy_port, - 'port_name':ports[micropy_port], - 'all_ports':[(n, url_prefix + p) for p, n in ports.items()], + 'port_short_name':ports[micropy_port][0], + 'port_name':ports[micropy_port][1], + 'port_version':micropy_version, + 'all_ports':[ + (port_name[0], url_pattern % (micropy_version, port_id)) + for port_id, port_name in ports.items() + ], + 'all_versions':[ + (ver, url_pattern % (ver, micropy_port)) + for ver in ('v1.4', 'v1.4.1', 'v1.5', 'v1.6', 'latest') + ], } diff --git a/docs/templates/versions.html b/docs/templates/versions.html new file mode 100644 index 0000000000..977aefab11 --- /dev/null +++ b/docs/templates/versions.html @@ -0,0 +1,39 @@ +
+ + Ports and Versions + {{ port_short_name }} ({{ port_version }}) + + +
+
+
Ports
+ {% for slug, url in all_ports %} +
{{ slug }}
+ {% endfor %} +
+
+
Versions
+ {% for slug, url in all_versions %} +
{{ slug }}
+ {% endfor %} +
+ +
+
+
External links
+
+ micropython.org +
+
+ GitHub +
+
+
+