Subversion Repositories planix.SVN

Rev

Rev 2 | Blame | Compare with Previous | Last modification | View Log | RSS feed

#!/bin/rc
# Usage: sig key ...
#       prints out function signatures by grepping the manual


*=`{echo $*|tr A-Z a-z|tr -dc 'a-z0-9_ \012'}   # fold case, delete funny chars
if(~ $#* 0){
        echo Usage: sig function ... >/fd/2
        exit 1
}

for (i) {
        files=`{grep -il '[     ]\*?'$i'\(' /sys/man/2/*}
        for(j in $files) {
                {echo .nr LL 20i; sed -n '/^.SH SYNOPSIS/,/^.SH.*DESCR/p'  $j } |
                        nroff -man |
                        sed '
                                :a
                                /,$/ {
                                        N
                                        s/\n//
                                }
                                ta
                                s/[     ]+/ /g' |
                        grep -i -e '[   *]'$i'\(' | sed 's/^[ +]/       /'
        }
}

exit 0