Annotation of researchv10no/cmd/man/man.sh, revision 1.1

1.1     ! root        1: #!/bin/sh
        !             2: set -p
        !             3: PATH=/bin:/usr/bin
        !             4: SOURCE=/usr/man
        !             5: CACHE=/usr/spool/man
        !             6: cmd=-q sec='?*' secn= c=x s=x
        !             7: opt= slow= quick= T=
        !             8: 
        !             9: (cd $CACHE 2>/dev/null) && c=c
        !            10: (cd $SOURCE 2>/dev/null) && s=s
        !            11: 
        !            12: while  case $1 in
        !            13:        [1-9]|10)       sec=$1 secn=$1 ;;
        !            14:        -f)     c=f s=f ;;
        !            15:        -[qw])  cmd=$1 ;;
        !            16:        -[nt])  cmd=$1 ;;
        !            17:        -T*)    T=$1 ;;
        !            18:        -*)     opt="$opt $1" ;;
        !            19:        *)      break
        !            20:        esac
        !            21: do     shift
        !            22: done
        !            23: 
        !            24: csc=$c$s$cmd
        !            25: case $csc in
        !            26: ff-q)        cmd=-t ;;
        !            27: xx-?|?x-[nt]) echo man data not available 1>&2; exit ;;        
        !            28: c?-[qw])      cd $CACHE ;;
        !            29: ?s-?)        cd $SOURCE
        !            30: esac
        !            31: 
        !            32: for i
        !            33: do     case $csc in
        !            34:        ff-?)   slow="$slow $i" ;;
        !            35:        *)      fil=`echo man$sec/$i.*`
        !            36:                for j in $fil
        !            37:                do      case $csc$j in
        !            38:                        cs-[qw]*\*)     man -n $secn $i ;;
        !            39:                        *\*)    echo man: $i not found 1>&2 ;;
        !            40:                        cx-[qw]*) quick="$quick $j" ;;
        !            41:                        cs-[qw]*) if newer $SOURCE/$j $j
        !            42:                                then    slow="$slow $SOURCE/$j"
        !            43:                                else    quick="$quick $j"
        !            44:                                fi ;;
        !            45:                        *)      slow="$slow $j"
        !            46:                        esac
        !            47:                done
        !            48:        esac
        !            49: done
        !            50: 
        !            51: case "$slow$quick" in
        !            52: "")    exit
        !            53: esac
        !            54: 
        !            55: #slightly faster than the honest way: doctype
        !            56: typeset() { tbl $slow | ${1}eqn $T | ${1}roff -man $T $opt }
        !            57: teqn() { eqn $* }
        !            58: 
        !            59: case $cmd in
        !            60: -q)    if test -t
        !            61:        then    undln="| ul"
        !            62:        else    undln=
        !            63:        fi
        !            64:        eval '( case "$quick" in
        !            65:                ?*)     cat $quick
        !            66:                esac
        !            67:                case "$slow" in
        !            68:                ?*)     typeset n
        !            69:                esac)' $undln  ;;
        !            70: -t)    typeset t ;;
        !            71: -n)    typeset n ;;
        !            72: -w)    echo $quick $slow
        !            73: esac

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.