Skip to content

Commit 76efe9b

Browse files
authored
refactor: Drop all logic about supported builder (#17)
1 parent 60f1abb commit 76efe9b

File tree

1 file changed

+1
-30
lines changed

1 file changed

+1
-30
lines changed

src/sphinxnotes/strike/__init__.py

Lines changed: 1 addition & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -12,24 +12,17 @@
1212

1313
from docutils import nodes
1414
from docutils.utils import unescape
15-
from docutils.nodes import Node, system_message, Text
15+
from docutils.nodes import Node, system_message
1616
from docutils.parsers.rst.states import Inliner
1717

1818
from sphinx.application import Sphinx
19-
from sphinx.builders import Builder
20-
from sphinx.builders.html import StandaloneHTMLBuilder
21-
from sphinx.builders.latex import LaTeXBuilder
2219
from sphinx.util import logging
2320
from sphinx.environment import BuildEnvironment
2421

2522
from . import meta
2623

2724
logger = logging.getLogger(__name__)
2825

29-
# NOTE: DEPRECATED since 1.3, DO NOT use it.
30-
SUPPORTED_BUILDERS: list[type[Builder]] = [StandaloneHTMLBuilder, LaTeXBuilder]
31-
32-
3326
class strike_node(nodes.Inline, nodes.TextElement):
3427
pass
3528

@@ -44,17 +37,6 @@ def strike_role(
4437
content: List[str] = [],
4538
) -> Tuple[List[Node], List[system_message]]:
4639
env: BuildEnvironment = inliner.document.settings.env # type: ignore
47-
builder = env.app.builder
48-
49-
if not _is_supported_builder(builder):
50-
logger.warning(
51-
f'role {typ} is not supported for builder {builder.name}, fallback to text',
52-
location=(env.docname, lineno),
53-
type='strike',
54-
subtype='unsupported_builder',
55-
)
56-
return [Text(unescape(text))], []
57-
5840
node = strike_node(rawtext, unescape(text))
5941
node['docname'] = env.docname
6042
return [node], []
@@ -84,17 +66,6 @@ def latext_depart_strike_node(self, node: strike_node) -> None:
8466
self.body.append('}')
8567

8668

87-
def _is_supported_builder(builder: Builder) -> bool:
88-
if isinstance(builder, tuple(SUPPORTED_BUILDERS)):
89-
return True # NOTE: Compatible with version 1.2.
90-
91-
# a dict of builder name -> dict of node name -> visitor and departure functions
92-
handlers = builder.app.registry.translation_handlers.get(builder.name)
93-
if handlers is None:
94-
return False
95-
return handlers.get(strike_node.__name__) is not None
96-
97-
9869
def setup(app: Sphinx):
9970
"""Sphinx extension entrypoint."""
10071
meta.pre_setup(app)

0 commit comments

Comments
 (0)