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