commit f06fef924e04382d635bc3181ef97793a14e5309 parent a317888e6a065d5c5b972292e2b192c0247e0de0 Author: Francesco Saccone <francesco@francescosaccone.com> Date: Sat, 8 Mar 2025 17:30:06 +0100 feat: add script for Gemtext pages generation Signed-off-by: Francesco Saccone <francesco@francescosaccone.com> Diffstat:
A | generate-gemini.sh | | | 27 | +++++++++++++++++++++++++++ |
1 file changed, 27 insertions(+), 0 deletions(-)
diff --git a/generate-gemini.sh b/generate-gemini.sh @@ -0,0 +1,27 @@ +#!/bin/sh + +for program in cat dirname echo find lowdown mkdir rm read; do + if ! command -v "$program" > /dev/null 2>&1; then + echo "Error: Required program '$program' is not installed." + exit 1 + fi +done + +if [ "$#" -ne 1 ]; then + echo "Usage: $0 <destination>" + exit 1 +fi + +SOURCE="$(dirname "$0")" +DESTINATION="$1" + +find "$SOURCE" -type f -name "*.md" | while IFS= read -r md_file; do + relative_path="${md_file#$SOURCE/}" + gemini_file="$DESTINATION/${relative_path%.md}.gmi" + + mkdir -p "$(dirname "$gemini_file")" + + lowdown -t gemini "$md_file" > "$gemini_file" + + echo "Parsed: $md_file -> $gemini_file" +done