Skip to content

Commit 2365493

Browse files
committed
Use findall from docutils only if it's available
1 parent bb3c355 commit 2365493

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

src/furo/__init__.py

+7-2
Original file line numberDiff line numberDiff line change
@@ -44,13 +44,18 @@ class WrapTableAndMathInAContainerTransform(SphinxPostTransform):
4444

4545
def run(self, **kwargs: Any) -> None:
4646
"""Perform the post-transform on `self.document`."""
47-
for node in list(self.document.findall(nodes.table)):
47+
get_nodes = (
48+
self.document.findall # docutils 0.18+
49+
if hasattr(self.document, "findall")
50+
else self.document.traverse # docutils <= 0.17.x
51+
)
52+
for node in list(get_nodes(nodes.table)):
4853
new_node = nodes.container(classes=["table-wrapper"])
4954
new_node.update_all_atts(node)
5055
node.parent.replace(node, new_node)
5156
new_node.append(node)
5257

53-
for node in list(self.document.findall(nodes.math_block)):
58+
for node in list(get_nodes(nodes.math_block)):
5459
new_node = nodes.container(classes=["math-wrapper"])
5560
new_node.update_all_atts(node)
5661
node.parent.replace(node, new_node)

0 commit comments

Comments
 (0)