groff
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Groff] groff as a backend


From: Larry McVoy
Subject: Re: [Groff] groff as a backend
Date: Wed, 15 Dec 2004 17:38:27 -0800
User-agent: Mutt/1.4.1i

On Tue, Dec 14, 2004 at 11:06:58PM -0500, Larry Kollar wrote:
> 
> Otavio Exel wrote:
> 
> >groff sources are intimidating and I can easily understand if many
> >non-geeks decide to use MsWord instead.
> 
> Anyone who can handle HTML can certainly handle groff.

Indeed.

> >but what I can not understand is why groff is not more widely used as a
> >backend for other document systems. the abscence of a groff backend in
> >Texinfo and Jade are particularly intriguing to me..
> >
> >is there a reason that I'm not aware of?

Side note: I'm about to bitch about the problems I see with roff.  Before
I do that, however, I'd like to point out I use roff all the time, my
company (because of my direction) uses it for all our docs, our website
is written in a roff -ms dialect which is processed w/ a perl script which
produces html, etc.  I'm a huge fan of roff.  So take the following as my
list of things which need to happen to make roff take over the world.
I could be persuaded to fund someone to do the work I'm describing, I 
want roff to be the de facto doc system again.



I think one thing that is missing is a WYSIWIG system which spits out 
roff on the back end.  

Another problem is that the design of the roff suite of tools is a series
of filters.  I.e., pic | eqn | tbl | groff.  The problem with that is that
the earlier stages of the pipeline don't have enough knowledge of the state
of the doc when they are called.  It made sense in the old days when CPU
was expensive but it makes *no* sense today.  It would be much better if
groff invoked a new pic or eqn or whatever process as groff hit the 
.PS/.PE markers.  That way the pic subsystem can know all about the 
current font sizes, for example, and you could have things like

        box fit "foo bar"

work, where work means "make the box fit around the text".

Another problem is that roff is single pass.  This makes widow and orphan
processing pretty much impossible.  It also makes things like table of 
contents be something you have to do outside the system.  

Finally, there is the whole problem of "glitzy".  We need good image and 
color support.  Lots of docs want this.

All that said, roff is still my system of choice.
-- 
---
Larry McVoy                lm at bitmover.com           http://www.bitkeeper.com




reply via email to

[Prev in Thread] Current Thread [Next in Thread]