mirror of
https://github.com/mailscope/kumomta.git
synced 2026-08-25 13:48:18 +00:00
52d204984a
Previously, I was cleaning up some junk like _index directories generated from the _index.md fragments. I noticed that those were showing up in the search index, so it is better to exclude from the outset. mkdocs doesn't natively support the idea of exclusion, but there is a plugin that does, so use it.
48 lines
1.2 KiB
Bash
Executable File
48 lines
1.2 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
set -x
|
|
|
|
tracked_markdown=$(mktemp)
|
|
trap "rm ${tracked_markdown}" "EXIT"
|
|
find docs -type f | egrep '\.(markdown|md)$' > $tracked_markdown
|
|
|
|
mode=mkdocs
|
|
|
|
cargo_deps=gelatyx
|
|
if [ $mode == "mdbook" ]; then
|
|
cargo_deps="$cargo_deps mdbook mdbook-linkcheck mdbook-mermaid mdbook-admonish"
|
|
fi
|
|
for doc_dep in $cargo_deps ; do
|
|
if ! hash $doc_dep 2>/dev/null ; then
|
|
cargo install $doc_dep --locked
|
|
fi
|
|
done
|
|
|
|
if test -z "${CHECK_ONLY}" ; then
|
|
gelatyx --language lua --file-list $tracked_markdown --language-config stylua.toml
|
|
fi
|
|
if ! gelatyx --language lua --color always --file-list $tracked_markdown --language-config stylua.toml --check ; then
|
|
echo
|
|
echo "Be sure to run ./docs/build.sh to apply formatting before you push changes."
|
|
echo
|
|
exit 1
|
|
fi
|
|
|
|
python3 docs/generate-toc.py $mode || exit 1
|
|
|
|
case $mode in
|
|
mkdocs)
|
|
# Adjust path to pick up pip-installed binaries
|
|
PATH="$HOME/.local/bin;$PATH"
|
|
pip install --quiet mkdocs-material pillow cairosvg mkdocs-git-revision-date-localized-plugin black mkdocs-exclude
|
|
mkdocs build
|
|
# Keep the toc generator formatted
|
|
black docs/generate-toc.py
|
|
;;
|
|
mdbook)
|
|
mdbook-mermaid install docs
|
|
mdbook build docs
|
|
;;
|
|
esac
|
|
|