X-Git-Url: https://plomlompom.com/repos/%7B%7Bdb.prefix%7D%7D/calendar?a=blobdiff_plain;f=processor%2Findex.html.do;h=5149cace9c3aeb31e00388e726c001c1182d3fb8;hb=13dfbc049a5d1a6a4f5b6f2453b39542779300b0;hp=af8ba85e225e05599ba7cca418f68ad453b9376f;hpb=4373137de8ac6ad8731e6828a9876de9efe0a82e;p=redo-blog
diff --git a/processor/index.html.do b/processor/index.html.do
index af8ba85..5149cac 100644
--- a/processor/index.html.do
+++ b/processor/index.html.do
@@ -2,44 +2,47 @@
# Pull in global dependencies.
. ./helpers.sh
+metadata_dir=metadata
srcdir=`pwd`
-title_file=title.meta
+title_file="$metadata_dir"/title
redo-ifchange "$title_file"
+template_file="${metadata_dir}"/index.tmpl
+redo-ifchange "$template_file"
-# Write index head.
-cat << EOF
-
-
-
-EOF
-blog_title=`read_and_escape_file "$title_file" | head -1`
-printf "%s\n\n\n" "$blog_title"
-printf "%s
\n\n" "$blog_title"
+# Build blog title.
+title=$(read_and_escape_file "$title_file" | head -1 | prep_sed)
# Generate link list entries.
-mkdir -p index_snippets
+tmp_snippets_dir=.tmp_index_snippets
+mkdir -p "$tmp_snippets_dir"
for file in ./*.rst ./*.md; do
if [ -e "$file" ]; then
- uuid_file="${file%.*}.uuid"
+ uuid_file="${metadata_dir}/${file%.*}.uuid"
redo-ifchange "$uuid_file"
published=`stat -c%y "${uuid_file}"`
published_unix=$(date -u "+%s%N" -d "${published}")
- snippet_file="${file%.*}.index_snippet"
+ snippet_file="${metadata_dir}/${file%.*}.index_snippet"
redo-ifchange "$snippet_file"
- ln -s "$srcdir/$snippet_file" "./index_snippets/${published_unix}"
+ ln -s "$srcdir/$snippet_file" "./${tmp_snippets_dir}/${published_unix}"
fi
done
# Write link list.
-for file in ./index_snippets/*; do
- touch ./index_snippets/list
- cat "$file" ./index_snippets/list > ./index_snippets/tmp
- mv ./index_snippets/tmp ./index_snippets/list
+for file in ./${tmp_snippets_dir}/*; do
+ if [ -e "$file" ]; then
+ touch ./${tmp_snippets_dir}/list
+ cat "$file" ./${tmp_snippets_dir}/list > ./${tmp_snippets_dir}/tmp
+ mv ./${tmp_snippets_dir}/tmp ./${tmp_snippets_dir}/list
+ fi
done
-if [ -e "./index_snippets/list" ]; then
- cat ./index_snippets/list
+if [ -e "./${tmp_snippets_dir}/list" ]; then
+ list=$(cat ./${tmp_snippets_dir}/list | prep_sed)
fi
-rm -rf index_snippets
+rm -rf "${tmp_snippets_dir}"
-# Write index footer.
-printf "
\n\n"
+# Put data into template.
+template=$(cat "$template_file")
+printf "%s" "$template" | \
+sed 's/%TITLE%/'"$title"'/g' | \
+sed 's/%LIST%/'"$list"'/g' | \
+tr '\a' '%'