diff --git a/sphinx/transforms/post_transforms/__init__.py b/sphinx/transforms/post_transforms/__init__.py index 1801d2c0949..4a963d31b87 100644 --- a/sphinx/transforms/post_transforms/__init__.py +++ b/sphinx/transforms/post_transforms/__init__.py @@ -237,7 +237,11 @@ def has_visitor(translator: type[nodes.NodeVisitor], node: type[Element]) -> boo return hasattr(translator, "visit_%s" % node.__name__) translator = self.app.builder.get_translator_class() - if isinstance(translator, SphinxTranslator): + if translator is None: + # do nothing if no translator class is specified (e.g., on a dummy builder) + return + + if issubclass(translator, SphinxTranslator): # subclass of SphinxTranslator supports desc_sig_element nodes automatically. return