#!/bin/sh set -euo pipefail usage() { echo 'Usage: snippets FILENAME.adoc' } FILENAME="${1:-}" eval "$(assert-arg -- "$FILENAME" 'FILENAME.adoc')" awk -v BASE="${FILENAME%.adoc}.html" ' /^----$/ { if (!in_block) { file = BASE "." count++ ".txt" print file system("rm -f " file ) } in_block = !in_block next } in_block { print >> file } ' "$FILENAME"