plan9/rc/bin/sig

30 lines
528 B
Bash
Executable File

#!/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