1
0
mirror of https://github.com/gryf/jekyll-rst.git synced 2025-12-19 04:20:21 +01:00

Clean up transform code

This commit is contained in:
2019-05-04 12:39:29 -06:00
parent d76fb6835a
commit ea9e82f537

View File

@@ -1,26 +1,27 @@
import optparse
import sys import sys
from docutils.core import publish_parts from docutils.core import publish_parts
from optparse import OptionParser from docutils.frontend import OptionParser
from docutils.frontend import OptionParser as DocutilsOptionParser
from docutils.parsers.rst import Parser from docutils.parsers.rst import Parser
def transform(writer=None, part=None): def transform(writer=None, part=None):
p = OptionParser(add_help_option=False) p = optparse.OptionParser(add_help_option=False)
# Collect all the command line options # Collect all the command line options
docutils_parser = DocutilsOptionParser(components=(writer, Parser())) docutils_parser = OptionParser(components=(writer, Parser()))
for group in docutils_parser.option_groups: for group in docutils_parser.option_groups:
p.add_option_group(group.title, None).add_options(group.option_list) p.add_option_group(group.title, None).add_options(group.option_list)
p.add_option('--part', default=part) p.add_option('--part', default=part)
opts, args = p.parse_args() opts, args = p.parse_args()
settings = dict({ settings = dict({'file_insertion_enabled': False,
'file_insertion_enabled': False, 'raw_enabled': False}, **opts.__dict__)
'raw_enabled': False,
}, **opts.__dict__)
if len(args) == 1: if len(args) == 1:
try: try:
content = open(args[0], 'r').read() content = open(args[0], 'r').read()
@@ -28,13 +29,10 @@ def transform(writer=None, part=None):
content = args[0] content = args[0]
else: else:
content = sys.stdin.read() content = sys.stdin.read()
parts = publish_parts( parts = publish_parts(source=content, settings_overrides=settings,
source=content, writer=writer)
settings_overrides=settings,
writer=writer,
)
if opts.part in parts: if opts.part in parts:
return parts[opts.part] return parts[opts.part]
return '' return ''