#!/bin/sh set -e find_next_id() { last_id=$(fd -td '\d+' content/ -x echo '{/}' | sort -nr | head -n1) printf '%d\n' $((last_id + 1)) } print_front_matter() { cat <<-EOF +++ title = "" [taxonomies] tags = [] [extra] mentions = [] +++ EOF } add_date() { sed -i "1a date = $(date -Iseconds)" "$1" } cleanup() { rm -f "$tmpfile" exit 1 } tmpfile=$(mktemp --suffix=.md) trap "{ rm -f $tmpfile; }" EXIT print_front_matter > "$tmpfile" $EDITOR "$tmpfile" add_date "$tmpfile" dir="content/$(find_next_id)" mkdir "$dir/" cp "$tmpfile" "$dir/index.md"