mirror of
https://github.com/ruivieira/nim-holst
synced 2026-01-14 11:31:44 +00:00
No description
| .chglog | ||
| .github/workflows | ||
| docs | ||
| src | ||
| tests | ||
| .build.yml | ||
| .gitattributes | ||
| .gitignore | ||
| .tool-versions | ||
| holst.nimble | ||
| LICENSE | ||
| README.md | ||
| RunningCode.ipynb | ||
nim-holst
A parser for Jupyter notebooks.
setup
Add holst to your nimble project:
requires "holst"
and run nimble install
examples
reading
Load and parse a Jupyter notebook in /tmp/foo.ipynb:
import holst
let notebook = read("/tmp/foo.ipynb")
metadata
Get the kernel's metadata
echo notebook.metadata.kernelspec.language # => python
echo notebook.metadata.kernelspec.name # => Python 3
exporting
Export the notebook as markdown
let md = notebook.markdown()
Images are rendered as links in Markdown, you can export the image data to files with
notebook.image_prefix = "notebook-img"
notebook.image_rel_path = "./my_images"
notebook.image_dest = "/tmp/html/my_images"
notebook.export_images()
iterating
Apply a method to each code cell:
notebook
.filter(proc(cell: Cell): bool = cell.kind = Cell.Code)
.map (
# do something
)
compatibility
holst works with Jupyter notebooks with format 4+.
mailing lists
- Announcements: https://lists.sr.ht/~ruivieira/nim-announce
- Discussion: https://lists.sr.ht/~ruivieira/nim-discuss
- Development: https://lists.sr.ht/~ruivieira/nim-devel
Please prefix the subject with [nim-holst].
