From 898e602685514ec7173e25f6747e8497056f9263 Mon Sep 17 00:00:00 2001 From: Martin Trigaux Date: Mon, 29 Oct 2018 15:19:12 +0100 Subject: [PATCH] [ADD] conf: display version number in the switcher app This commit is a cherry-pick of cd412359178 to 9.0 --- conf.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/conf.py b/conf.py index 39c8b439d..4668ae69d 100644 --- a/conf.py +++ b/conf.py @@ -326,11 +326,28 @@ def setup(app): app.connect('html-page-context', analytics) app.add_config_value('google_analytics_key', '', 'env') + app.connect('html-page-context', versionize) + app.add_config_value('versions', '', 'env') + app.connect('html-page-context', localize) app.add_config_value('languages', '', 'env') app.connect('doctree-resolved', tag_toctrees) +def versionize(app, pagename, templatename, context, doctree): + """ Adds a version switcher below the menu, requires ``canonical_root`` + and ``versions`` (an ordered, space-separated lists of all possible + versions). + """ + if not (app.config.canonical_root and app.config.versions): + return + + context['versions'] = [ + (vs, _build_url(app.config.canonical_root, vs, pagename)) + for vs in app.config.versions.split(',') + if vs != app.config.version + ] + def analytics(app, pagename, templatename, context, doctree): if not app.config.google_analytics_key: return