From a5cff27efe2cdad7800759fdf8b673db3fdaccd7 Mon Sep 17 00:00:00 2001 From: Jeff Hykin Date: Wed, 18 Feb 2026 10:03:40 -0800 Subject: [PATCH 1/4] add missing command --- bin/gen-diagrams | 33 ++++++++++++++++++++++++++++++++ docs/development/writing_docs.md | 2 +- 2 files changed, 34 insertions(+), 1 deletion(-) create mode 100755 bin/gen-diagrams diff --git a/bin/gen-diagrams b/bin/gen-diagrams new file mode 100755 index 0000000000..8dab510309 --- /dev/null +++ b/bin/gen-diagrams @@ -0,0 +1,33 @@ +#!/usr/bin/env bash +set -euo pipefail + +REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" +cd "$REPO_ROOT" + +# if md-babel-py doesnt exist +if [ -z "$(command -v "md-babel-py")" ]; then + # if ni doesnt exist + if [ -z "$(command -v "ni")" ] + then + echo "Error: md-babel-py required for running gen-diagrams." >&2 + echo " Either isntall nix or install md-babel-py" >&2 + echo " https://github.com/jeff-hykin/md-babel-py" >&2 + exit 1 + # use nix if local command doesn't exist + else + md-babel-py() { + nix run github:leshy/md-babel-py -- "$@" + } + fi +fi + +diagram_langs="asymptote,pikchr,openscad,diagon" +if [[ "$#" -gt 0 ]]; then + for arg in "$@"; do + md-babel-py run "$arg" --lang "$diagram_langs" + done +else + while IFS= read -r file; do + md-babel-py run "$file" --lang "$diagram_langs" + done < <(find ./docs -type f -name '*.md' | sort) +fi diff --git a/docs/development/writing_docs.md b/docs/development/writing_docs.md index 58466d6592..8b24dc620b 100644 --- a/docs/development/writing_docs.md +++ b/docs/development/writing_docs.md @@ -3,5 +3,5 @@ 1. Where to put your docs: - If it only matters to people who contribute to dimos (like this doc), put them in `docs/development` - Otherwise put them in `docs/usage` -2. Run `bin/gen_diagrams` to generate the svg's for your diagrams. We use [pikchr](https://pikchr.org/home/doc/trunk/doc/userman.md) as a diagram language. +2. Run `bin/gen-diagrams` to generate the svg's for your diagrams. We use [mermaid](https://mermaid.js.org/intro/) (no generation needed) and [pikchr](https://pikchr.org/home/doc/trunk/doc/userman.md) as diagrams languages. 3. Use [md-babel-py](https://github.com/leshy/md-babel-py/) (`md-babel-py run thing.md`) to make sure your code examples work. From f254a3ca2fe8e0243229c80c55414a8485b0c24e Mon Sep 17 00:00:00 2001 From: Jeff Hykin Date: Wed, 18 Feb 2026 12:14:32 -0600 Subject: [PATCH 2/4] Apply suggestion from @greptile-apps[bot] Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com> --- bin/gen-diagrams | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/gen-diagrams b/bin/gen-diagrams index 8dab510309..22edfcd055 100755 --- a/bin/gen-diagrams +++ b/bin/gen-diagrams @@ -6,8 +6,8 @@ cd "$REPO_ROOT" # if md-babel-py doesnt exist if [ -z "$(command -v "md-babel-py")" ]; then - # if ni doesnt exist - if [ -z "$(command -v "ni")" ] + # if nix doesnt exist + if [ -z "$(command -v "nix")" ] then echo "Error: md-babel-py required for running gen-diagrams." >&2 echo " Either isntall nix or install md-babel-py" >&2 From aaa4e988d58520254c3a6b6cc50018d682d941bc Mon Sep 17 00:00:00 2001 From: Jeff Hykin Date: Wed, 18 Feb 2026 10:16:07 -0800 Subject: [PATCH 3/4] fix --- bin/gen-diagrams | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/bin/gen-diagrams b/bin/gen-diagrams index 8dab510309..7efa3e0f7d 100755 --- a/bin/gen-diagrams +++ b/bin/gen-diagrams @@ -6,12 +6,11 @@ cd "$REPO_ROOT" # if md-babel-py doesnt exist if [ -z "$(command -v "md-babel-py")" ]; then - # if ni doesnt exist - if [ -z "$(command -v "ni")" ] - then + # if nix doesnt exist + if [ -z "$(command -v "nix")" ]; then echo "Error: md-babel-py required for running gen-diagrams." >&2 echo " Either isntall nix or install md-babel-py" >&2 - echo " https://github.com/jeff-hykin/md-babel-py" >&2 + echo " https://github.com/leshy/md-babel-py" >&2 exit 1 # use nix if local command doesn't exist else From 1056faae14ba787b5134fa1c9dae9441d1d8f775 Mon Sep 17 00:00:00 2001 From: Jeff Hykin Date: Wed, 18 Feb 2026 12:17:06 -0600 Subject: [PATCH 4/4] Update bin/gen-diagrams Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com> --- bin/gen-diagrams | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/gen-diagrams b/bin/gen-diagrams index 7efa3e0f7d..7bdf29933b 100755 --- a/bin/gen-diagrams +++ b/bin/gen-diagrams @@ -9,7 +9,7 @@ if [ -z "$(command -v "md-babel-py")" ]; then # if nix doesnt exist if [ -z "$(command -v "nix")" ]; then echo "Error: md-babel-py required for running gen-diagrams." >&2 - echo " Either isntall nix or install md-babel-py" >&2 + echo " Either install nix or install md-babel-py" >&2 echo " https://github.com/leshy/md-babel-py" >&2 exit 1 # use nix if local command doesn't exist