libreccm-legacy/ccm-gen-aplaws/doc/docs-stuff/RHL7-db2indexed-html

128 lines
3.5 KiB
Bash
Executable File

#! /bin/sh
RH_STYLESHEET=`dirname $0`/stylesheets/RHL7/redhat-html.dsl
HTML_STYLESHEET=/usr/lib/sgml/stylesheets/nwalsh-modular/test/docbook.css
ADMON_GRAPHICS=/usr/lib/sgml/stylesheets/nwalsh-modular/images/*.gif
FINAL_INDEX=generated-index.sgml
output=db2html-dir
TMPDIR=DBTOHTML_OUTPUT_DIR$$
INDEXFILE=INDEX$$
TMPSTYLE=`dirname $0`/stylesheets/STYLE$$
HTM_EXTENSIONS=0
# Process any options...
while getopts ":3" opt; do
case $opt in
3 ) HTM_EXTENSIONS=1 ;;
\? ) echo "Usage: `basename $0` [options] [filename.sgml]" >&2
echo "Options:" >&2
echo " -3 -- create HTML output with .htm file extensions" >&2
exit 1 ;;
esac
done
shift $(($OPTIND - 1))
if [ $# -gt 2 ] || [ $# -lt 1 ]
then
echo "Usage: `basename $0` [options] [filename.sgml]" >&2
echo "Options:" >&2
echo " -3 -- create HTML output with .htm file extensions" >&2
exit 1
fi
if [ $# -eq 1 ]
then
if [ ! -r $1 ]
then
echo Cannot read \"$1\". Exiting. >&2
exit 1
fi
if echo $1 | egrep -i '\.sgml$|\.sgm$' >/dev/null 2>&1
then
# now make sure that the output directory is always a subdirectory
# of the current directory
input_file=`basename $1`
output="`echo $input_file | sed 's,\.sgml$,,;s,\.sgm$,,'`"
fi
fi
if [ $HTM_EXTENSIONS -eq 1 ]
then
# We need to take the normal stylesheet, and hack a temporary version to use...
cat $RH_STYLESHEET | sed 's/^[ ]*"\.html"[ ]*)[ ]*$/ ".htm")/' > $TMPSTYLE
# Point to the new temporary stylesheet...
RH_STYLESHEET=$TMPSTYLE
fi
mkdir $TMPDIR
SAVE_PWD=`pwd`
if [ $1 = `basename $1` ]; then
echo Running jade...
RH_STYLESHEET="`echo $RH_STYLESHEET | sed 's,^\([^/]\),\.\./\1,'`"
(cd $TMPDIR; jade -t sgml -ihtml -d ${RH_STYLESHEET} -V html-index ../$1; cd $SAVE_PWD)
# Generate the index, fixing up the problem of bogus empty closing tags (</>)...
for index_script in /usr/bin/collateindex.pl /usr/lib/sgml/stylesheets/nwalsh-modular/bin/collateindex.pl
do
if [ -f $index_script ]; then
echo Indexing...
perl $index_script -g -o $FINAL_INDEX $TMPDIR/HTML.index
fi
done
# Not sure if these are still needed; when we first tried collateindex, it threw "</>"
# in the generated index in certain cases...
cat $FINAL_INDEX | sed 's,^[ ]*</>[ ]*$,,' > $INDEXFILE
mv -f $INDEXFILE $FINAL_INDEX
# We should now have a good index; clean up and rerun...
echo Rerunning jade...
rm -rf $TMPDIR
mkdir $TMPDIR
(cd $TMPDIR; jade -t sgml -ihtml -d ${RH_STYLESHEET} ../$1; cd $SAVE_PWD)
else
# Yeah, I know it's ugly, but...
echo Rerun this script from the directory containing your SGML... >&2
exit 1
fi
if [ -d ${output}.junk ]
then
/bin/rm -rf ${output}.junk
fi
if [ -d ${output} ]
then
mv $output ${output}.junk
fi
echo "Copying cascading stylesheet and admon graphics..."
cp ${HTML_STYLESHEET} ${TMPDIR}/
mkdir ${TMPDIR}/stylesheet-images
cp ${ADMON_GRAPHICS} ${TMPDIR}/stylesheet-images
echo Moving figures and cleaning up random stuff...
if [ -d figs/ ]
then
tar cf - figs/ | (cd $TMPDIR; tar xf -)
find $TMPDIR/figs/ -type d -name "CVS"|xargs rm -rf
find $TMPDIR/figs/ -type f -name "*eps"|xargs rm -f
find $TMPDIR/figs/ -type d -name ".xvpics"|xargs rm -rf
find $TMPDIR/figs/ -type d -empty|xargs rm -rf
fi
rm -f $TMPSTYLE
mv ${TMPDIR} $output
rm -rf $TMPDIR
exit 0