From cf36182a28d8e8c3973c3b22b4f420397d0be65d Mon Sep 17 00:00:00 2001 From: Rahix Date: Wed, 10 Sep 2025 07:18:28 +0200 Subject: [PATCH] Add pre-commit hook for rendering notebooks --- .pre-commit-config.yaml | 10 ++++++++++ .pre-commit/run-nbconvert.sh | 8 ++++++++ 2 files changed, 18 insertions(+) create mode 100644 .pre-commit-config.yaml create mode 100755 .pre-commit/run-nbconvert.sh diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..eff663c --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,10 @@ +repos: +- repo: local + hooks: + - id: nbconvert + name: Convert Jupyter Notebooks to Markdown + language: system + entry: ./.pre-commit/run-nbconvert.sh + files: ^.*\.ipynb$ + pass_filenames: true + fail_fast: true diff --git a/.pre-commit/run-nbconvert.sh b/.pre-commit/run-nbconvert.sh new file mode 100755 index 0000000..33d5865 --- /dev/null +++ b/.pre-commit/run-nbconvert.sh @@ -0,0 +1,8 @@ +#!/usr/bin/env bash +set -e + +for nb in "$@"; do + echo "Converting $nb to markdown..." >&2 + out_dir="$(dirname "$nb")" + jupyter nbconvert "$nb" --to markdown --output-dir "$out_dir/rendered" +done