Initial commit
This commit is contained in:
28
webgen.sh
Executable file
28
webgen.sh
Executable file
@ -0,0 +1,28 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
|
||||
BASEDIR="$(dirname "${0}" | sed "s|^\.|${PWD}|")"
|
||||
|
||||
source "${BASEDIR}/website.conf"
|
||||
|
||||
|
||||
for MARKDOWN_FILE in $(find -P "${MARKDOWN_DIR}/" | grep '\.md'); do
|
||||
PAGE_DIR="${WEBROOT}/$(cat "${MARKDOWN_FILE}" | grep -m1 '^page_dir: ' | head -1 | sed 's|page_dir: ||; s|^/||')"
|
||||
TEMPLATE="${TEMPLATE_DIR}/$(cat "${MARKDOWN_FILE}" | grep -m1 '^template: ' | head -1 | sed 's|template: ||').html"
|
||||
|
||||
if [[ ! -d "${PAGE_DIR}/" ]]; then
|
||||
# Makes the folder the current page being (re)generated goes in if it does not already exist.
|
||||
mkdir \
|
||||
-p \
|
||||
"${PAGE_DIR}/"
|
||||
fi
|
||||
|
||||
# pandoc does its magic here
|
||||
pandoc \
|
||||
--from markdown \
|
||||
--to html \
|
||||
--template "${TEMPLATE}" \
|
||||
--output "${PAGE_DIR}/index.html" \
|
||||
"${MARKDOWN_FILE}"
|
||||
done
|
Reference in New Issue
Block a user