Source code for nbless.nbuild
#!/usr/bin/env python
from typing import List
from pathlib import Path
import nbformat
[docs]def nbuild(filenames: List[str]) -> nbformat.notebooknode.NotebookNode:
"""Create an unexecuted Jupyter notebook from markdown and code files.
:param filenames: A list of source file names.
"""
nb = nbformat.v4.new_notebook()
nb["cells"] = [
nbformat.v4.new_code_cell(Path(name).read_text())
if name.endswith((".py", ".R"))
else nbformat.v4.new_markdown_cell(Path(name).read_text())
for name in filenames
]
return nb