##// END OF EJS Templates
added listing of known exporters on error
Paul Ivanov -
Show More
@@ -86,7 +86,8 b' __all__ = ['
86 'export_python_armor',
86 'export_python_armor',
87 'export_reveal',
87 'export_reveal',
88 'export_rst',
88 'export_rst',
89 'export_by_name'
89 'export_by_name',
90 'get_export_names'
90 ]
91 ]
91
92
92 @DocDecorator
93 @DocDecorator
@@ -223,3 +224,10 b' def export_by_name(template_name, nb, config=None, transformers=None, filters=No'
223 else:
224 else:
224 raise NameError("template for `%s` not found" % function_name)
225 raise NameError("template for `%s` not found" % function_name)
225
226
227 def get_export_names():
228 "Return a list of the currently supported export targets"
229 # grab everything after 'export_'
230 l = [x[len('export_'):] for x in __all__ if x.startswith('export_')]
231 # filter out the one method that is not a template
232 l = [x for x in l if 'by_name' not in x]
233 return sorted(l)
@@ -26,7 +26,7 b' import os'
26 from IPython.config.application import Application
26 from IPython.config.application import Application
27 from IPython.utils.traitlets import Bool, Unicode
27 from IPython.utils.traitlets import Bool, Unicode
28
28
29 from .exporters.export import export_by_name
29 from .exporters.export import export_by_name, get_export_names
30 from .exporters.exporter import Exporter
30 from .exporters.exporter import Exporter
31 from .transformers import extractfigure
31 from .transformers import extractfigure
32 from .utils.config import GlobalConfigurable
32 from .utils.config import GlobalConfigurable
@@ -127,10 +127,15 b' class NbConvertApp(Application):'
127 ipynb_file = (self.extra_args)[2]
127 ipynb_file = (self.extra_args)[2]
128
128
129 #Export
129 #Export
130 try:
130 return_value = export_by_name(export_type, ipynb_file)
131 return_value = export_by_name(export_type, ipynb_file)
131 if return_value is None:
132 except NameError as e:
132 print("Error: '%s' template not found." % export_type)
133 print("Error: '%s' exporter not found." % export_type,
133 return
134 file=sys.stderr)
135 print("Known exporters are:",
136 "\n\t" + "\n\t".join(get_export_names()),
137 file=sys.stderr)
138 sys.exit(-1)
134 else:
139 else:
135 (output, resources, exporter) = return_value
140 (output, resources, exporter) = return_value
136
141
General Comments 0
You need to be logged in to leave comments. Login now