Path: utzoo!attcan!uunet!cs.utexas.edu!tut.cis.ohio-state.edu!ucbvax!phoenix.cambridge.ac.UK!CET1 From: CET1@phoenix.cambridge.ac.UK (Chris Thompson) Newsgroups: comp.lang.postscript Subject: Re: ^D embedded in PS files Message-ID: Date: 24 May 89 16:56:15 GMT Sender: daemon@ucbvax.BERKELEY.EDU Lines: 32 Glenn Reid writes: > The end-of-file (it isn't always a ^D) is echoed by the printer when > an EOF is read from the input stream. and > I think the EOF is echoed then, by the scanner, rather than after the > "showpage" name has been executed, but I'm not sure of it. In any > case, it is an implementation detail. and much else in the same vein. I suppose it is foolish of me to argue with someone from Adobe about their own software, but I think Glenn is just plain wrong about this. The ^D (EOT) character is sent *from* the printer as part of the server loop, in the finish-off-the-current-job code, before it starts to think about where to get the next job from. Reaching the EOT in the input buffer just causes the scanner (or anyone else reading "currentfile") to see end-of-file (and you can't get past it, at least, not without trickery). Nothing is sent from the printer at this stage. As Glenn points out, if this wasn't the case then the ^D's wouldn't properly delimit the error messages produced by different jobs, and in fact they do. (I suppose I should add: on a LaserWriter, rev 0 or 2; but surely this can't be a matter of different implementations on different printers?) As others have pointed out, it would be unwise to assume that the ^D from the printer meant "I have printed that job perfectly" rather than "I have told you all I am ever going to tell you about that job", but at least it does mean the latter. Chris Thompson JANET: cet1@uk.ac.cam.phx ARPA: cet1%phx.cam.ac.uk@nsfnet-relay.ac.uk