#!/bin/sh
#
# $Id$
#
# html2wxhelp Creates a wxhelp.map file from a directory full of html files.
# It takes header lines, extracts the NAME=xxx section for the URL and the help
# id which must be added to the header using _ID_.
#
# It also removes all _ID_ tags from the html sources.
make_map()
{
cat $1 | tr -d '\n' | \
sed "1,$ s/^.*<[hH][0-9]\([^<].*\)<\/[hH][0-9]>.*$/
#__#\1
/g" | \
fgrep \#__\# | tr '
' '\n' | egrep -v '^$' | \
sed "1,$ s/^.*NAME=\"\([^\"]*\)\".*>\([^>]*\)<.*$/$1#\1;\2/g" | \
sed "1,$ s/^\#__\#[^>]*>\([^<>][^<>]*\)<.*$/;\1/g" | \
sed "1,$ s/^\(.*\);\(.*\)_\(.*\)_.*$/\3 \1 ;\2/g" | \
sed "1,$ s/^\([^+-0123456789]\)\(.*\);\(.*\)$/-1 \1\2 ;\3/g" | \
fgrep -v \#__\#
}
remove_ids()
{
cat $1 | \
sed "1,$ s/_[0-9][0-9]*_//g" > tmp$$ && mv tmp$$ $1
# cat $1 | tr -d '\n' | \
# sed "1,$ s/^\(.*<[hH][0-9]\)\([^<_][^_]*\)_.*_*\(<\/[hH][0-9]>.*\)$/\1\2\3
/g" | \
# tr '
' '\n' > tmp$$ \
# && mv tmp$$ $1
}
for i in *.html
do
make_map $i
remove_ids $i
done