summaryrefslogtreecommitdiff
path: root/sphinx/application.py
diff options
context:
space:
mode:
authorManuel Kaufmann <humitos@gmail.com>2021-05-06 15:10:06 +0200
committerManuel Kaufmann <humitos@gmail.com>2021-05-06 15:21:12 +0200
commitd01e776c814a3f9eaa479ec7eb63fb4fc33a0143 (patch)
tree91537e6414033623575420c52d2a22d983e45269 /sphinx/application.py
parent512743525c64ef880ef02116fe3890ed29339bd4 (diff)
downloadsphinx-git-d01e776c814a3f9eaa479ec7eb63fb4fc33a0143.tar.gz
Add `Sphinx.add_html_assets_in_all_pages`
This new method in the `Sphinx` object allows extensions to communicate to Sphinx that it's preferred to include HTML assets in all the pages. However, it's extensions developers' responsability to follow this config and decide whether or not include the assets required. Extensions developers' can check `Sphinx.html_assets_in_all_pages` together with any other logic they may have to decide if the assets will be included in the rendered page or not. Closes #9115
Diffstat (limited to 'sphinx/application.py')
-rw-r--r--sphinx/application.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/sphinx/application.py b/sphinx/application.py
index 4735beffd..59e1683b3 100644
--- a/sphinx/application.py
+++ b/sphinx/application.py
@@ -146,6 +146,7 @@ class Sphinx:
self.project: Project = None
self.registry = SphinxComponentRegistry()
self.html_themes: Dict[str, str] = {}
+ self.html_assets_in_all_pages: bool = False
# validate provided directories
self.srcdir = abspath(srcdir)
@@ -1181,6 +1182,13 @@ class Sphinx:
logger.debug('[app] adding environment collector: %r', collector)
collector().enable(self)
+ def add_html_assets_in_all_pages(self):
+ """Tell extensions to insert HTML assets in all the pages.
+
+ .. versionadded: 4.1
+ """
+ self.html_assets_in_all_pages = True
+
def add_html_theme(self, name: str, theme_path: str) -> None:
"""Register a HTML Theme.