From 6df0264776e061085fc6ec40944c9eddd9c9c442 Mon Sep 17 00:00:00 2001 From: "Rodney, Tiara" Date: Sat, 29 Mar 2025 20:12:07 +0100 Subject: [PATCH] chore(src): reinit theme temporarily locking to latest version of Sphinx. Will downgrade once stable. Additionally, removed anything I don't need at the moment. Copied this from an old theme of mine. --- src/sphinx_theme_ref/__init__.py | 63 +++----------------------------- 1 file changed, 5 insertions(+), 58 deletions(-) diff --git a/src/sphinx_theme_ref/__init__.py b/src/sphinx_theme_ref/__init__.py index e075cad..c8a5de2 100644 --- a/src/sphinx_theme_ref/__init__.py +++ b/src/sphinx_theme_ref/__init__.py @@ -2,75 +2,22 @@ Tiara's Sphinx theme reference implementation. """ -from os import path +from pathlib import Path from sys import version_info as python_version from sphinx import version_info as sphinx_version from sphinx.locale import _ from sphinx.util.logging import getLogger -# TODO: Figure out how to integrate with setuptools_scm -__version__ = '0.0.1' -__version_full__ = __version__ - logger = getLogger(__name__) -def get_html_theme_path(): - """Return list of HTML theme paths.""" - cur_dir = path.abspath(path.dirname(path.dirname(__file__))) - return cur_dir - - -def config_initiated(app, config): - theme_options = config.html_theme_options or {} - if theme_options.get('canonical_url'): - logger.warning( - _('The canonical_url option is deprecated, use the html_baseurl option from Sphinx instead.') - ) - - -def extend_html_context(app, pagename, templatename, context, doctree): - # Add ``sphinx_version_info`` tuple for use in Jinja templates - context['sphinx_version_info'] = sphinx_version - - -# See http://www.sphinx-doc.org/en/stable/theming.html#distribute-your-theme-as-a-python-package def setup(app): - if python_version[0] < 3: - logger.error("Python 2 is not supported with tiararodneycom_theme, update to Python 3.") + """ + """ + app.require_sphinx('8.0') - app.require_sphinx('5.0') - if app.config.html4_writer: - logger.error("'html4_writer' is not supported with sphinx_theme_ref.") - - # Since Sphinx 6, jquery isn't bundled anymore and we need to ensure that - # the sphinxcontrib-jquery extension is enabled. - # See: https://dev.readthedocs.io/en/latest/design/sphinx-jquery.html -# if sphinx_version >= (6, 0, 0): -# # Documentation of Sphinx guarantees that an extension is added and -# # enabled at most once. -# # See: https://www.sphinx-doc.org/en/master/extdev/appapi.html#sphinx.application.Sphinx.setup_extension -# app.setup_extension("sphinxcontrib.jquery") -# # However, we need to call the extension's callback since setup_extension doesn't do it -# # See: https://github.com/sphinx-contrib/jquery/issues/23 -# from sphinxcontrib.jquery import add_js_files as jquery_add_js_files -# jquery_add_js_files(app, app.config) - - # Register the theme that can be referenced without adding a theme path - app.add_html_theme('tiaras-theme-ref', path.abspath(path.dirname(__file__))) - - # Add Sphinx message catalog for newer versions of Sphinx - # See http://www.sphinx-doc.org/en/master/extdev/appapi.html#sphinx.application.Sphinx.add_message_catalog - rtd_locale_path = path.join(path.abspath(path.dirname(__file__)), 'locale') - app.add_message_catalog('sphinx', rtd_locale_path) - app.connect('config-inited', config_initiated) + app.add_html_theme('sphinx-theme-ref', Path(__file__).resolve().parent) app.add_js_file('assets/script/theme.js') - # sphinx emits the permalink icon for headers, so choose one more in keeping with our theme - app.config.html_permalinks_icon = "\uf0c1" - - # Extend the default context when rendering the templates. - app.connect("html-page-context", extend_html_context) - return {'parallel_read_safe': True, 'parallel_write_safe': True}