tmanweb - plan9port - [fork] Plan 9 from user space
 (HTM) git clone git://src.adamsgaard.dk/plan9port
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
       tmanweb (1675B)
       ---
            1 #!/usr/local/plan9/bin/rc
            2 
            3 verbose=no
            4 if(~ $1 -v)
            5         verbose=yes
            6 
            7 fn silencer {
            8         switch($verbose){
            9         case no
           10                 cat >/dev/null
           11         case yes
           12                 cat
           13         }
           14 }
           15 
           16 . 9.rc
           17 cd $PLAN9/man
           18 # rm -f */*.html
           19 
           20 for(i in */INDEX) @{
           21         n=`{echo $i | sed 's/man//;s!/INDEX!!'}
           22         cat $PLAN9/dist/manindextop.html | sed 's/NNN/'$n'/g'
           23         cd `{basename -d $i}
           24         # complicated sort order: want 9p.3, 9p-cmdbuf.3, 9pclient.3
           25         for (j in `{ls [a-z0-9:]*.[0-9]* >[2]/dev/null | sed 's/[.\-]/ &/g;s/\./ &/g' | sort | tr -d ' '}){
           26                 n=`{grep '^\.TH' $j | sed 1q | awk '{print $3}'}
           27                 name=`{echo $j | sed 's/\..*//'}
           28                 if(~ $name 0intro)
           29                         name=intro
           30                 if not{
           31                         echo '<tr height=1><td>'
           32                         echo '<tr height=1><td colspan=2 bgcolor=#cccccc>'
           33                         echo '<tr height=1><td>'
           34                 }
           35                 if(~ $#name 0)
           36                         name=XXX-name-$j-XXX
           37                 if(~ $#n 0)
           38                         n=XXX-n-$j-XXX
           39                 echo -n '<tr><td valign=top><a href="'$name'.html">'$name'('$n')</a><td>'
           40                 sed -n '
           41                 /SH *NAM/,/SH/{
           42                         /SH/d
           43                         s/, *$//
           44                         ty
           45                         :y
           46                         s/ *\\*-.*/&/
           47                         tx
           48                         s/ *\\\(mi.*/&/
           49                         tx
           50                         s/\n\\n/\
           51 /g
           52                         p
           53                 }
           54                 /SH *DES/q
           55                 d
           56                 :x
           57                 /^$/d
           58                 s/\n\n/\
           59 /g
           60                 s/\\-/\&ndash;/
           61                 p
           62                 q' $j
           63         }
           64         cat $PLAN9/dist/manindexbottom.html
           65 } >$i.html && mv $i.html `{echo $i.html | tr A-Z a-z}
           66 
           67 for (i in */[~.]*.[0-9]*){
           68         j=`{echo $i | 9 sed 's/\..*//'}
           69         p=`{basename $j}
           70         d=`{basename -d $j}
           71         if(~ $p 0intro)
           72                 p=intro
           73         if(~ $verbose yes) echo $d/$p
           74         troff -manhtml $i | troff2html -t 'Plan 9 from User Space'>/tmp/manweb.html |[2] silencer
           75         {
           76                 sed '/<!-- TRAILER -->/q' /tmp/manweb.html
           77                 cat $PLAN9/dist/mantrailer.html
           78                 sed -n '/<!-- TRAILER -->/,$p' /tmp/manweb.html
           79         } | $PLAN9/dist/addsrclinks >$d/$p.html
           80 }
           81 rm /tmp/manweb.html
           82 cd $PLAN9/dist
           83 ./fixurls $PLAN9/man/man*/*.html