aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/extras/rman/contrib/rman_html_split
diff options
context:
space:
mode:
Diffstat (limited to 'nx-X11/extras/rman/contrib/rman_html_split')
-rw-r--r--nx-X11/extras/rman/contrib/rman_html_split324
1 files changed, 0 insertions, 324 deletions
diff --git a/nx-X11/extras/rman/contrib/rman_html_split b/nx-X11/extras/rman/contrib/rman_html_split
deleted file mode 100644
index aafb023c5..000000000
--- a/nx-X11/extras/rman/contrib/rman_html_split
+++ /dev/null
@@ -1,324 +0,0 @@
-#!/bin/sh
-#
-# Script to break up rman html output into separate sections in a directory.
-#
-# Author: Robert Moniot <moniot@fordham.edu>
-# Date: 4 Aug 1998
-#
-
-version="rman_html_split V1.0 (c) 1998 Robert K. Moniot"
-
- # Usage function prints synopsis and exits
-Usage(){
- myname=`echo $0 | sed -e 's,.*/,,'`
-cat <<EOF
-
-Usage: $myname [ options ] [ file ]
-
-Breaks up rman HTML output in file (or standard input) into separate
-section files, placing them into a directory.
-
-Options:
- -d | --html-dir dir Place output into directory dir (default = html).
- -m | --merge # Merge sections 0 thru # (default 1) into one file.
- -t | --toc-first Link index.html to table of contents instead
- of to sect0.html.
- -T | --title "title" Use "title" as title on top of each page
- instead of rman's title. "title" may be empty.
- -h | --help Print synopsis and exit.
- -V | --version Print version information and exit.
-EOF
- exit 0
-}
-
- # Version function prints version number and exits
-Version(){
- echo "$version"
- exit 0
-}
-
- # This function puts out header needed by all but 1st page.
-do_header(){
-cat <<EOF
-<HTML>
-<HEAD>
-<TITLE>$*</TITLE>
-</HEAD>
-<BODY>
-EOF
-do_title
-}
-
- # This function puts out the title with name of manpage
-do_title(){
- if [ -n "$title" ]
- then
- echo "<H2>$title</H2>"
- fi
-}
-
- # This function puts out ref to table of contents that
- # follows header for all but 1st and toc page.
-do_href_toc(){
-cat <<EOF
-<A HREF="toc.html">Table of Contents</A><P>
-EOF
-}
-
- # This function puts out ref to previous section
-do_href_prev(){
- echo "<P>Previous: <A HREF=\"$1.html\">$2</A><HR><P>"
-}
-
- # This function puts out footer needed by all but last page.
-do_footer(){
-cat <<EOF
-</BODY></HTML>
-EOF
-}
-
- # This function changes the trailing NAME anchor
- # of a section into an href to the next section.
- # The first edit is for sections. The second edit
- # handles the toc anchor, which has no href and so
- # is missed by the first edit.
-do_href_next(){
- sed -e '$s,^.*<A NAME="\([^"]*\)" HREF=[^>]*>\([^<]*\).*$,<P><HR><P>Next: <A HREF="\1.html">\2</A>,' \
- -e '$s,<A NAME="\(toc[^"]*\)",Next: <A HREF="\1.html",'
-}
-
- # This function adapts internal refs from one-big-file
- # form into multi-file format.
- # First edit changes "#tocn" into "toc.html#tocn"
- # Second edit changes "#sectn" into "sectn.html#sectn"
- # Third edit changes "#toc" into "toc.html"
-change_hrefs(){
- sed -e 's,HREF="#toc\([0-9][0-9]*\)",HREF="toc.html#toc\1",g' \
- -e 's,HREF="#sect\([0-9][0-9]*\)",HREF="sect\1.html#sect\1",g' \
- -e 's,HREF="#\(toc\)",HREF="\1.html",g'
-}
-
-
-# Execution begins here.
-
- # Process the command-line options.
-htmldir="html"
-mergesect="1"
-
-while [ $# != 0 ]
-do
- case $1 in
-
- -d | --html-dir)
- shift
- if [ $# != 0 ]
- then
- htmldir="$1"
- shift
- fi
- ;;
-
- -m | --merge)
- shift
- if [ $# != 0 ]
- then
- mergesect="$1"
- shift
- fi
- case $mergesect in
- [0-9])
- ;;
- *)
- echo "ERROR: merge section must be a digit from 0 to 9."
- Usage
- ;;
- esac
- ;;
-
- -t | --toc-first)
- shift
- tocfirst="t"
- ;;
-
- -T | --title)
- shift
- if [ $# != 0 ]
- then
- title="$1"
- shift
- fi
- if [ -z "$title" ] # If title is the null string, set notitle
- then
- notitle="t"
- fi
- ;;
-
- -h | --help)
- Usage
- ;;
-
- -V | --version)
- Version
- ;;
-
- # Unrecognized flag.
- -*)
- echo "Unrecognized option: $1"
- Usage
- ;;
-
- # Non-flag: go to process file.
- *)
- break
- ;;
- esac
-done
-
- # At this point we should have at most one
- # argument, the file name. Check it.
-if [ $# -gt 1 ]
-then
- Usage
-fi
-
-if [ $# = 1 ]
-then
- if [ ! -r "$1" ]
- then
- echo "ERROR: Cannot open file $1."
- exit 1
- fi
-fi
-
- # Filter the input (file arg or stdin) thru a sed script
- # that fixes cases where an anchor for a section has
- # had its section title split across two or more lines.
- # Put the result in a tmp file so it can be re-read.
-
-filename="/tmp/rman_html_split_$$.html"
-trap "rm -f $filename" 0
-sed -e ':top' \
- -e '/^<H[1-9]><A NAME="sect.*[^>]$/N' \
- -e '/^<LI><A NAME="toc.*[^>]$/N' \
- -e 's/\n/ /' \
- -e 't top' $1 > $filename
-
- # If user did not supply title, get title for top of
- # each page from rman-generated <TITLE> line. If user
- # gave a blank title then leave it blank.
-if [ -z "$title" -a -z "$notitle" ]
-then
- title=`sed -e '/^<TITLE>/q' $filename |
- sed -n -e 's,^<TITLE>\([^<]*\).*$,\1,p'`
-fi
-
- # Get a list of all the sections. Separate it into a
- # list of merged sections and a list of all other sections.
- # Merged sects are combined and get special treatment besides.
-allsects=`sed -n 's,^.*<A NAME="\(sect[0-9][0-9]*\)".*$,\1,p' $filename`
-
-mergesects=`echo $allsects | \
- awk '{for(i=1; i<=NF && i<'"$mergesect"+2'; i++) print \$i;}'`
-
-sectlist=`echo $allsects |
- awk '{for(i='"$mergesect"'+2; i<=NF; i++) print \$i;}'`
-
-
-# This little bit, copied from GNU configure, sets ac_n and ac_c such
-# that echo $ac_n "stuff $ac_c" yields "stuff " w/o following newline.
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
- # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
- if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
- ac_n= ac_c='
-' ac_t=' '
- else
- ac_n=-n ac_c= ac_t=
- fi
-else
- ac_n= ac_c='\c' ac_t=
-fi
-
- # Create html directory if it does not exist.
-if [ -d $htmldir ]
-then
- echo "Re-using directory $htmldir."
-else
- echo "Creating directory $htmldir..."
- if mkdir $htmldir
- then
- true
- else
- echo "Failed!"
- exit 1
- fi
-fi
-
-echo "Creating section pages..."
-
- # Produce index page. It is special, since it combines
- # merged sections and uses the rman-generated header.
-nextsect=`echo $sectlist | awk '{print $1;}'`
-echo $ac_n $mergesects "$ac_c"
-(do_title ;
- sed -n -e "1,/^<H[23]><A NAME=\"$nextsect\"/p" $filename | \
- do_href_next | \
- change_hrefs ;
- do_footer) > $htmldir/sect0.html
-
- # Produce pages for all other sections except toc.
-prevsect="sect$mergesect"
-prevtext=`sed -n 's,^<H[23]><A NAME="'$prevsect'" HREF="#toc[0-9][0-9]*">\([^<]*\).*$,\1,p' $filename | sed -e 's/ *$//'`
-for sect in $sectlist;
-do
- echo $ac_n "$sect $ac_c"
- headtext=`sed -n 's,^<H[23]><A NAME="'$sect'" HREF="#toc[0-9][0-9]*">\([^<]*\).*$,\1,p' $filename | sed -e 's/ *$//'`
- (do_header $headtext ;
- do_href_toc ;
- do_href_prev "$prevsect" "$prevtext" ;
- sed -n -e '/<A NAME="'$sect'"/,/<A NAME=/p' $filename |
- do_href_next |
- change_hrefs ;
- do_footer) > $htmldir/$sect.html
- prevsect="$sect"
- prevtext="$headtext"
-done
-
-
- # Produce table of contents
-echo "toc"
-(do_header Table of Contents ;
- sed -n -e '/<A NAME="toc">/,$p' $filename | \
- change_hrefs ;
-) > $htmldir/toc.html
-
-
- # Finally, make sure the symlinks index.html and
- # sect1.html -> sect0.html are in place, and if not,
- # create them. If --tocfirst is not specified, then
- # link index.html to section 0, otherwise link it to
- # index.html
-
-echo "Doing symlinks..."
-cd $htmldir
-
-rm -f index.html
-if [ -z "$tocfirst" ]
-then
- echo "Linking index.html -> sect0.html"
- ln -s sect0.html index.html
-else
- echo "Linking index.html -> toc.html"
- ln -s toc.html index.html
-fi
-
-for sect in $mergesects
-do
- if [ "$sect" != "sect0" ]
- then
- echo "Linking $sect.html -> sect0.html"
- rm -f $sect.html
- ln -fs sect0.html $sect.html
- fi
-done
-
-echo "Done."