#!/bin/bash cd "$(dirname "$0")"/src if [[ $# -eq 0 ]]; then cat < ... The will be taken relative to $(pwd) Non-existent tags will be created EOF exit 1 fi shopt -s extglob now="$(TZ=UTC date +'%F %T')" force=0 if [[ "$1" == "-f" ]]; then force=1 shift fi docname="$1" shift declare -a tags tags=("$@") if [[ -d "$docname" && "$force" -ne 1 ]]; then >&2 echo "\"$docname\" already exists" exit 1 fi docname="${docname%/}" mkdir -p "$docname" langs="${LANGS:-en it}" for lang in $langs; do { cat < "$docname/document.${lang}.rest.txt" done ln -s "${docname//+([^\/])/..}"/../templates/du2html.xsl "$docname"/ for tag in "${tags[@]}"; do if [[ ! -d "tags/$tag" ]]; then mkdir -p "tags/$tag" for lang in $langs; do { cat < "tags/$tag/document.${lang}.rest.tt" { cat < "tags/$tag/feed.${lang}.tt" done for f in document-listing.tt du2html.xsl fillFeed.xsl base-feed.tt; do ln -s "${tag//+([^\/])/../..}"/../templates/"$f" "tags/$tag/" done fi done