summaryrefslogtreecommitdiff
path: root/sphinx/io.py
diff options
context:
space:
mode:
authorTakeshi KOMIYA <i.tkomiya@gmail.com>2019-03-09 19:43:08 +0900
committerTakeshi KOMIYA <i.tkomiya@gmail.com>2019-03-17 13:55:02 +0900
commit23f7b3a6e7fb0f17c4c62ddf1e2ef8078e0e679e (patch)
tree85a5ba0fc70cb34acd311786cbd3903c3011a9c2 /sphinx/io.py
parent783d077dc81bebd4e0e7dba04e3a1fa6e589ffe0 (diff)
downloadsphinx-git-23f7b3a6e7fb0f17c4c62ddf1e2ef8078e0e679e.tar.gz
refactor: Remove lists of transforms from SphinxStandalonReader
Diffstat (limited to 'sphinx/io.py')
-rw-r--r--sphinx/io.py33
1 files changed, 13 insertions, 20 deletions
diff --git a/sphinx/io.py b/sphinx/io.py
index 00fc2bf1a..f6162b024 100644
--- a/sphinx/io.py
+++ b/sphinx/io.py
@@ -20,17 +20,12 @@ from docutils.writers import UnfilteredWriter
from sphinx.deprecation import RemovedInSphinx30Warning
from sphinx.transforms import (
- ApplySourceWorkaround, ExtraTranslatableNodes, SmartQuotesSkipper, CitationReferences,
- DefaultSubstitutions, MoveModuleTargets, HandleCodeBlocks, SortIds, FigureAligner,
- AutoNumbering, AutoIndexUpgrader, FilterSystemMessages,
- UnreferencedFootnotesDetector, SphinxSmartQuotes, DoctreeReadEvent, ManpageLink
+ AutoIndexUpgrader, DoctreeReadEvent, FigureAligner, SphinxTransformer
)
-from sphinx.transforms import SphinxTransformer
-from sphinx.transforms.compact_bullet_list import RefOnlyBulletListTransform
from sphinx.transforms.i18n import (
PreserveTranslatableMessages, Locale, RemoveTranslatableInline,
)
-from sphinx.transforms.references import SphinxDomains, SubstitutionDefinitionsRemover
+from sphinx.transforms.references import SphinxDomains
from sphinx.util import logging
from sphinx.util import UnicodeDecodeErrorHandler
from sphinx.util.docutils import LoggingReporter
@@ -93,13 +88,6 @@ class SphinxStandaloneReader(SphinxBaseReader):
"""
A basic document reader for Sphinx.
"""
- transforms = [ApplySourceWorkaround, ExtraTranslatableNodes, PreserveTranslatableMessages,
- Locale, CitationReferences, DefaultSubstitutions, MoveModuleTargets,
- HandleCodeBlocks, AutoNumbering, AutoIndexUpgrader, SortIds, FigureAligner,
- RemoveTranslatableInline, FilterSystemMessages, RefOnlyBulletListTransform,
- UnreferencedFootnotesDetector, SphinxSmartQuotes, ManpageLink,
- SphinxDomains, SubstitutionDefinitionsRemover, DoctreeReadEvent,
- UIDTransform, SmartQuotesSkipper]
def __init__(self, app, *args, **kwargs):
# type: (Sphinx, Any, Any) -> None
@@ -136,12 +124,17 @@ class SphinxI18nReader(SphinxBaseReader):
Because the translated texts are partial and they don't have correct line numbers.
"""
- transforms = [ApplySourceWorkaround, ExtraTranslatableNodes, CitationReferences,
- DefaultSubstitutions, MoveModuleTargets, HandleCodeBlocks,
- AutoNumbering, SortIds, RemoveTranslatableInline,
- FilterSystemMessages, RefOnlyBulletListTransform,
- UnreferencedFootnotesDetector, SphinxSmartQuotes, ManpageLink,
- SubstitutionDefinitionsRemover, SmartQuotesSkipper]
+ def __init__(self, app, *args, **kwargs):
+ # type: (Sphinx, Any, Any) -> None
+ self.transforms = self.transforms + app.registry.get_transforms()
+ unused = [PreserveTranslatableMessages, Locale, RemoveTranslatableInline,
+ AutoIndexUpgrader, FigureAligner, SphinxDomains, DoctreeReadEvent,
+ UIDTransform]
+ for transform in unused:
+ if transform in self.transforms:
+ self.transforms.remove(transform)
+
+ super().__init__(app, *args, **kwargs)
def set_lineno_for_reporter(self, lineno):
# type: (int) -> None