#!/bin/rc
rfork e
if(! test -d /n/sources/patch){
rfork n
9fs sources
}
pref=''
cd /n/sources/patch || {
echo 'can''t cd /n/sources/patch' >[2=1]
exit
}
if(~ $1 saved sorry applied undecided){
pref=$1^'/'
shift
}
if(~ $#* 0)
*=(`{if(~ $pref *?*) cd $pref; ls -t | grep -v '^(saved|sorry|applied|undecided)$'})
trunc=(sed 5q)
if(~ $#* 1)
trunc=cat
{
for(i in $*){
i=$pref^$i
if(test -f $i/origls)
cat $i/origls | awk '{$NF="'$i'"; print}'
if not
ls -ld $i
if(patch/okay $i){
if(test -r $i/email)
echo from `{cat $i/email}
cat $i/files | awk '{print " " $1}'
cat $i/readme | sed 's/^/ /' | $trunc
if(test -f $i/notes){
echo
cat $i/notes
}
}
if not
echo ' 'bad patch: $status >[2=1]
echo
}
} >/tmp/patchtmp.$pid
cat /tmp/patchtmp.$pid
rm -f /tmp/patchtmp.$pid
|