From e1feb8f2dcf4e3aea4b05c2c47d084497a5626c3 Mon Sep 17 00:00:00 2001 From: Fred Drake Date: Fri, 28 Aug 1998 20:21:04 +0000 Subject: [PATCH] Support long options that take arguments of the form --option=value as well as --option value. Minor nits cleaned up. --- Doc/tools/mkhowto.sh | 47 ++++++++++++++++++++++++++++++++++++++------ 1 file changed, 41 insertions(+), 6 deletions(-) diff --git a/Doc/tools/mkhowto.sh b/Doc/tools/mkhowto.sh index 69b9b4df55d..6fa83b2006a 100755 --- a/Doc/tools/mkhowto.sh +++ b/Doc/tools/mkhowto.sh @@ -22,10 +22,12 @@ DISCARD_TEMPS=true ICONSERVER='' -L2H_INIT_FILE=$TOPDIR/perl/l2hinit.perl -L2H_AUX_INIT_FILE=/usr/tmp/mkhowto-$LOGNAME-$$.perl +TEMPBASE=mkhowto-$LOGNAME-$$ -LOGFILE=/usr/tmp/mkhowto-$LOGNAME-$$.how +L2H_INIT_FILE=$TOPDIR/perl/l2hinit.perl +L2H_AUX_INIT_FILE=/usr/tmp/$TEMPBASE.perl + +LOGFILE=/usr/tmp/$TEMPBASE.how LOGGING='' usage() { @@ -160,9 +162,23 @@ cleanup() { rm -f $1/IMG* $1/*.pl $1/WARNINGS $1/index.dat $1/modindex.dat } +parse_option() { + # When using a long option with a parameter separated by '=', + # generalize the parsing of the two: + OPTION="$1" + unset VALUE + STUFF=`echo "$1" | grep '^--[-a-zA-Z0-9]*='` + if [ "$STUFF" ] ; then + # This leaves OPTION=--option= and VALUE=value + OPTION=`echo "$STUFF" | sed 's/^\(--[-a-zA-Z0-9]*=\)\(.*\)$/\1/'` + VALUE=`echo "$STUFF" | sed 's/^\(--[-a-zA-Z0-9]*=\)\(.*\)$/\2/'` + fi +} + # figure out what our targets are: while [ "$1" ] ; do - case "$1" in + parse_option "$1" + case "$OPTION" in --all|--al) BUILD_PDF=true BUILD_PS=true @@ -204,10 +220,18 @@ while [ "$1" ] ; do ICONSERVER="$2" shift 2 ;; + --iconserver=*|--iconserve=*|--iconserv=*|--iconser=*|--iconse=*|--icons=*|--icon=*|--ico=*|--ic=*|--i=*) + ICONSERVER="$VALUE" + shift 1 + ;; -a|--address|--addres|--addre|-addr|--add|--ad) ADDRESS="$2" shift 2 ;; + --address=*|--addres=*|--addre=*|-addr=*|--add=*|--ad=*) + ADDRESS="$VALUE" + shift 1 + ;; --a4) TEXINPUTS=$TOPDIR/paper-a4:$TEXINPUTS shift 1 @@ -219,10 +243,18 @@ while [ "$1" ] ; do LINK="$2" shift 2 ;; + --link=*|--lin=*|--li=*) + LINK="$VALUE" + shift 1 + ;; -s|--split|--spli|--spl|--sp|--s) MAX_SPLIT_DEPTH="$2" shift 2 ;; + --split=|--spli=|--spl=|--sp=|--s=) + MAX_SPLIT_DEPTH="$VALUE" + shift 1 + ;; -l|--logging|--loggin|--loggi|--logg|--log|--lo) LOGGING=true shift 1 @@ -244,7 +276,7 @@ while [ "$1" ] ; do break ;; -*) - usage 2 + usage 2 "Unknown option: ${VALUE%=}" ;; *) break;; @@ -277,6 +309,9 @@ fi echo '# auxillary init file for latex2html' >$L2H_AUX_INIT_FILE echo '# generated by mkhowto.sh -- do no edit' >>$L2H_AUX_INIT_FILE +if [ "$ICONSERVER" ] ; then + ICONSERVER="${ICONSERVER%/}" +fi l2hoption ICONSERVER "$ICONSERVER" l2hoption ADDRESS "$ADDRESS" l2hoption MAX_LINK_DEPTH "$MAX_LINK_DEPTH" @@ -285,7 +320,7 @@ echo '1;' >>$L2H_AUX_INIT_FILE for FILE in $@ ; do FILEDIR=`dirname $FILE` - FILE=`basename ${FILE%.tex}` + FILE=`basename $FILE .tex` # # Put the directory the .tex file is in is also the first directory in # TEXINPUTS, to allow files there to override files in the common area.