Show More
@@ -1,14 +1,33 b'' | |||
|
1 | 1 | """Generic script exporter class for any kernel language""" |
|
2 | 2 | |
|
3 | # Copyright (c) IPython Development Team. | |
|
4 | # Distributed under the terms of the Modified BSD License. | |
|
5 | ||
|
3 | 6 | from .templateexporter import TemplateExporter |
|
4 | 7 | |
|
8 | from IPython.utils.traitlets import Dict | |
|
9 | ||
|
5 | 10 | class ScriptExporter(TemplateExporter): |
|
11 | ||
|
12 | _exporters = Dict() | |
|
13 | ||
|
6 | 14 | def _template_file_default(self): |
|
7 | 15 | return 'script' |
|
8 | 16 | |
|
9 | 17 | def from_notebook_node(self, nb, resources=None, **kw): |
|
10 | 18 | langinfo = nb.metadata.get('language_info', {}) |
|
19 | ||
|
20 | # delegate to custom exporter, if specified | |
|
21 | exporter_name = langinfo.get('nbconvert_exporter') | |
|
22 | if exporter_name and exporter_name != 'script': | |
|
23 | self.log.debug("Loading script exporter: %s", exporter_name) | |
|
24 | from .export import exporter_map | |
|
25 | if exporter_name not in self._exporters: | |
|
26 | Exporter = exporter_map[exporter_name] | |
|
27 | self._exporters[exporter_name] = Exporter(parent=self) | |
|
28 | exporter = self._exporters[exporter_name] | |
|
29 | return exporter.from_notebook_node(nb, resources, **kw) | |
|
30 | ||
|
11 | 31 | self.file_extension = langinfo.get('file_extension', '.txt') |
|
12 | 32 | self.output_mimetype = langinfo.get('mimetype', 'text/plain') |
|
13 | ||
|
14 | 33 | return super(ScriptExporter, self).from_notebook_node(nb, resources, **kw) |
General Comments 0
You need to be logged in to leave comments.
Login now