mirror of
https://github.com/sphinx-doc/sphinx.git
synced 2025-02-25 18:55:22 -06:00
Close #3784: mathjax: Add :confval:mathjax_options
This commit is contained in:
parent
2855721d0b
commit
34126021d9
2
CHANGES
2
CHANGES
@ -137,6 +137,8 @@ Features added
|
||||
* html: Output ``canonical_url`` metadata if :confval:`html_baseurl` set (refs:
|
||||
#4193)
|
||||
* #5029: autosummary: expose ``inherited_members`` to template
|
||||
* #3784: mathjax: Add :confval:`mathjax_options` to give options to script tag
|
||||
for mathjax
|
||||
|
||||
Bugs fixed
|
||||
----------
|
||||
|
@ -260,6 +260,16 @@ Sphinx.
|
||||
|
||||
You can also give a full ``https://`` URL different from the CDN URL.
|
||||
|
||||
.. confval:: mathjax_options
|
||||
|
||||
The options to script tag for mathjax. For example, you can set integrity
|
||||
option with following setting::
|
||||
|
||||
mathjax_options = {
|
||||
'integrity': 'sha384-......',
|
||||
}
|
||||
|
||||
The default is empty (``{}``).
|
||||
|
||||
:mod:`sphinx.ext.jsmath` -- Render math via JavaScript
|
||||
------------------------------------------------------
|
||||
|
@ -74,6 +74,8 @@ def builder_inited(app):
|
||||
'mathjax extension to work')
|
||||
if app.builder.format == 'html':
|
||||
options = {'async': 'async'}
|
||||
if app.config.mathjax_options:
|
||||
options.update(app.config.mathjax_options)
|
||||
app.builder.add_js_file(app.config.mathjax_path, **options) # type: ignore
|
||||
|
||||
|
||||
@ -88,7 +90,8 @@ def setup(app):
|
||||
# https://docs.mathjax.org/en/latest/start.html#secure-access-to-the-cdn
|
||||
app.add_config_value('mathjax_path',
|
||||
'https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?'
|
||||
'config=TeX-AMS-MML_HTMLorMML', False)
|
||||
'config=TeX-AMS-MML_HTMLorMML', 'html')
|
||||
app.add_config_value('mathjax_options', {}, 'html')
|
||||
app.add_config_value('mathjax_inline', [r'\(', r'\)'], 'html')
|
||||
app.add_config_value('mathjax_display', [r'\[', r'\]'], 'html')
|
||||
app.connect('builder-inited', builder_inited)
|
||||
|
@ -89,6 +89,18 @@ def test_imgmath_svg(app, status, warning):
|
||||
assert re.search(html, content, re.S)
|
||||
|
||||
|
||||
@pytest.mark.sphinx('html', testroot='ext-math',
|
||||
confoverrides={'extensions': ['sphinx.ext.mathjax'],
|
||||
'mathjax_options': {'integrity': 'sha384-0123456789'}})
|
||||
def test_mathjax_options(app, status, warning):
|
||||
app.builder.build_all()
|
||||
|
||||
content = (app.outdir / 'index.html').text()
|
||||
assert ('<script async="async" integrity="sha384-0123456789" type="text/javascript" '
|
||||
'src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?'
|
||||
'config=TeX-AMS-MML_HTMLorMML"></script>' in content)
|
||||
|
||||
|
||||
@pytest.mark.sphinx('html', testroot='ext-math',
|
||||
confoverrides={'extensions': ['sphinx.ext.mathjax']})
|
||||
def test_mathjax_align(app, status, warning):
|
||||
|
Loading…
Reference in New Issue
Block a user