You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
1010 B
39 lines
1010 B
# Makefile for creating notebooks, pdfs, html out of the tracked markdown files
|
|
.PHONY: clean
|
|
|
|
venv:
|
|
python3 -m venv .venv
|
|
./.venv/bin/python -m pip install wheel jupyter
|
|
|
|
notebooks: createnotebookdir
|
|
$(foreach file, $(wildcard markdown/*), pandoc $(basename $(file)).md -o notebooks/$(notdir $(basename $(file))).ipynb ;)
|
|
|
|
pdf: createpdfdir notebooks
|
|
$(foreach file, $(wildcard notebooks/*), jupyter nbconvert --output-dir='./pdf/' --to pdf $(basename $(file)).ipynb ;)
|
|
|
|
html: createhtmldir notebooks
|
|
$(foreach file, $(wildcard notebooks/*), jupyter nbconvert --output-dir='./html/' --to html $(basename $(file)).ipynb ;)
|
|
|
|
# helper functions to create folders
|
|
createnotebookdir:
|
|
mkdir -p notebooks
|
|
|
|
createhtmldir:
|
|
mkdir -p html
|
|
|
|
createpdfdir:
|
|
mkdir -p pdf
|
|
|
|
# clean up helper functions for the individual formats
|
|
cleannotebooks:
|
|
rm -rf notebooks
|
|
|
|
cleanpdf:
|
|
rm -rf pdf
|
|
|
|
cleanhtml:
|
|
rm -rf html
|
|
|
|
# clean directory from files and folders that are not tracked
|
|
clean: cleannotebooks cleanpdf cleanhtml
|