diff options
author | dakkar <dakkar@thenautilus.net> | 2009-08-18 13:06:08 +0200 |
---|---|---|
committer | dakkar <dakkar@thenautilus.net> | 2009-08-18 13:06:08 +0200 |
commit | e8b95e1d091c812869cc87c483006e3581db2b45 (patch) | |
tree | e21b937bc3bf6c4a265470243722bc1522a4b18a /new-doc | |
parent | moved software snippets into git repositories, fixed links (diff) | |
download | thenautilus-e8b95e1d091c812869cc87c483006e3581db2b45.tar.gz thenautilus-e8b95e1d091c812869cc87c483006e3581db2b45.tar.bz2 thenautilus-e8b95e1d091c812869cc87c483006e3581db2b45.zip |
script to create new pages
also handles creation of new tags
creates "stub" documents and sets up appropriate symlinks
Diffstat (limited to 'new-doc')
-rwxr-xr-x | new-doc | 67 |
1 files changed, 67 insertions, 0 deletions
@@ -0,0 +1,67 @@ +#!/bin/bash + +cd "$(dirname "$0")"/src +shopt -s extglob + +now="$(date +'%F %T')" + +docname="$1" +shift +declare -a tags +tags=("$@") + +if [[ -d "$docname" ]]; then + >&2 echo "\"$docname\" already exists" + exit 1 +fi + +docname="${docname%/}" + +mkdir -p "$docname" + +langs="${LANGS:-en it}" + +for lang in $langs; do + { + cat <<EOF +================ +.. +================ +EOF + echo ':CreationDate: '"$now" + if [[ ${#tags[@]} -gt 0 ]]; then + i=0 + for tag in "${tags[@]}"; do + if [[ $i -eq 0 ]]; then + echo -n ':tags: ' + else + echo -n ' ' + fi + echo "$tag" + i=$(( $i + 1 )) + done + fi + echo '' + } > "$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 + { + echo "$tag" + echo "${tag//?/=}" + echo ':CreationDate: '"$now" + cat <<EOF + +[% PROCESS 'document-listing.tt' %] +EOF + } > "tags/$tag/document.${lang}.rest.txt" + done + ln -s "${docname//+([^\/])/..}"/../templates/document-listing.tt "$docname"/ + ln -s "${docname//+([^\/])/..}"/../templates/du2html.xsl "$docname"/ + fi +done |