annotate help/generate.sh @ 571:012ba1b83328

Show cancel button with progress bar only when running an operation that it makes sense to cancel (we don't really want people cancelling e.g. initial folder scan because it would leave things in an inconsistent state)
author Chris Cannam
date Thu, 01 Mar 2012 22:53:54 +0000
parents 21aa41b62c3a
children
rev   line source
Chris@494 1 #!/bin/bash
Chris@494 2
Chris@494 3 css='<link rel="stylesheet" type="text/css" href="help.css"/>'
Chris@494 4
Chris@494 5 echo "$css" > topics.html
Chris@494 6 cat intro.html >> topics.html
Chris@494 7
Chris@494 8 pcat=""
Chris@494 9
Chris@494 10 for x in topics/*.txt ; do
Chris@494 11
Chris@494 12 b=`basename "$x" .txt`
Chris@494 13 out="a-$b.html"
Chris@494 14
Chris@494 15 echo "$css" > "$out"
Chris@494 16
Chris@494 17 cat "$x" | perl -e '
Chris@494 18 $_ = join "", <>;
Chris@494 19 s/^{[\w\s]+}//s;
Chris@494 20 s/^(\s*)([A-Za-z][^\n]*)/$1<h2>$2<\/h2>/s;
Chris@494 21 s/^\s+\*\s+(.*)$/<ul><li>$1<\/li><\/ul>/gm;
Chris@496 22 s/\*([\w"][^\*]+)\*/<b>$1<\/b>/gs;
Chris@494 23 s/"([\w])/&ldquo;$1/gs;
Chris@494 24 s/([\w])"/$1&rdquo;/gs;
Chris@495 25 s/^\#([^\s]+)$/<center><img src="images\/$1.png"><\/center>/gm;
Chris@494 26 s/\n-+\n/\n/gs;
Chris@494 27 s/\n\n([^\n])/\n\n<p>$1/gs;
Chris@494 28 s/^\n*([^<\n])/\n<p>$1/gs;
Chris@494 29 s/^\n*(<[^p])/\n<p>$1/gs;
Chris@494 30 s/([^\n])\n\n/$1<\/p>\n\n/gs;
Chris@494 31 s/([^>\n])\n*$/$1<\/p>\n\n/gs;
Chris@496 32 s/\[\[([^\|]*)\|([^\]]*)\]\]/<a href="a-$1.html">$2<\/a>/gs;
Chris@494 33 s/\[\[([^\|\]]*)\]\]/<a href="$1">$1<\/a>/gs;
Chris@494 34 s/\b_([^_]+)_\b/<i>$1<\/i>/gs;
Chris@494 35 s/@(\w[^@]+)@/<code>$1<\/code>/gs;
Chris@494 36 s/---/&mdash;/gs;
Chris@494 37 s/--/&ndash;/gs;
Chris@494 38 s/<p><h2>/<h2>/gs;
Chris@494 39 s/<\/h2><\/p>/<\/h2>/gs;
Chris@494 40 print;
Chris@494 41 ' >> "$out"
Chris@494 42
Chris@494 43 category=`grep '^{.*}$' "$x" | sed 's/[{}]//g'`
Chris@494 44
Chris@494 45 if [ "$category" != "$pcat" ]; then
Chris@494 46 echo "<h3>$category</h3>" >> topics.html
Chris@495 47 pcat="$category"
Chris@494 48 fi
Chris@494 49
Chris@494 50 grep '<h2>' "$out" | sed "s|<h2>|<p><a href=\"$out\">|" | sed 's/<\/h2>/<\/a><\/p>/' >> topics.html
Chris@494 51
Chris@494 52 done
Chris@494 53