#! /bin/bash main() ( set -ueo pipefail if [ ! -f ./raw.md ]; then wget -q -O ./raw.md https://raw.githubusercontent.com/ZachGoldberg/Startup-CTO-Handbook/main/StartupCTOHandbook.md fi rm -f ./src/* || true mkdir -p ./src printf "# Summary\n\n" > ./src/SUMMARY.md cat ./raw.md \ | ( n=0 n_f() { printf %03d.txt $n } while read -r line; do local depth=$( echo "$line" \ | grep -o -E '^[^a-z]*#+ ' \ | grep -o '#' \ | wc -l \ | awk '{print $1}' ) case "$depth" in 1|2 ) n=$((n+1)) printf "%s- [%s](%s)\n" \ "$(for i in $(seq 0 $depth); do printf " "; done)" \ "${line#* }" \ "$(n_f)" \ | tee -a ./src/SUMMARY.md >&2 ;; esac done ) mdbook build ) log() { echo "| $*" >&2 } if [ "$0" == "$BASH_SOURCE" ]; then main "$@" ret=$? echo ret=$? >&2 exit $ret fi