summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES3
-rw-r--r--doc/extdev/index.rst15
-rw-r--r--sphinx/writers/latex.py45
3 files changed, 36 insertions, 27 deletions
diff --git a/CHANGES b/CHANGES
index e7fdd8024..aaf3ed2ea 100644
--- a/CHANGES
+++ b/CHANGES
@@ -72,8 +72,9 @@ Deprecated
* ``sphinx.util.PeekableIterator``
* ``sphinx.util.pycompat.UnicodeMixin``
* ``sphinx.util.pycompat.u``
+* ``sphinx.writers.latex.LaTeXTranslator._make_visit_admonition()``
* ``sphinx.writers.latex.LaTeXTranslator.babel_defmacro()``
-* ``sphinx.writers.latex.TextTranslator._make_visit_admonition()``
+* ``sphinx.writers.latex.LaTeXTranslator.collect_footnotes()``
* ``sphinx.writers.texinfo.TexinfoTranslator._make_visit_admonition()``
* ``sphinx.writers.text.TextTranslator._make_depart_admonition()``
* template variables for LaTeX template
diff --git a/doc/extdev/index.rst b/doc/extdev/index.rst
index 24afdadf7..3dc3cf5e6 100644
--- a/doc/extdev/index.rst
+++ b/doc/extdev/index.rst
@@ -237,6 +237,11 @@ The following is a list of deprecated interfaces.
- 4.0
- N/A
+ * - ``sphinx.writers.latex.LaTeXTranslator.babel_defmacro()``
+ - 2.0
+ - 4.0
+ - N/A
+
* - ``sphinx.application.Sphinx._setting_up_extension``
- 2.0
- 3.0
@@ -262,19 +267,19 @@ The following is a list of deprecated interfaces.
- 3.0
- N/A
- * - ``sphinx.writers.texinfo.TexinfoTranslator._make_visit_admonition()``
+ * - ``sphinx.writers.latex.LaTeXTranslator.collect_footnotes()``
- 2.0
- - 3.0
+ - 4.0
- N/A
- * - ``sphinx.writers.text.TextTranslator._make_depart_admonition()``
+ * - ``sphinx.writers.texinfo.TexinfoTranslator._make_visit_admonition()``
- 2.0
- 3.0
- N/A
- * - ``sphinx.writers.latex.LaTeXTranslator.babel_defmacro()``
+ * - ``sphinx.writers.text.TextTranslator._make_depart_admonition()``
- 2.0
- - 4.0
+ - 3.0
- N/A
* - :rst:dir:`highlightlang`
diff --git a/sphinx/writers/latex.py b/sphinx/writers/latex.py
index 4dd73abac..318639ac8 100644
--- a/sphinx/writers/latex.py
+++ b/sphinx/writers/latex.py
@@ -915,27 +915,6 @@ class LaTeXTranslator(SphinxTranslator):
# type: (nodes.Element) -> None
self.curfilestack.append(node['docname'])
- def collect_footnotes(self, node):
- # type: (nodes.Element) -> Dict[str, List[Union[collected_footnote, bool]]]
- def footnotes_under(n):
- # type: (nodes.Element) -> Iterator[nodes.footnote]
- if isinstance(n, nodes.footnote):
- yield n
- else:
- for c in n.children:
- if isinstance(c, addnodes.start_of_file):
- continue
- elif isinstance(c, nodes.Element):
- yield from footnotes_under(c)
-
- fnotes = {} # type: Dict[str, List[Union[collected_footnote, bool]]]
- for fn in footnotes_under(node):
- label = cast(nodes.label, fn[0])
- num = label.astext().strip()
- newnode = collected_footnote('', *fn.children, number=num)
- fnotes[num] = [newnode, False]
- return fnotes
-
def depart_start_of_file(self, node):
# type: (nodes.Element) -> None
self.curfilestack.pop()
@@ -2585,6 +2564,30 @@ class LaTeXTranslator(SphinxTranslator):
# --------- METHODS FOR COMPATIBILITY --------------------------------------
+ def collect_footnotes(self, node):
+ # type: (nodes.Element) -> Dict[str, List[Union[collected_footnote, bool]]]
+ def footnotes_under(n):
+ # type: (nodes.Element) -> Iterator[nodes.footnote]
+ if isinstance(n, nodes.footnote):
+ yield n
+ else:
+ for c in n.children:
+ if isinstance(c, addnodes.start_of_file):
+ continue
+ elif isinstance(c, nodes.Element):
+ yield from footnotes_under(c)
+
+ warnings.warn('LaTeXWriter.collected_footnote() is deprecated.',
+ RemovedInSphinx40Warning, stacklevel=2)
+
+ fnotes = {} # type: Dict[str, List[Union[collected_footnote, bool]]]
+ for fn in footnotes_under(node):
+ label = cast(nodes.label, fn[0])
+ num = label.astext().strip()
+ newnode = collected_footnote('', *fn.children, number=num)
+ fnotes[num] = [newnode, False]
+ return fnotes
+
@property
def footnotestack(self):
# type: () -> List[Dict[str, List[Union[collected_footnote, bool]]]]