##// END OF EJS Templates
pythonw in py3k sets std{in,out,err} to None...
pythonw in py3k sets std{in,out,err} to None The print statement works without error, even though the stdio file objects are instances of None. Since they are instances of None, however, the encoding attribute will not exist, so protect blind attribute access of std{in,out,err} by using a new function, get_stream_enc.

File last commit:

r6061:cddb82ef
r6651:40ec4c33
Show More
convert.py
51 lines | 1.6 KiB | text/x-python | PythonLexer
Brian E. Granger
More review changes....
r4609 """Code for converting notebooks to and from the v2 format.
Authors:
* Brian Granger
"""
#-----------------------------------------------------------------------------
# Copyright (C) 2008-2011 The IPython Development Team
#
# Distributed under the terms of the BSD License. The full license is in
# the file COPYING, distributed as part of this software.
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------
Brian E. Granger
Full versioning added to nbformat.
r4406 from .nbbase import (
Brian E. Granger
Markdown cells are now saved and restored in notebooks.
r4511 new_code_cell, new_text_cell, new_worksheet, new_notebook, new_output
Brian E. Granger
Full versioning added to nbformat.
r4406 )
Brian Granger
More work updating nbformat....
r6026 from IPython.nbformat import v2
Brian E. Granger
More review changes....
r4609 #-----------------------------------------------------------------------------
# Code
#-----------------------------------------------------------------------------
Brian Granger
More work updating nbformat....
r6026 def convert_to_this_nbformat(nb, orig_version=2):
Brian Granger
Fixing minor issues with nbformat....
r6048 """Convert a notebook to the v3 format.
Brian E. Granger
More review changes....
r4609
Parameters
----------
nb : NotebookNode
The Python representation of the notebook to convert.
orig_version : int
The original version of the notebook to convert.
"""
Brian E. Granger
Full versioning added to nbformat.
r4406 if orig_version == 1:
Brian Granger
More work updating nbformat....
r6026 nb = v2.convert_to_this_nbformat(nb)
orig_version = 2
if orig_version == 2:
Brian Granger
Proper error handling for nbformat versions in client code....
r6061 # Mark the original nbformat so consumers know it has been converted.
nb.nbformat = 3
nb.orig_nbformat = 2
Brian Granger
More work updating nbformat....
r6026 return nb
elif orig_version == 3:
return nb
Brian E. Granger
Full versioning added to nbformat.
r4406 else:
Brian Granger
More work updating nbformat....
r6026 raise ValueError('Cannot convert a notebook from v%s to v3' % orig_version)
Brian E. Granger
Full versioning added to nbformat.
r4406