nichijou/gen_blogpost.sh
Renken aa9b8443c9
automate blog post generation
Generates a blog post under ./doc/log/archive/$year/$month/$timestamp.
It'll come in handy when writing random short thoughts.
2022-03-12 15:39:40 +01:00

46 lines
822 B
Bash
Executable file

#!/bin/sh
set -eu
timestamp="$(date '+%s')"
title="$(date '+%Y-%m-%d %H:%M' --date="@$timestamp")"
year="$(date '+%Y')"
month="$(date '+%m')"
archive=./doc/log/archive
for dir in "$archive" "$archive/$year" "$archive/$year/$month"; do
if [ ! -d "$dir" ]; then
mkdir -- "$dir"
name="$(basename -- "$dir")"
if [ "$name" = archive ]; then
name=Archive
fi
<<-EOF cat - >"$dir/index.rst"
$name
$(printf '%s\n' "$name" | sed -E 's|.|=|g')
.. toctree::
$(printf '\t'):glob:
$(printf '\t'):maxdepth: 1
$(printf '\t')*/index
EOF
fi
done
mkdir -- "$archive/$year/$month/$timestamp"
<<-EOF cat - >"$archive/$year/$month/$timestamp/index.rst"
$title
$(printf '%s\n' "$title" | sed -E 's|.|=|g')
.. contents::
TODO
----
EOF
printf '%s\n' "$archive/$year/$month/$timestamp"
exit 0