Files
lemma/server/gendocs.sh
2024-12-27 16:37:31 +01:00

34 lines
718 B
Bash
Executable File

#!/bin/bash
set -euo pipefail
generate_anchor() {
echo "$1" | tr '/' '-'
}
echo "# Lemma Package Documentation"
echo ""
echo "Generated documentation for all packages in the Lemma project."
echo ""
echo "## Table of Contents"
PACKAGES=$(find . -type f -name "*.go" ! -name "*_test.go" -exec dirname {} \; | sort -u | grep -v "/\.")
for PKG in $PACKAGES; do
PKG_PATH=${PKG#./}
[ -z "$PKG_PATH" ] && continue
ANCHOR=$(generate_anchor "$PKG_PATH")
echo "- [$PKG_PATH](#$ANCHOR)"
done
echo ""
for PKG in $PACKAGES; do
PKG_PATH=${PKG#./}
[ -z "$PKG_PATH" ] && continue
echo "## $PKG_PATH"
echo ""
echo '```go'
go doc -all "./$PKG_PATH" | cat
echo '```'
echo ""
done