105 lines · 2.8 KB · rc
RawDownload
#!/bin/rc# Formatted dump of encoded characters in one or more PostScript fonts.# Arguments should be PostScript font names or the word all, which dumps# all ROM and disk based fonts.# POSTLIB=/sys/lib/postscript/prologuesPROLOGUE=$POSTLIB/printfont.ps OPTIONS=''COPYFILE=''MODE=portraitFONTENCODING=Default NONCONFORMING='%!PS'ENDPROLOG='%%EndProlog'BEGINSETUP='%%BeginSetup'ENDSETUP='%%EndSetup'TRAILER='%%Trailer' SETUP=setup while (! ~ $#* 0 && ~ $1 -*) {	switch ($1) {	case -a;  shift; OPTIONS=$OPTIONS' /axescount $1 def'	case -a*; OPTIONS=$OPTIONS' /axescount '`{echo $1 | sed s/-a//}' def' 	case -b;  shift; OPTIONS=$OPTIONS' /radix '$1' def'	case -b*; OPTIONS=$OPTIONS' /radix '`{echo $1 | sed s/-b//}' def' 	case -c;  shift; OPTIONS=$OPTIONS' /#copies '$1' store'	case -c*; OPTIONS=$OPTIONS' /#copies '`{echo $1 | sed s/-c//}' store' 	case -f;  shift; OPTIONS=$OPTIONS' /labelfont /'$1' def'	case -f*; OPTIONS=$OPTIONS' /labelfont /'`{echo $1 | sed s/-f//}' def' 	case -g;  shift; OPTIONS=$OPTIONS' /graynotdef '$1' def'	case -g*; OPTIONS=$OPTIONS' /graynotdef '`{echo $1 | sed s/-g//}' def' 	case -p;  shift; MODE=$1	case -p*; MODE=`{echo $1 | sed s/-p//} 	case -q;  OPTIONS=$OPTIONS' /longnames false def /charwidth false def' 	case -m;  shift; OPTIONS=$OPTIONS' /magnification '$1' def'	case -m*; OPTIONS=$OPTIONS' /magnification '`{echo $1 | sed s/-m//}' def' 	case -v;  OPTIONS=$OPTIONS' /longnames true def /charwidth true def' 	case -w;  shift; OPTIONS=$OPTIONS' /linewidth '$1' def'	case -w*; OPTIONS=$OPTIONS' /linewidth '`{echo $1 | sed s/-w//}' def' 	case -x;  shift; OPTIONS=$OPTIONS' /xoffset '$1' def'	case -x*; OPTIONS=$OPTIONS' /xoffset '`{echo $1 | sed s/-x//}' def' 	case -y;  shift; OPTIONS=$OPTIONS' /yoffset '$1' def'	case -y*; OPTIONS=$OPTIONS' /yoffset '`{echo $1 | sed s/-y//}' def' 	case -z;  shift; OPTIONS=$OPTIONS' /zerocell '$1' def'	case -z*; OPTIONS=$OPTIONS' /zerocell '`{echo $1 | sed s/-z//}' def' 	case -C;  shift; COPYFILE=$COPYFILE' '$1	case -C*; COPYFILE=$COPYFILE' '`{echo $1 | sed s/-C//} 	case -E;  shift; FONTENCODING=$1	case -E*; FONTENCODING=`{echo $1 | sed s/-E//} 	case -L;  shift; PROLOGUE=$1	case -L*; PROLOGUE=`{echo $1 | sed s/-L//} 	case -*;  echo $0:' illegal option '$1 >[1=2]; exit 1	}	shift} switch ($MODE) {case l*; OPTIONS=$OPTIONS' /landscape true def'case *;	OPTIONS=$OPTIONS' /landscape false def'} echo $NONCONFORMINGcat $PROLOGUEecho $ENDPROLOGecho $BEGINSETUPif (~ $#COPYFILE 0 || ~ $COPYFILE '') COPYFILE=/dev/nullcat $COPYFILEecho $OPTIONS switch ($FONTENCODING) {case /*; cat $FONTENCODINGcase ?*; cat $POSTLIB^/$FONTENCODING^.enc >[2]/dev/null} echo $SETUPecho $ENDSETUP for (i) {	switch ($i) {	case all; echo AllFonts	case /*;  echo $i' PrintFont'	case ?*;  echo /$i' PrintFont'	}} echo $TRAILER