macros for Jupyter Notebooks
Project description
JPConvert
JPConvert is a simple tool to split up Jupyter Notebooks based on macros and remove unnecessary metadata.
Installation
JPConvert does not need any libraries. It is probably a good idea to use nbstripout
with it though.
The preferred way to use JPConvert is in a virtual environment:
python -m venv venv
source venv/bin/activate
Use pip to download and install JPConvert:
pip install jpconvert
Usage
python -m jpconvert <input> [<output>] [<options>]
If no input file is specified, stdin
is used instead. If no output file is specified, stdout
is used instead.
Macros and Options
option | description |
---|---|
--practice / -p |
keep cells containing #jp-practice |
--teaching / -t |
keep cells containing #jp-teaching |
--solution / -s |
keep cells containing #jp-solution |
--remove-without-macros |
remove cells that do not contain any macro |
--keep-empty |
do not remove empty cells |
--no-strip-lines |
do not remove space or tabs from line endings |
--keep-trailing |
do not remove trailing lines |
Multiple macros can be used per cell. Only code cells with the macro matching the output options are kept. Macros themselves are removed from the code cells.
The special macro #jp-toc
can be used to create a table of contents. Up to two conditionals can be added to control the table's depth.
Example
Image two code cells inside your notebook:
#jp-solution
a = a + 1
#jp-practice
a = ...
If you call JPConvert with the --practice
option, the first cell is removed and the second cell is kept:
a = ...
If you call JPConvert with the --solution
option, the first cell is kept and the second cell is removed:
a = a + 1
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for jpconvert-0.3.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dc4822eaaa5b50056844271602d359189f45242c50e8e5ac48c9603b147ed523 |
|
MD5 | c950d70f2dbf2f6dbbe8e1cb0a858e64 |
|
BLAKE2b-256 | 5a2bf3c833823aef4d91d55a1d8825220893b85eb5c2397ab3d9b7cd29bd1246 |