175584SruThis is grn from the Berkeley ditroff distribution.  It has no
275584SruAT&T code and is therefore freely distributable.
375584Sru
475584SruTim Theisen <tim@cs.wisc.edu>
575584Sru
675584Sru=====================================================================
775584Sru
875584SruThis is the modified code for the groff.  It uses the different
975584Srudevxxx format that is ascii rather than binary as in the
1075584SruBerkeley distribution.  Since groff does not have the \Ds option
1175584Srufor line drawing (dotted, dashed, etc.), this version includes
1275584Sruthe routines for drawing curves and arcs, so it does not use the
1375584Sru\D~, \Da nor \Dc.  Although also included in here is a routine
1475584Srufor drawing the optional gremlin style curves, it is not used
1575584Srubecause the gremlin editor uses the conventional spline
1675584Srualgorithm.  The Berkeley grn has the choice of different
1775584Srustipples.  Here, only different shades of gray will be painted
1875584Srudepending on the gremlin file.  It is possible to upgrade this at
19104862Srua later time.  (Daniel Senderowicz <daniel@synchrods.com> 12/28/99)
2075584Sru
2175584Sru=====================================================================
2275584Sru
23104862SruGremlin produces three types of curves: B-Splines, interpolated
24104862Srucurves and Bezier.  As the original Berkeley grn, now groff grn
25104862Sruwill honor B-Splines and interpolated curves.  Bezier curves will
26104862Srube printed as B-Splines.  (Daniel Senderowicz <daniel@synchrods.com>
27104862Sru10/04/02)
28104862Sru
29104862Sru=====================================================================
30104862Sru
3175584SruIt has been further modified by Werner Lemberg <wl@gnu.org> to fit
3275584Srubetter into the groff package.
3375584Sru
3475584Sru  . Replaced Makefile with Makefile.sub.
3575584Sru
3675584Sru  . Removed dev.h since it is unused.
3775584Sru
3875584Sru  . Renamed grn.1 to grn.man; this man page has been extensively
3975584Sru    revised.
4075584Sru
4175584Sru  . Used error() and fatal() from libgroff for all source files.
4275584Sru
43114402Sru  . Renamed *.c to *.cpp; updates as needed for C++ (prototypes, proper
4475584Sru    casts, standard header files etc).  Heavy formatting.
4575584Sru
46114402Sru  . main.cpp:
4775584Sru
4875584Sru      Using groff's default values instead of DEVDIR, DEFAULTDEV, PRINTER,
4975584Sru      TYPESETTER, and GREMLIB.
5075584Sru
5175584Sru      `res' is now an integer.
5275584Sru
5375584Sru      Added `-C' command flag (for compatibility mode) as with other
5475584Sru      preprocessors.
5575584Sru
5675584Sru      Added `-F' and `-v' option (similar to troff).
5775584Sru
5875584Sru      Renamed `-L' option to `-M' for consistence.
5975584Sru
6075584Sru      Removed `-P' option.
6175584Sru
6275584Sru      Using font::load_desc() for scanning DESC files.
6375584Sru
6475584Sru      Removed SYSV-specific code.
6575584Sru
6675584Sru      Using macro_path.open_file() for getting gremlin graphic files.
6775584Sru
6875584Sru      Added usage().
69