Skip to main content

Convert IPython notebooks to YAML and vice-versa

Project description

Build Status codecov

This simple project allows one to convert IPython notebooks to easily editable YAML files. This is very similar to the notedown and ipymd packages but supports all IPython outputs as well.

The advantage of using this package is that you get complete compatibility with IPython notebooks and the ability to edit the files in any text editor.

The format is YAML so it is not as pretty as Markdown but is a reasonable compromise.

An example IPython notebook with the corresponding YAML file both with the outputs and without the outputs is available in the examples directory.


Install the package as follows:

$ pip install ipyaml


Run the command ipyaml to convert between the two formats:

$ ipyaml notebook.ipynb notebook.ipyml  # or notebook.ipyaml

$ ipyaml notebook.ipyml notebook.ipynb

If you do not want to store the cell outputs in your YAML files you may also run the ipyaml script as follows:

$ ipyaml --no-output notebook.ipynb notebook.ipyml

This will not write any of the outputs. By default, all the outputs are also written to the output. Take a look at the output without output to see that it is very easy to manually remove the outputs if they are not desired. Using --no-output does not remove the IPython kernelspec and nbformat metadata at the end of the file but that may also be safely removed if one does not desire it.

If you want jupyter to automatically load and save the .ipyml files. Add the following to your

c.NotebookApp.contents_manager_class = 'ipyaml.api.YAMLContentsManager'

The can be found by running:

$ jupyter --config-dir

If you don’t see a you can do this:

$ jupyter notebook --generate-config

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ipyaml-0.3.tar.gz (15.7 kB view hashes)

Uploaded Source

Built Distribution

ipyaml-0.3-py3-none-any.whl (10.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page