diff options
Diffstat (limited to 'buildsite.sh')
| -rwxr-xr-x | buildsite.sh | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/buildsite.sh b/buildsite.sh new file mode 100755 index 00000000..425a147c --- /dev/null +++ b/buildsite.sh @@ -0,0 +1,61 @@ +#!/bin/sh -e + +rm -rf public +mkdir -p public + +for i in $(find . -type f -name "*.html" | sed 's|^\./||'); do + dir=${i%/*} + file=${i##*/} + title=${dir##*/} + [ "$dir" = "$file" ] && { + title=home; dir= + } + mkdir -p public/$dir + echo "copy html for $i..." + { + sed "s/@TITLE@/$title/g" files/header + cat $i + cat files/footer + } > public/$dir/$file +done + +# docs +cat docs/readme.md > docs/index.md +for f in docs/*.md; do + case $f in */readme.md|*/index.md) continue;; esac + title=$(head -n1 $f) + file=${f##*/} + echo "- [$title](./${file%.md}.html)" >> docs/index.md +done + +for i in $(find . -type f -name "*.md" | sed 's|^\./||'); do + dir=${i%/*} + file=${i##*/} + title=${dir##*/} + [ "$dir" = "$file" ] && { + title=home; dir= + } + mkdir -p public/$dir + echo "generating html for $i..." + { + sed "s/@TITLE@/$title/g" files/header + cmark $i + cat files/footer + } > public/${i%.md}.html +done + +# mv readme.html to index.html +for i in $(find public -type f -name "readme.html" | sed 's|^\./||'); do + mv -n $i ${i%/*}/index.html +done + +rm -f docs/index.md + +if [ -d files ]; then + cp -ra files public/assets +fi + +echo alicelinux.emmett1.my > public/.domains +echo alicelinux.org >> public/.domains + +exit 0 |