BSD 3 development
[unix-history] / usr / man / tocrc
index ea674cd..f2ab172 100755 (executable)
@@ -1,26 +1,20 @@
 tmp=/tmp/toc$$
 tmp=/tmp/toc$$
+troff=vtroff
 trap "rm $tmp ; exit" 2 3 15
 if [ $# -eq 2 ]
 then
        : create toc input file for one section only
 
 trap "rm $tmp ; exit" 2 3 15
 if [ $# -eq 2 ]
 then
        : create toc input file for one section only
 
-       > man0/tocx$1
-       for file in man$1/*.$1*
-       do
-               test -s $file \
-       &&      < $file grep '^\.TH' | grep local >/dev/null \
-       ||      < $file sed -n '1p' | grep '^\.so' >/dev/null \
-       ||      < $file grep '\\-' |
-               sed -n '1p' |
+       ( cd man$1 ; /usr/lib/getNAME -t *.* |
                sed \
                        -e 's/.s-1//g' \
                        -e 's/.s0//g' \
                        -e 's/.s+1//g' \
                        -e 's/  *.-  */: /' \
                sed \
                        -e 's/.s-1//g' \
                        -e 's/.s0//g' \
                        -e 's/.s+1//g' \
                        -e 's/  *.-  */: /' \
-                       -e "s/^/`basename $file | sed 's/\.\([^\.]*\)\$/(\1)/'` /" \
                        -e 's/$/./' \
                        -e 's/$/./' \
-               >> man0/tocx$1
-       done
+                       -e 's/.TH.*     //' \
+               > ../man0/tocx$1
+       )
 else case $1 in
        all )
                :   tocx files for all sections and everything else
 else case $1 in
        all )
                :   tocx files for all sections and everything else
@@ -47,28 +41,30 @@ else case $1 in
                        -e 's/(3m)/(3M)/' \
                        -e 's/(3s)/(3S)/' \
                        -e '/"\."/d' \
                        -e 's/(3m)/(3M)/' \
                        -e 's/(3s)/(3S)/' \
                        -e '/"\."/d' \
-                       man0/tocx? \
-               > cattoc
+                       man0/tocx? man0/cshcmd \
+               > /tmp/cattoc
 
 
-               ptx -r -t -b break -f -w 108 -i ignore cattoc man0/ptxx
-               cd man0; troff -g ptx.in >t.ptx ; cd ..
+               ptx -r -t -b break -f -w 108 -i ignore /tmp/cattoc man0/ptxx
 
                for x in 1 2 3 4 5 6 7 8
                do
 
                for x in 1 2 3 4 5 6 7 8
                do
-                       < man0/tocx$x grep '^intro' >$tmp
+                       < man0/tocx$x /usr/bin/grep '^intro' >$tmp
                                sed \
                                -e '2,${' \
                                -e '/^intro/d' \
                                -e '}' \
                                -e 's/ .*://' \
                                -e 's/.$//' \
                                sed \
                                -e '2,${' \
                                -e '/^intro/d' \
                                -e '}' \
                                -e 's/ .*://' \
                                -e 's/.$//' \
-                               -e 's/(.*) /" "/' \
+                               -e 's/([^)]*) /" "/' \
                                -e 's/.*/.xx "&"/' \
                                -e '/""/d' \
                                $tmp man0/tocx$x \
                        >man0/toc$x
                done
                                -e 's/.*/.xx "&"/' \
                                -e '/""/d' \
                                $tmp man0/tocx$x \
                        >man0/toc$x
                done
-               cd man0; troff -g toc.in >t.toc ; cd ..
+               ;;
+       tr )
+               cd man0; $troff ptx.in ; cd ..
+               cd man0 ; $troff toc.in  ; cd ..
                ;;
        * )
                $0 $1 $1
                ;;
        * )
                $0 $1 $1