127960Smckusick#!/bin/sh - 227960Smckusick# 327960Smckusick# Copyright (c) 1980 Regents of the University of California. 427960Smckusick# All rights reserved. The Berkeley software License Agreement 527960Smckusick# specifies the terms and conditions for redistribution. 627960Smckusick# 7*27961Smckusick# @(#)tocrc 5.1 (Berkeley) 05/11/86 827960Smckusick# 927960Smckusicktmp=/tmp/toc$$ 10*27961Smckusicktroff=itroff 1127960Smckusicktrap "rm $tmp ; exit" 2 3 15 12*27961Smckusickif [ $# -eq 2 -a $1 = "3" ] 1327960Smckusickthen 14*27961Smckusick : create toc input files for section 3 only 15*27961Smckusick 16*27961Smckusick ( cd man3 ; for x in 3 3f 3m 3n 3s 3x 3c 17*27961Smckusick do 18*27961Smckusick /usr/lib/getNAME -t *.$x | 19*27961Smckusick sed \ 20*27961Smckusick -e 's/.s-2//g' \ 21*27961Smckusick -e 's/.s-1//g' \ 22*27961Smckusick -e 's/.s0//g' \ 23*27961Smckusick -e 's/.s+1//g' \ 24*27961Smckusick -e 's/ *.- */: /' \ 25*27961Smckusick -e 's/ *$/./' \ 26*27961Smckusick -e 's/.TH.* //' \ 27*27961Smckusick > ../man0/tocx$x 28*27961Smckusick done 29*27961Smckusick ) 30*27961Smckusickelif [ $# -eq 2 ] 31*27961Smckusickthen 3227960Smckusick : create toc input file for one section only 3327960Smckusick 3427960Smckusick ( cd man$1 ; /usr/lib/getNAME -t *.* | 3527960Smckusick sed \ 36*27961Smckusick -e 's/.s-2//g' \ 3727960Smckusick -e 's/.s-1//g' \ 3827960Smckusick -e 's/.s0//g' \ 3927960Smckusick -e 's/.s+1//g' \ 4027960Smckusick -e 's/ *.- */: /' \ 41*27961Smckusick -e 's/ *$/./' \ 4227960Smckusick -e 's/.TH.* //' \ 4327960Smckusick > ../man0/tocx$1 4427960Smckusick ) 4527960Smckusickelse case $1 in 4627960Smckusick all ) 4727960Smckusick : tocx files for all sections and everything else 4827960Smckusick 4927960Smckusick for x in 1 2 3 4 5 6 7 8 5027960Smckusick do 5127960Smckusick ./$0 $x $x 5227960Smckusick done 5327960Smckusick ./$0 t 5427960Smckusick ;; 5527960Smckusick t ) 5627960Smckusick : permuted index and toc files 5727960Smckusick 5827960Smckusick if [ ! -f man0/tocx1 ] 5927960Smckusick then 60*27961Smckusick echo "tocx* files missing; must run tocrc all first" 6127960Smckusick exit 6227960Smckusick fi 6327960Smckusick sed \ 6427960Smckusick -e 's/(1c)/(1C)/' \ 6527960Smckusick -e 's/(1g)/(1G)/' \ 6627960Smckusick -e 's/(3c)/(3C)/' \ 6727960Smckusick -e 's/(3m)/(3M)/' \ 6827960Smckusick -e 's/(3s)/(3S)/' \ 69*27961Smckusick -e 's/(3x)/(3X)/' \ 70*27961Smckusick -e 's/(3f)/(3F)/' \ 71*27961Smckusick -e 's/(4f)/(4F)/' \ 72*27961Smckusick -e 's/(4n)/(4N)/' \ 73*27961Smckusick -e 's/(4p)/(4P)/' \ 74*27961Smckusick -e 's/(8c)/(8C)/' \ 75*27961Smckusick -e 's/(8v)/(8V)/' \ 7627960Smckusick -e '/"\."/d' \ 77*27961Smckusick man0/tocx* man0/cshcmd \ 7827960Smckusick > /tmp/cattoc 7927960Smckusick 8027960Smckusick ptx -r -t -b break -f -w 108 -i man0/ignore \ 8127960Smckusick /tmp/cattoc man0/ptxx 8227960Smckusick 83*27961Smckusick for x in 1 2 3 3f 3m 3n 3s 3x 3c 4 5 6 7 8 8427960Smckusick do 8527960Smckusick < man0/tocx$x grep '^intro' >$tmp 8627960Smckusick sed \ 8727960Smckusick -e '2,${' \ 8827960Smckusick -e '/^intro/d' \ 8927960Smckusick -e '}' \ 9027960Smckusick -e 's/ .*://' \ 9127960Smckusick -e 's/.$//' \ 9227960Smckusick -e 's/([^)]*) /" "/' \ 9327960Smckusick -e 's/.*/.xx "&"/' \ 9427960Smckusick -e '/""/d' \ 9527960Smckusick $tmp man0/tocx$x \ 9627960Smckusick >man0/toc$x 9727960Smckusick done 9827960Smckusick ;; 9927960Smckusick tr ) 10027960Smckusick cd man0; $troff ptx.in ; cd .. 10127960Smckusick cd man0 ; $troff toc.in ; cd .. 10227960Smckusick ;; 10327960Smckusick * ) 10427960Smckusick ./$0 $1 $1 10527960Smckusick ;; 10627960Smckusick esac 10727960Smckusickfi 10827960Smckusickexit 109