aa9b8443c9
Generates a blog post under ./doc/log/archive/$year/$month/$timestamp. It'll come in handy when writing random short thoughts.
46 lines
822 B
Bash
Executable file
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
|