#!/usr/local/plan9/bin/rc
verbose=no
if(~ $1 -v)
verbose=yes
fn silencer {
switch($verbose){
case no
cat >/dev/null
case yes
cat
}
}
. 9.rc
cd $PLAN9/man
# rm -f */*.html
for(i in */INDEX) @{
n=`{echo $i | sed 's/man//;s!/INDEX!!'}
cat $PLAN9/dist/manindextop.html | sed 's/NNN/'$n'/g'
cd `{basename -d $i}
# complicated sort order: want 9p.3, 9p-cmdbuf.3, 9pclient.3
for (j in `{ls [a-z0-9:]*.[0-9]* >[2]/dev/null | sed 's/[.\-]/ &/g;s/\./ &/g' | sort | tr -d ' '}){
n=`{grep '^\.TH' $j | sed 1q | awk '{print $3}'}
name=`{echo $j | sed 's/\..*//'}
if(~ $name 0intro)
name=intro
if not{
echo '
'
echo ' |
'
echo ' |
'
}
echo -n ' |
'$name'('$n') | '
sed -n '
/SH *NAM/,/SH/{
/SH/d
s/, *$//
ty
:y
s/ *\\*-.*/&/
tx
s/ *\\\(mi.*/&/
tx
s/\n\\n/\
/g
p
}
/SH *DES/q
d
:x
/^$/d
s/\n\n/\
/g
s/\\-/\–/
p
q' $j
}
cat $PLAN9/dist/manindexbottom.html
} >$i.html && mv $i.html `{echo $i.html | tr A-Z a-z}
for (i in */[~.]*.[0-9]*){
j=`{echo $i | 9 sed 's/\..*//'}
p=`{basename $j}
d=`{basename -d $j}
if(~ $p 0intro)
p=intro
if(~ $verbose yes) echo $d/$p
troff -manhtml $i | troff2html -t 'Plan 9 from User Space'>/tmp/manweb.html |[2] silencer
{
sed '//q' /tmp/manweb.html
cat $PLAN9/dist/mantrailer.html
sed -n '//,$p' /tmp/manweb.html
} >$d/$p.html
}
rm /tmp/manweb.html
cd $PLAN9/dist
./fixurls $PLAN9/man/man*/*.html
|