[Top][All Lists]

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

Re: [Groff] Typesetting Software

From: Tadziu Hoffmann
Subject: Re: [Groff] Typesetting Software
Date: Thu, 4 Jun 2009 14:22:02 +0200
User-agent: Mutt/1.5.17 (2007-11-01)

> I meant: the functionality is in place. you call latex a few
> times on the same document and than you get the correctly
> formatted document.  With groff this sure does not work
> this way.

Okay, I see what you mean.  However, to be fair to groff as a
typesetting engine, this sort of functionality is not really
the job of groff's core formatter ("gtroff"), but rather of
the macro package ("ms", "mm", "me", etc.; just as the macro
package "LaTeX" is to the formatter "TeX").  And the reason it
currently does not work with the macro packages distributed
with groff is not an issue having to do with the underlying
operating principles of gtroff, but rather simply that nobody
has yet bothered to implement this type of functionality in
those macro packages.

> If so it would be _very_ nice to have the functionality
> integrated in the distribution. my point was: you can do all
> this in latex out of the box, while in groff you can't.

Agreed.  However, if you're curious, I did implement LaTeX-style
cross-referencing in my own experimental groff macro package
The code is not very well documented and the table of contents
mechanism is a hack (I believe it's pretty much equivalent to
what you're doing. I've been meaning to clean this up [*]
but still haven't gotten around to it), but there's a document
describing how it's meant to be used (it's called "test" because
this was the document I used to test the functionality of the
macros during implementation).  Feel free to take ideas and
code from there, I can imagine many people will be grateful if
you'd decide to implement cross-referencing in your favorite
standard macro package for groff.

[*] doing it better is indeed possible, see

> it's not the disk space. for me it's an indication (not proof)
> of unreasonable complexity for the task at hand. it's not
> important but I simply wanted to mention it. and there _are_
> old machines with small disks around, still.

I don't think this is because a few functions are implemented in
a very complex way, but simply because of the *huge* number of
contributed macro packages for an extremely wide range of tasks
(sort of like the situation with emacs).

Regarding small machines, I can positively state that LaTeX
(version 2.09) runs usably on an 8088 with 640k(!) memory and
a 20M(!) harddisk (under DOS).
I'm not sure we can do this with groff (but then again,
we don't really need to).

> but certainly I've never wanted to 'program in postscript'.
> I prefer a bit more high level languages...

Hehe.  Postscript *is* a pretty high-level language, something
of a cross between Lisp and Forth.

reply via email to

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