12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- #!/bin/rc
- # Print a listing of an object, often a dictionary or an array. Something
- # like ==, but the output is often easier to read and closer to PostScript
- # that can be sent back through the interpreter.
- #
- POSTLIB=/sys/lib/postscript/prologues
- PROLOGUE=$POSTLIB/grabit.ps
- COPYFILE=
- RECURSIVE=true
- OMITNAMES='/Grabit /GrabitDict'
- NONCONFORMING='%!PS'
- ENDPROLOG='%%EndProlog'
- BEGINSETUP='%%BeginSetup'
- ENDSETUP='%%EndSetup'
- TRAILER='%%Trailer'
- SETUP=GrabitSetup
- while (! ~ $#* 0 && ~ $1 -*) {
- switch ($1) {
- case -d; RECURSIVE=false
- case -o; shift; OMITNAMES=$OMITNAMES' '$1
- case -o*; OMITNAMES=$OMITNAMES' '`{echo $1 | sed s/-o//}
- case -C; shift; COPYFILE=$COPYFILE' '$1
- case -C*; COPYFILE=$COPYFILE' '`{echo $1 | sed s/-C//}
- case -L; shift; PROLOGUE=$1
- case -L*; PROLOGUE=`{echo $1 | sed s/-L//}
- case --;
- case -*; echo $0: illegal option $1 >[1=2]; exit 1
- }
- shift
- done
- echo $NONCONFORMING
- cat $PROLOGUE
- echo $ENDPROLOG
- echo $BEGINSETUP
- if (~ $COPYFILE '') COPYFILE=/dev/null
- cat $COPYFILE
- echo 'GrabitDict begin'
- echo '/recursive '$RECURSIVE' def'
- echo mark
- for (i in $OMITNAMES) {
- switch ($i) {
- case /*; echo $i
- case ?*; echo /$i
- }
- }
- echo GrabitSetup
- echo end
- echo $ENDSETUP
- for (i) echo $i Grabit
|