diff --git a/CHANGES b/CHANGES index facdbb0897..f4bf71d3c6 100644 --- a/CHANGES +++ b/CHANGES @@ -26,6 +26,9 @@ Features added Pradyun Gedam. * #10619: LaTeX: new ``shadowShadowColor`` and ``shadowBorderColor`` configurations for :ref:`'sphinxsetup' ` key of :confval:`latex_elements` +* #10599: HTML Theme: Wrap consecutive footnotes in an ``\n') + + old_visit_footnote = HTMLTranslator.visit_footnote + old_depart_footnote = HTMLTranslator.depart_footnote + + # Only apply on Docutils 0.18 or 0.18.1, as 0.17 and earlier used a
based + # approach, and 0.19 and later use the fixed approach by default. + if docutils.__version_info__[:2] == (0, 18): + HTMLTranslator.visit_footnote = visit_footnote # type: ignore[assignment] + HTMLTranslator.depart_footnote = depart_footnote # type: ignore[assignment] + + try: + yield + finally: + if docutils.__version_info__[:2] == (0, 18): + HTMLTranslator.visit_footnote = old_visit_footnote # type: ignore[assignment] + HTMLTranslator.depart_footnote = old_depart_footnote # type: ignore[assignment] + + @contextmanager def patch_docutils(confdir: Optional[str] = None) -> Generator[None, None, None]: """Patch to docutils temporarily.""" - with patched_get_language(), patched_rst_get_language(), using_user_docutils_conf(confdir): + with patched_get_language(), \ + patched_rst_get_language(), \ + using_user_docutils_conf(confdir), \ + du19_footnotes(): yield