##// END OF EJS Templates
Restore support for Python < 2.7.9...
Restore support for Python < 2.7.9 See Python issue 21591 for details: http://bugs.python.org/issue21591 The combination of exec and a closure caused a problem on Python 2 older than 2.7.9. That was only released in December 2014, so we probably can't require it yet.

File last commit:

r19455:e009d9d7
r19689:22fa279b
Show More
notebook.py
32 lines | 1.1 KiB | text/x-python | PythonLexer
"""NotebookExporter class"""
# Copyright (c) IPython Development Team.
# Distributed under the terms of the Modified BSD License.
from .exporter import Exporter
from IPython import nbformat
from IPython.utils.traitlets import Enum
class NotebookExporter(Exporter):
"""Exports to an IPython notebook."""
nbformat_version = Enum(list(nbformat.versions),
default_value=nbformat.current_nbformat,
config=True,
help="""The nbformat version to write.
Use this to downgrade notebooks.
"""
)
def _file_extension_default(self):
return '.ipynb'
output_mimetype = 'application/json'
def from_notebook_node(self, nb, resources=None, **kw):
nb_copy, resources = super(NotebookExporter, self).from_notebook_node(nb, resources, **kw)
if self.nbformat_version != nb_copy.nbformat:
resources['output_suffix'] = '.v%i' % self.nbformat_version
else:
resources['output_suffix'] = '.nbconvert'
output = nbformat.writes(nb_copy, version=self.nbformat_version)
return output, resources