Improvements
- Jupytext now includes a Jupyter Notebook extension and a JupyterLab extension (#86).
- Jupytext command line has more arguments:
--paired-pathsto list the paths for the paired representations of the notebook, and--syncto synchronise the content of all paired paths based on the most recent file (#146). In addition, the--fromargument is optional even when the notebook is read from stdin (#148). - The pairing information, and more generally the notebook metadata can be edited with the CLL, see the
--set-formatsand the--update-metadataarguments (#141). - Jupytext can
--pipethe text representation of a notebook to external programs likeblackorflake8(#154, #142) - The Python representation of notebooks containing PEP8 cells is now expected to be PEP8 compliant (#154).
- Format specification allow prefix and suffix for path and file name (#138, #142). Use
ipynb,prefix/suffix.py:percentto pair the current notebook namednotebook.ipynbto a script namedprefixnotebooksuffix.py. Suffix and prefix can also be configured on theipynbfile, with the same syntax. - Introducing a new
hydrogenformat for scripts, which derives frompercent. In that format Jupyter magic commands are not commented (#59, #126, #132). - Introducing a new
bareformat for scripts, which derives fromlight. That format has no cell marker. Use a notebook metadata filter{"jupytext": {"notebook_metadata_filter":"-all"}}if you want no YAML header (#152). - The default format for R script is now
light, as for the other languages. - Added support for q/kdb+ notebooks (#161)
- Python scripts or Markdown documents that have no Jupyter metadata receive a metadata filter that ensures that metadata is not exported back to the text representation (#124).
- Metadata filters are represented as strings rather than dictionaries to make YAML headers shorter. Previous syntax from #105 is still supported. They were also renamed to
notebook_metadata_filterandcell_metadata_filter. - Markdown and RMarkdown formats have a new option
split_at_headingto split Markdown cells at heading (#130)
BugFixes
- Main language of scripts is inferred from script extension. Fixes a round trip conversion issue for Python notebooks with a Javascript cell.
- Non-Python scripts opened as notebooks in Jupyter are now correctly saved even when no matching kernel is found.
- Jupyter magic commands like
lsare commented in the light and R markdown format (#149). - Cell starting with
%%html,%%latexare now commented out in thelight,percentandRmdformats (#179).