diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..53288c3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +gentemplate/* +template/* diff --git a/render_file b/render_file index 00e9ad6..1469ce6 100755 --- a/render_file +++ b/render_file @@ -8,6 +8,23 @@ frontmatter=$(awk '/!startmeta/,/!endmeta/ {if ($0 != "!startmeta" && $0 != "!en docbody=$(awk '/!endmeta/ {p=1; next} p' "$1") title=$(echo "$frontmatter" | awk -F'=' '/title=/ {print $2}') date=$(echo "$frontmatter" | awk -F'=' '/date=/ {print $2}') +# Attempt to dynamically generate the header and footer for this page from gentemplates +# (If no script for generation exists, skip the step for that page element) +if [ -f gentemplate/header ] +then + printf 'Generating page header...' >&2 + title="$title" date="$date" gentemplate/header +fi +if [ -f gentemplate/footer ] +then + printf 'Generating page footer...' >&2 + date="$date" gentemplate/footer +fi +if [ -f gentemplate/htmlhead ] +then + printf 'Generating page
...' >&2 + title="$title" gentemplate/htmlhead +fi # cmark doesn't create the , doctype declaration or indeed most of the document # structure for us, so we'll do it ourselves. # We're going to use single quotes for the strings here too because otherwise we'll have @@ -15,17 +32,13 @@ date=$(echo "$frontmatter" | awk -F'=' '/date=/ {print $2}') printf '\n' printf '\n' printf '\n' -printf "