From: clewis@ferret.ocunix.on.ca (Chris Lewis)
Subject: Re: psroff - is there a free version available
Originator: clewis@bwdlh118
Keywords: printing,postscript,text formatting
Organization: Me, myself and not them.
Date: Thu, 30 Jul 1992 17:15:14 GMT

In article <Bs72EG.E6q@cck.coventry.ac.uk> ccx009@cch.coventry.ac.uk (Adam Bentley) writes:

>Well, the questions' in the subject, is there a free postscript version of
>nroff/troff knocking about on the net?

It's best that you get your nomenclature straight before asking such a thing.
Because "psroff" isn't a "PostScript troff"...

There's no such thing as a PostScript version of nroff or troff.  Because
both nroff and troff generate a generic format that requires post processors
to convert to the output device you want.   It just so happens that nroff
generates flat ASCII, so that for simple printers you don't need a driver.
For PostScript, you need an ASCII to PostScript driver.

Troff *always* needs a driver (unless you have "old troff", and a
Wang C/A/T phototypesetter ;-).

In order to "troff" to Postscript, you need two things: a troff, and a
suitable driver.

Commercial implementations of troff come with driver.  So if you bought
DWB 2 or 3, or SQTroff or Elan's or Image Network's packages, they come with
troff *and* some number of drivers.  In some cases, each driver is an
optional extra-cost add-on.

As far as "free" troffs, the only full-blown implementation is groff.  Which
comes with PostScript, DVI, tty (ASCII) and X windows drivers.

If you already have a troff, all you need is the appropriate driver.
Adobe sells one called "TranScript".  TranScript contains drivers for
generating PostScript from "old troff" or the new Device Independent Troff.
Adobe supplies shell scripts that connect together their drivers with the
troff you have.  For "old troff", it's called "ptroff", and with new troff,
it's called "psroff"...

There is a "free" package that is called "psroff" (I should know, I wrote it)
which contains drivers for both old and new troff, and will generate PostScript,
HP Laserjet, ditroff, and with auxiliary converters, will drive almost everything
else.  But you *still* need a troff before you can use *this* psroff.

There is a "free" package called "tpscript" which will only generate
PostScript from new troff.

There is a "free" package called "thack" which will only generate
PostScript from old troff.

Incidentally, since you're cross-posting to comp.sys.sequent - I assume
you have a sequent, sequents come with old troff (I think).  In which
case, the "free" options (aside from groff - you'll need GNU g++ too) are
thack and my psroff.

[Both thack and tpscript are considerably more primitive than my psroff.  
Thack in particular.  IMABO ;-)]

[By "free", I mean that you can use them without paying money to anybody.
Not necessarily that they're Public Domain.  psroff, groff and tpscript
aren't PD, and I'm not sure about thack.]

Go read the comp.text FAQ (recently published in news.answers and comp.text)
for more details.  [I should really cross-post it to comp.lang.postscript
too - these questions keep coming up.]
Xref: sparky comp.lang.postscript:4111 comp.sys.sequent:475 comp.unix.misc:3054