[comp.sources.x] v06i029: xtroff -- postscript previewer for X11, Patch9

moraes@cs.toronto.edu (Mark Moraes) (03/11/90)

Submitted-by: Mark Moraes <moraes@cs.toronto.edu>
Posting-number: Volume 6, Issue 29
Archive-name: xtroff/patch9

[ Note, the previous posting of xpic patch 11 is applicable to the
version of xpic that resides on the R4 contrib tape, which is at
patchlevel 10.  If you already have xpic and/or xtroff at different
patchlevels and need missing patches, mail to moraes@cs.toronto.edu ]

xtroff on the R4 contrib tape was at patchlevel 8 already.

*** /dev/null	Mon Feb 19 23:45:32 1990
--- contrib/clients/xtroff/CHANGES.Pat09	Mon Feb 19 23:08:49 1990
***************
*** 0 ****
--- 1,13 ----
+ - fixes a definition of XawScrollbarSetThumb that changed in R4 so xtroff
+   compiles. Imakefile follows R4 conventions.
+ 
+ - can read from stdin again.
+ 
+ - fix of backward scroll page with "xtroff -full" problem. (from dac@cray.com)
+ 
+ - specification of "unsigned" in dev.h (from dac@cray.com)
+ 
+ - fakes 'z' command from Berkeley ditroff with BSpline instead of Bezier.
+   (from Andreas Stolcke, stolcke@icsib12.Berkeley.EDU)
+ 
+ - Updated README.X11 to reflect R4 reality.
diff -r -c orig/xtroff/patchlevel.h contrib/clients/xtroff/patchlevel.h
*** orig/xtroff/patchlevel.h	Thu Nov 23 22:41:44 1989
--- contrib/clients/xtroff/patchlevel.h	Fri Feb 16 04:01:37 1990
***************
*** 1,2 ****
! #define PATCHLEVEL 8
  
--- 1,2 ----
! #define PATCHLEVEL 9
  
diff -r -c orig/xtroff/CHANGES.Pat07 contrib/clients/xtroff/CHANGES.Pat07
*** orig/xtroff/CHANGES.Pat07	Tue Nov  7 04:07:50 1989
--- contrib/clients/xtroff/CHANGES.Pat07	Mon Feb 19 23:08:48 1990
***************
*** 1,5 ****
- to be released 
- 
  - Minibuf now understands cut, emacs style - by clicking to set the mark
    with the right button. (Also sets selection owner to none, so you can paste
    the cut text into xterm)
--- 1,3 ----
diff -r -c orig/xtroff/CHANGES.Pat08 contrib/clients/xtroff/CHANGES.Pat08
*** orig/xtroff/CHANGES.Pat08	Wed Nov 22 09:22:58 1989
--- contrib/clients/xtroff/CHANGES.Pat08	Mon Feb 19 23:08:48 1990
***************
*** 1,5 ****
- to be released 
- 
  - devX11 added - this is the collating sequence for the ISO fonts
    provided with X11.  This allows the use of these fonts when the
    devpsc fonts are not available.  Some troff characters are not
--- 1,3 ----
diff -r -c orig/xtroff/Imakefile contrib/clients/xtroff/Imakefile
*** orig/xtroff/Imakefile	Thu Nov 23 23:45:34 1989
--- contrib/clients/xtroff/Imakefile	Sun Feb 18 13:23:12 1990
***************
*** 61,66 ****
--- 61,67 ----
          WINDOWS = xwindows	/* Source file for windows code */
          XTSTUFF = XtStuff/libXtStuff.a
  LOCAL_LIBRARIES = $(XTSTUFF) $(XAWLIB) $(XMULIB) $(XTOOLLIB) $(XLIB)
+         DEPLIBS = $(XTSTUFF) $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXLIB)
   SUNTROFF_FONTS = $(FONTDIR)/xtroff
     DEV_INCLUDES = -I./XtStuff
      DEV_SUBDIRS = XtStuff # devX11
***************
*** 179,185 ****
  
  Makefiles::
  	@echo 'Making Makefiles in devpsc...' ; \
! 	$(MAKE) subdirMakefiles NEWTOP=../ MAKEFILE_SUBDIR=devpsc
  
  devpsc::
  		cd devpsc; make $(MFLAGS) MAKEDEV=$(MAKEDEV) \
--- 180,191 ----
  
  Makefiles::
  	@echo 'Making Makefiles in devpsc...' ; \
! 	case "$(TOP)" in \
! 	/?*) newtop= upprefix= ;; \
! 	*) upprefix=../ ;; \
! 	esac; \
! 	$(MAKE) subdirMakefiles UPPREFIX=$$upprefix NEWTOP=$$newtop \
! 	MAKEFILE_SUBDIR=devpsc NEW_CURRENT_DIR=$(CURRENT_DIR)/devpsc
  
  devpsc::
  		cd devpsc; make $(MFLAGS) MAKEDEV=$(MAKEDEV) \
diff -r -c orig/xtroff/README contrib/clients/xtroff/README
*** orig/xtroff/README	Tue Nov  7 03:03:05 1989
--- contrib/clients/xtroff/README	Mon Feb 19 23:08:51 1990
***************
*** 50,56 ****
  resembling suntroff.tr (i.e ASCII commands) then it's ditroff - if you
  get a binary file, or the dreaded 'Typesetter busy', then you've got
  the venerable old troff that produces stuff for a CAT typesetter. If
! you have the old troff, and do not want to, or cannot purchase DWB from
  AT&T or your computer vendor, you may be interested in looking at a
  package called psroff that was posted to the comp.sources.unix USENET
  newsgroup in Volume 20, Issue 33, sometime in 1989. You can get this
--- 50,56 ----
  resembling suntroff.tr (i.e ASCII commands) then it's ditroff - if you
  get a binary file, or the dreaded 'Typesetter busy', then you've got
  the venerable old troff that produces stuff for a CAT typesetter. If
! you have the old troff, and do not want to or cannot purchase DWB from
  AT&T or your computer vendor, you may be interested in looking at a
  package called psroff that was posted to the comp.sources.unix USENET
  newsgroup in Volume 20, Issue 33, sometime in 1989. You can get this
diff -r -c orig/xtroff/README.X11 contrib/clients/xtroff/README.X11
*** orig/xtroff/README.X11	Wed Nov 22 09:22:59 1989
--- contrib/clients/xtroff/README.X11	Mon Feb 19 23:13:58 1990
***************
*** 1,27 ****
   X11 Notes:  
   ---------- 
  	Most of the install details are the same as for Suntroff. The
! major difference is fonts. The Makefile is hopefully intelligent enough
  that you can just change the few constants at the top and make install.
  Wherever the other README refers to suntools, read 'the X Windows
  System Version 11' and wherever it refers to suntroff, read xtroff.
  
! 	If you are running on a system with dirent.h instead of sys/dir.h,
! you should uncomment the -DDIRENT from the XtStuff Makefile.
  
  	With X11R4, the capability was added to xtroff to handle the
! X11 fonts directly.  The ISO collating sequence is assumed and 
! xtroff uses the X11 fonts if the devpsc fonts are not available.
! A direct mapping from the [di]troff font name to the X11 font
! name is supplied as an app-defaults resource.  Thanks to
! Keith Packard (keith@expo.lcs.mit.edu) for the ideas and code taken
! from his xditview.
  
! 	With X11R3 are included a nice set of Adobe, Bitstream and DEC
! fonts at 75dpi and 100dpi resolutions. These are in ISO collating
! format - we use these fonts to create a new set in PostScript collating
! sequence. The code and scripts to do this were provided by Dave
! Cahlander <dac@earth.cray.com>. Thanks Dave.
  
  	For X Windows releases before X11R3, the only fonts I know of that
  are widely available and come in a range of sizes useful for documents are
--- 1,46 ----
   X11 Notes:  
   ---------- 
  	Most of the install details are the same as for Suntroff. The
! major difference is fonts. The Imakefile is hopefully intelligent enough
  that you can just change the few constants at the top and make install.
  Wherever the other README refers to suntools, read 'the X Windows
  System Version 11' and wherever it refers to suntroff, read xtroff.
+ There are a few porting notes below.
  
! 	The usual sequence to build xtroff (with X11R4) is
  
+ 	xmkmf 		# generates Makefile from Imakefile. For R3, try ximake
+ 	make Makefiles	# generates subdirectory Makefiles
+ 	make clean
+ 	make depend
+ 	make
+ 
+ 	If you need the devpsc and devX11 files (you can get away without
+ them if you have a devpsc from TranScript installed), then making those is
+ a bit trickier since they need to know where the MIT fonts are.  I use:
+ 
+ 	cd devpsc; make TOP=/src/X.V11R4/mit MAKEDEV=/local/bin/makedev
+ 
+ where /src/X.V11R4/mit is the official X source directory.  There may be
+ a better way.
+ 
+ 	If you are running on a system with dirent.h instead of
+ sys/dir.h, you should uncomment the -DDIRENT from the XtStuff
+ Imakefile.  This is automaticaly set if SystemV is defined.
+ 
  	With X11R4, the capability was added to xtroff to handle the
! X11 fonts directly.  The ISO collating sequence is assumed and xtroff
! uses the X11 fonts if the devpsc fonts are not available.  A direct
! mapping from the [di]troff font name to the X11 font name is supplied
! as an app-defaults resource.  Thanks to Keith Packard
! (keith@expo.lcs.mit.edu) for the ideas and code taken from his
! xditview.
  
! 	From X11R3 onwards, the MIT X distribution includes a nice set
! of Adobe, Bitstream and DEC fonts at 75dpi and 100dpi resolutions.
! These are in ISO collating format - we use these fonts to create a new
! set in PostScript collating sequence. The code and scripts to do this
! were provided by Dave Cahlander <dac@earth.cray.com>. Thanks Dave.
  
  	For X Windows releases before X11R3, the only fonts I know of that
  are widely available and come in a range of sizes useful for documents are
***************
*** 40,51 ****
  demands for lower case fontnames only. If you have any other fonts,
  you might want to see font.c!
  
- 	The Makefile is set to generate the xfonts on install if it is not
- making suntroff. (WARNING: Since Sun has broken 'make' in SunOS4.0 so it
- cannot process rules with more than one period in the suffix, you'll have to
- get GNU make or some other public domain make, or make from BSD4.[23] if you
- have source, or something to make xfonts under SunOS4.0. Complain to Sun)
- 
  	Most of the X11 code is in the file xwindows.c - chalk up a
  point for the X Toolkit. There are a few lines added to draw.c for
  drawing functions, and to font.c to load fonts. 
--- 59,64 ----
***************
*** 52,73 ****
  
  	The directory XtStuff contains the fixed menu widget, based on
  fixes made by Dana Chee to a piece of code that was in the R2
! contrib/menus directory. There's a window widget that used to be with
! Chris Peterson's xman.
  
  	For the record, this is a straight port of the SunTools
! previewer suntroff which can still be made by simply defining the
! previewer in the Makefile to be suntroff. Credit goes to the authors
! of suntroff for an excellent troff previewer - I only did an X
! interface.
  
! 	xtroff has been tested on Sun3-{50,60,110}s and Sun4-110s with bw2
! and cg4 displays, running SunOS3.5 and 4.0. It works reasonably well on
! these. It has also been tested briefly on a monochrome Vaxstation 3200
! running Ultrix 2.2 and works, but runs *SLOWLY* presumably because of slow
! 'mi' code in the uVax server for dealing with large pixmaps. One day,
! someone will hopefully fix the server. It has allegedly been seen to compile
! and run on Silicon Graphics Iris4d machines and on a Cray running Unicos.
  
  	In the process of porting it to X11, and improving it to work
  under newer versions of X, it is quite possible that the suntools
--- 65,87 ----
  
  	The directory XtStuff contains the fixed menu widget, based on
  fixes made by Dana Chee to a piece of code that was in the R2
! contrib/menus directory. When compiling with R4, the Xaw SimpleMenu is
! used instead. There's also a window widget that used to be with Chris
! Peterson's xman.
  
  	For the record, this is a straight port of the SunTools
! previewer suntroff which one might still be able to compile by simply
! defining SUNTROFF in the Imakefile. Credit goes to the authors of
! suntroff for an excellent troff previewer - I only did an X interface.
  
! 	xtroff has been tested on Sun3-{50,60,110}s and Sun4-110s with
! bw2 and cg4 displays, running SunOS3.5 and 4.0 under MIT X.V11R3 and
! R4. It works reasonably well on these. It has also been tested briefly
! on a monochrome Vaxstation 3200 running Ultrix 2.2 and MIT X.V11R2 and
! works, but runs *SLOWLY* presumably because of slow 'mi' code in the
! uVax server for dealing with large pixmaps. One day, someone will
! hopefully fix the server. It has allegedly been seen to compile and
! run on Silicon Graphics Iris4d machines and on a Cray running Unicos.
  
  	In the process of porting it to X11, and improving it to work
  under newer versions of X, it is quite possible that the suntools
***************
*** 74,84 ****
  version has been broken.  It was last seen working at patchlevel 6,
  thanks to fixes from Andreas Stolcke <stolcke@icsib2.Berkeley.EDU>.
  
- NOTE: xwindows.c uses vfprintf() and vsprintf() for the error routines. If
- your machine does not have them, either scream at your manufacturer, or get
- a copy from bsd-sources/src/lib/libc/stdio/v*printf.c. They're freely
- redistributable.
- 
  The following are X Windows specific files:
  
  	xwindows.c		This file contains all the X11 interface.
--- 88,93 ----
***************
*** 124,129 ****
--- 133,159 ----
  	util.c			minibuffer for text interaction and message
  	ask.c			display.
  	
+ 
+ PORTING NOTES: 
+ 
+ - xwindows.c uses vfprintf() and vsprintf() for the error routines. If
+ your machine does not have them, either scream at your manufacturer,
+ or get a copy from bsd-sources/src/lib/libc/stdio/v*printf.c. They're
+ freely redistributable.
+ 
+ - If you are using the xfonts scheme and devpsc.* fontnames, first make
+ sure the fonts are where your X server can see them, (you may need to do
+ 	xset fp rehash
+ to make this happen. Try
+ 	xlsfonts 'devpsc*'
+ to see that they exist, try 
+ 	xfd devpsc.r.10
+ to make sure they can be loaded.
+ 
+ - I have only tested xtroff with Real X -- the one that comes from MIT.
+ It should work with vendor supplied X distributions (DECWindows,
+ OpenWindows, Motif, etc., but if it doesn't complain to your vendor,
+ not me)
  
                                          Mark Moraes
                                          Computer Systems Research Institute,
diff -r -c orig/xtroff/dev.h contrib/clients/xtroff/dev.h
*** orig/xtroff/dev.h	Fri Apr 24 09:11:10 1987
--- contrib/clients/xtroff/dev.h	Fri Feb 16 04:01:45 1990
***************
*** 21,27 ****
  };
  
  struct Font {		/* characteristics of a font */
! 	char	nwfont;		/* number of width entries for this font */
  	char	specfont;	/* 1 == special font */
  	char	ligfont;	/* 1 == ligatures exist on this font */
  	char	spare1;		/* unused for now */
--- 21,27 ----
  };
  
  struct Font {		/* characteristics of a font */
! 	unsigned char nwfont;	/* number of width entries for this font */
  	char	specfont;	/* 1 == special font */
  	char	ligfont;	/* 1 == ligatures exist on this font */
  	char	spare1;		/* unused for now */
diff -r -c orig/xtroff/parse.c contrib/clients/xtroff/parse.c
*** orig/xtroff/parse.c	Tue Nov  7 04:04:48 1989
--- contrib/clients/xtroff/parse.c	Fri Feb 16 04:23:28 1990
***************
*** 292,297 ****
--- 292,301 ----
  	case 'g':				/* gremlin spline */
  		DrawSpline(buf+1, 0);
  		break;
+ 	case 'z':				/* Bezier curve */
+ 		warning("substituting B-spline for Bezier curve %s", buf);
+ 		DrawSpline(buf+1,1);
+ 		break;
  	case 't':				/* line thickness */
  		sscanf(buf+1, "%d", &n);
  		drawthick(n); 
diff -r -c orig/xtroff/xwindows.c contrib/clients/xtroff/xwindows.c
*** orig/xtroff/xwindows.c	Fri Dec 15 12:02:58 1989
--- contrib/clients/xtroff/xwindows.c	Fri Feb 16 04:01:44 1990
***************
*** 31,37 ****
  # include	<X11/Xaw/Form.h>
  # include	<X11/Xaw/SimpleMenu.h>
  # include	<X11/Xaw/SmeBSB.h>
! # define XtScrollBarSetThumb XawScrollBarSetThumb
  #else
  # include 	<X11/Scroll.h>
  # include	<X11/Form.h>
--- 31,37 ----
  # include	<X11/Xaw/Form.h>
  # include	<X11/Xaw/SimpleMenu.h>
  # include	<X11/Xaw/SmeBSB.h>
! # define XtScrollBarSetThumb XawScrollbarSetThumb
  #else
  # include 	<X11/Scroll.h>
  # include	<X11/Form.h>
***************
*** 745,751 ****
  				ViewTop = 0;
  				break;
  			}
! 		} else if (ViewTop < 0) {
  			ViewTop = 0;
  		}
  	} while (--PageRequest > 0);
--- 745,752 ----
  				ViewTop = 0;
  				break;
  			}
! 		}
! 		if (ViewTop < 0) {
  			ViewTop = 0;
  		}
  	} while (--PageRequest > 0);
***************
*** 1051,1068 ****
  		if (!ProcessPid){		/* First the Child */
  			int	y;
  
! 			/*
! 			 * reopen stdin as /dev/null just to make sure xtroff
! 			 * doesn't hang waiting if the user was silly and
! 			 * forgot to specify a filename, so the command
! 			 * expects input from stdin.
! 			 */
! 			(void) close(0);
! 			y = open("/dev/null", O_RDONLY, 0);
! 			if (y == -1) {
! 				(void) fprintf(stderr,
! 				 "Someone stole /dev/null\n");
! 				/* not fatal */
  			}
  			(void) close(1);
  			/* make stdout the pipe to the parent */
--- 1052,1072 ----
  		if (!ProcessPid){		/* First the Child */
  			int	y;
  
! 			if (CommandMode) {
! 				/* 
! 				 * reopen stdin as /dev/null just to
! 				 * make sure xtroff doesn't hang waiting
! 				 * if the user forgot to specify a
! 				 * filename, so the command expects
! 				 * input from stdin.
! 				 */
! 				(void) close(0);
! 				y = open("/dev/null", O_RDONLY, 0);
! 				if (y == -1) {
! 					(void) fprintf(stderr,
! 					 "Someone stole /dev/null\n");
! 					/* not fatal */
! 				}
  			}
  			(void) close(1);
  			/* make stdout the pipe to the parent */
***************
*** 1074,1083 ****
  				(void) close(y);
  
  			if (!CommandMode) {
! 				(void) execl("/bin/cat", (char *) 0);
! 				(void) fprintf(stderr,
! 				 "Someone stole /bin/cat - help!\n");
! 				exit(1);
  			} else {
  				system(p);
  				exit(0);
--- 1078,1093 ----
  				(void) close(y);
  
  			if (!CommandMode) {
! 				/*
! 				 * forking a process just to do this
! 				 * seems a bit excessive, I know....
! 				 */
! 				char buf[1024];
! 				int nbytes;
! 				
! 				while((nbytes = read(0, buf, sizeof(buf))) > 0)
! 					(void) write(1, buf, nbytes);
! 				exit(0);
  			} else {
  				system(p);
  				exit(0);
diff -r -c orig/xtroff/XtStuff/Imakefile contrib/clients/xtroff/XtStuff/Imakefile
*** orig/xtroff/XtStuff/Imakefile	Sun Nov 19 10:52:12 1989
--- contrib/clients/xtroff/XtStuff/Imakefile	Mon Feb 19 23:08:50 1990
***************
*** 1,6 ****
      STD_DEFINES = LibraryDefines
      CDEBUGFLAGS = LibraryCDebugFlags
!         DEFINES = -DXWINDOWS # -DDIRENT
         INCLUDES = -I. -I$(XLIBSRC) \
  		-I$(TOP) -I$(TOP)/X11
     INSTALLFLAGS = $(INSTINCFLAGS)
--- 1,9 ----
      STD_DEFINES = LibraryDefines
      CDEBUGFLAGS = LibraryCDebugFlags
! #ifdef SystemV
!          DIRENT = -DDIRENT
! #endif
!         DEFINES = -DXWINDOWS $(DIRENT)
         INCLUDES = -I. -I$(XLIBSRC) \
  		-I$(TOP) -I$(TOP)/X11
     INSTALLFLAGS = $(INSTINCFLAGS)
diff -r -c orig/xtroff/devpsc/Imakefile contrib/clients/xtroff/devpsc/Imakefile
*** orig/xtroff/devpsc/Imakefile	Mon Nov 27 10:38:21 1989
--- contrib/clients/xtroff/devpsc/Imakefile	Sun Feb 18 13:27:04 1990
***************
*** 43,78 ****
  	rm -f [A-Z] [A-Z][A-Z] *.aux
  
  R:	${XFONTDIR}/timR24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  I:	${XFONTDIR}/timI24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  B:	${XFONTDIR}/timB24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  BI:	${XFONTDIR}/timBI24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  S:	${XFONTDIR}/symb24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  C:	${XFONTDIR}/courR24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  CB:	${XFONTDIR}/courB24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  CD:	${XFONTDIR}/courBO24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  CO:	${XFONTDIR}/courO24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  H:	${XFONTDIR}/helvR24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  HB:	${XFONTDIR}/helvB24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  HD:	${XFONTDIR}/helvBO24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  HO:	${XFONTDIR}/helvO24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  N:	${XFONTDIR}/ncenR24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  NB:	${XFONTDIR}/ncenB24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  ND:	${XFONTDIR}/ncenBI24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  NI:	${XFONTDIR}/ncenI24.bdf
! 	awk -f ${XFONTDIR}/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
--- 43,78 ----
  	rm -f [A-Z] [A-Z][A-Z] *.aux
  
  R:	${XFONTDIR}/timR24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  I:	${XFONTDIR}/timI24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  B:	${XFONTDIR}/timB24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  BI:	${XFONTDIR}/timBI24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  S:	${XFONTDIR}/symb24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  C:	${XFONTDIR}/courR24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  CB:	${XFONTDIR}/courB24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  CD:	${XFONTDIR}/courBO24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  CO:	${XFONTDIR}/courO24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  H:	${XFONTDIR}/helvR24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  HB:	${XFONTDIR}/helvB24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  HD:	${XFONTDIR}/helvBO24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  HO:	${XFONTDIR}/helvO24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  N:	${XFONTDIR}/ncenR24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  NB:	${XFONTDIR}/ncenB24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  ND:	${XFONTDIR}/ncenBI24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
  NI:	${XFONTDIR}/ncenI24.bdf
! 	awk -f ../xfonts/adobe.awk $? | awk -f bdfdit.awk ; cat ${TEMPFILES} > $@; mv temp.aux $@.aux; rm ${TEMPFILES}
diff -r -c orig/xtroff/psfd/psfd contrib/clients/xtroff/psfd/psfd
*** orig/xtroff/psfd/psfd	Mon Feb 20 18:52:40 1989
--- contrib/clients/xtroff/psfd/psfd	Sun Feb 18 13:51:19 1990
***************
*** 1,8 ****
  :
! :  psfd - PostScript font display
! :  generate pic drawing from font discription
! :  psfd file | pic | troff
! :
  awk 'BEGIN {
  }
  
--- 1,9 ----
  :
! #
! #  psfd - PostScript font display
! #  generate pic drawing from font discription
! #  psfd file | pic | troff
! #
  awk 'BEGIN {
  }
  

dan
-----------------------------------------------------------
		    O'Reilly && Associates
		argv@sun.com / argv@ora.com
	   632 Petaluma Ave, Sebastopol, CA 95472 
     800-338-NUTS, in CA: 800-533-NUTS, FAX 707-829-0104
    Opinions expressed reflect those of the author only.