#! /bin/bash

set -o nounset
set -o errexit

readonly SOURCE=README.md
readonly OUTPUT=docs/documentation.md

readonly START_DOC_TAG="<!-- START documentation -->"
readonly END_DOC_TAG="<!-- END documentation -->"

readonly START_LINKS_TAG="<!-- START links -->"
readonly END_LINKS_TAG="<!-- END links -->"

function escape_regex {
  echo "$1" | sed -e 's/[]\/\!$*.^|[]/\\&/g'
}

function extract {
  sed -n "/^\s*$(escape_regex "$1")\s*$/,/^\s*$(escape_regex "$2")\s*$/p" \
    | sed '$d' \
    | sed -n '2,$p'
}

function main {
  rm -rf $OUTPUT && touch $OUTPUT

  echo "---" >> $OUTPUT
  echo "layout: page" >> $OUTPUT
  echo "title: Documentation" >> $OUTPUT
  echo "permalink: /documentation/" >> $OUTPUT
  echo "---" >> $OUTPUT

  cat $SOURCE | extract "$START_DOC_TAG" "$END_DOC_TAG" >> $OUTPUT
  cat $SOURCE | extract "$START_LINKS_TAG" "$END_LINKS_TAG" >> $OUTPUT
}

main
