|
|
Typischerweise sind die Quellen der Manualseiten öffentlich und müssen mit nroff formatiert werden. Diese Version von man geht davon aus, daß die Seiten bereits formatiert sind:
1 #!/bin/sh 2 PATH=/usr/ucb:/bin:/usr/bin 3 4 section=? exit=0 5 6 files= 7 while [ $# -gt 0 ] 8 do case $1 9 in [1-8]) section=$1 10 ;; *) found= 11 for dir in /usr/local/gnu/man \ 12 /usr/local/man /usr/man 13 do f=`echo $dir/cat$section/$1.*` 14 case $f 15 in *\*) 16 ;; *) found="$found $f" 17 esac 18 done 19 if [ -z "$found" ] 20 then 21 echo >&2 "`basename $0`: $1 not found" 22 exit=1 23 else files="$files $found" 24 fi 25 esac 26 shift 27 done 28 29 if [ "$files" ] 30 then cat $files 31 else echo >&2 "usage: `basename $0` [section] page ..." 32 exit=1 33 fi 34 exit $exit
Die Formatierung übernimmt normalerweise das Berkeley-Kommando catman das ungefähr folgendermaßen funktioniert:
1 #!/bin/sh 2 PATH=/usr/ucb:/bin:/usr/bin 3 4 for dir in /usr/local/gnu/man /usr/local/man /usr/man 5 do ( cd $dir 6 for i in 1 2 3 4 5 6 7 8 n l 7 do if [ -d man$i ] 8 then [ -d cat$i ] || mkdir cat$i 9 j=`ls -t cat$i | sed 1q` 10 ( cd man$i 11 case $j 12 in '') j=`ls` 13 ;; *) j=`find . -newer ../cat$i/$j -print` 14 esac 15 for j in $j 16 do nroff -man -u -h $j | 17 uniq | 18 sed 's/^ //' > ../cat$i/$j 19 done 20 ) 21 fi 22 done 23 ) 24 done
|
|
Last modified 03/July/97