aboutsummaryrefslogtreecommitdiff
path: root/v2/src/bin/extract
diff options
context:
space:
mode:
Diffstat (limited to '')
-rwxr-xr-xv2/src/bin/extract133
1 files changed, 0 insertions, 133 deletions
diff --git a/v2/src/bin/extract b/v2/src/bin/extract
deleted file mode 100755
index 7bbcba7..0000000
--- a/v2/src/bin/extract
+++ /dev/null
@@ -1,133 +0,0 @@
-#!/bin/sh
-set -eu
-
-
-usage() {
- cat <<-'EOF'
- Usage:
- extract -t TYPE FILENAME
- extract -h
- EOF
-}
-
-help() {
- cat <<-'EOF'
-
- Options:
- -t TYPE the type of extraction to perform ("content" or "env")
- -h, --help show this message
-
- FILENAME the name of the input file, also to be used as
- URL.
-
-
- Separate the content from the "frontmatter", and emit the
- selected one, given the FILENAME.
-
-
- Examples:
-
- Get the content:
-
- $ extract -t content src/file.md > src/file.entry-content
-
-
- Get the "frontmatter":
-
- $ extract -t env src/f.md > src/f.entry-env
- EOF
-}
-
-
-for flag in "$@"; do
- case "$flag" in
- --)
- break
- ;;
- --help)
- usage
- help
- exit
- ;;
- *)
- ;;
- esac
-done
-
-TYPE=''
-while getopts 't:h' flag; do
- case "$flag" in
- t)
- TYPE="$OPTARG"
- ;;
- h)
- usage
- help
- exit
- ;;
- *)
- usage >&2
- exit 2
- ;;
- esac
-done
-shift $((OPTIND - 1))
-
-
-FILENAME="${1:-}"
-eval "$(assert-arg "$FILENAME" 'FILENAME')"
-eval "$(assert-arg "$TYPE" '-t TYPE')"
-
-
-case "$TYPE" in
- content)
- . "${FILENAME%.md}.entry-env"
- printf '%s\n' "$PREAMBLE"
- awk '
- separator >= 2
- /^---$/ { separator++ }
- ' "$FILENAME"
- ;;
- env)
- cat src/development/config.env
- awk '
- /^---$/ {
- if (++separator > 1) {
- exit
- } else {
- next
- }
- }
-
- { print }
- ' "$FILENAME"
- printf "FILENAME='%s'\n" "$FILENAME"
- cat <<-'REAL_EOF'
- TITLE="${TITLE:-$SITE_NAME}"
-
- URI_TITLE="$(printf '%s' "$TITLE" | uri)"
-
- URL="$(
- printf '%s' "$FILENAME" |
- sed \
- -e 's|^src/content/||' \
- -e 's|md$|html|'
- )"
-
- PREAMBLE="$(cat <<EOF
- # $TITLE
-
- <p class="timestamp">
- Posted on <time datetime="$DATE">$(LANG="$LANGUAGE" date -d "$DATE" "$DATE_FMT")</time>
- </p>
- EOF
- )"
- REAL_EOF
- ;;
- *)
- printf 'Bad value for TYPE: "%s".\n\n' \
- "$TYPE" >&2
- usage >&2
- exit 2
- ;;
-esac