#!/bin/sh
#
# sgml2onehtml: sgml2htmlĤ*.htmlҤȤĤˤޤȤƽ
#                                         perl + sed hybrid
#
#                           by ƣ 縲 <skato@venus.dti.ne.jp>
# $Id: sgml2onehtml,v 1.1 2002/02/16 20:33:05 makeinu Exp $
#
# ˡsgml2onehtml file[.sgml]
#
# ˡΥեκǸΡ­פ⤪ɤߤ
#

# ѿHEADERϥإåǤŬѹƻȤäƤ
# \n ϲԤǤ
# {TITLE}ʬsgml
# <title>ۤ
# Ρ֤ۤפ֤ޤ

HEADER="<HTML>\n<HEAD>\n<TITLE>\n{TITLE}\n</TITLE>\n</HEAD>\n
<BODY BGCOLOR=white>\n<A HREF="index.html">[Back]</A>\n<HR>\n"


TMPFILE="./sgml2onehtml$$.tmp"

###

# usage
usage () {
    echo "Usage: sgml2onehtml file[.sgml]"
    exit 1
}

# check argc
if [ "$#" != 1 ]
then
        usage
fi

# ĥҤФϤơե͡$FILE˳Ǽ
FILE=${1%.sgml}

# sgml2htmlư롣ޤѴǤʤäϽλ
if [ -f $FILE.sgml ]
then
    sgml2html $1 || exit 1
else
    echo "sgml2onehtml: file not found"
    exit 1
fi

#
# Header
#

# $TITLEˤ*.sgml<title>hogeʬȴƤ
TITLE=`sed -n 's/<title>\(.*\)$/\1/p' $FILE.sgml`
echo -e $HEADER |\
sed -e "s/{TITLE}/$TITLE/" | nkf -j > $TMPFILE

#
# ʸ
#

# 10ʬʾե뤬Τ
if [ -f $FILE-10.html ]           # 100ϰʾsgmlͤϤ
then                              # ¤Ƥ
    FILELIST="$FILE.html $FILE-[0-9].html $FILE-[0-9][0-9].html"
else
    FILELIST="$FILE.html $FILE-[0-9].html"
fi

# ƥե뤫perlʸϤڤơsedܼ(^^;)
for i in $FILELIST
do
    perl -e '@stack = <>; while(shift(@stack) !~ /<HR>/){}; # إåν
	    $#stack = $#stack - 5;                          # եåν
	    print @stack;' $i |\
    sed -e "s/\"$FILE-\([0-9]\+\).html\"/\"#s\1\"/" \
	    -e 's/\".*html\(#s.*\)\"/\"\1\"/' >> $TMPFILE
done

#
# footerߤѤƤ
#
echo -e "sgml2onehtml conversion date: " `date` "\n</BODY>\n</HTML>" >>$TMPFILE

# sgml2htmlä*.htmlơTMPFILE$1.htmlrename
rm -f $FILELIST
mv -f $TMPFILE $FILE.html

exit 0


# »
# sgml2html, sed, perl, nkf ѥ̤äȤˤʤưޤ
# եƱǥ쥯ȥǼ¹ԤʤȤ֤Ȥޤ
# ɤʤʽ򤷤ƤΤƺԤ̤Τʤ
# 虜ǤʤperlsedξȤäƤ뤫ȤȡϤsedǽ
# Ƥɡʸڤν˸³򴶤ơperlǽ
# ľǤ¾ʬ⤽ΤperlˤǤĤˤǤ
# Ϥ狼ޤ󡣥ХʤɤϸϢȤ줷Ǥ
# ¤Ϥͳˤɤ


# history
# ܼΥ󥯤Զ硢10Ϥ򤳤ɥȤǤԶ
# Ȥꤢ99ϤޤǤOKȤ°פн򤷤
# BashShell variableJISݻǤʤ褦Shell ScriptEUC
# ơnkfѴƽϤ뤳ȤǥإåܸȤäʸ
# 衣perlεư⤳ΥեǤ褦ˤ   1999ǯ213()
# sgml2html۾ｪλΤΥ顼ɲá1999ǯ214()