[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Groff] The future redux
From: |
Deri James |
Subject: |
Re: [Groff] The future redux |
Date: |
Wed, 26 Feb 2014 00:53:29 +0000 |
User-agent: |
KMail/4.10.5 (Linux/3.10.28-desktop-1.mga3; KDE/4.10.5; x86_64; ; ) |
I have, so far, kept silent on future direction for groff, since my own use for
groff is probably very rare, so my opinion should not carry much weight. I
use groff as a typesetting engine called from a front end which produces a
troff file which is then passed to groff to produce output. The troff file uses
just the basic troff commands, no macro calls. For this reason I am only
interested in the presentation side of the argument.
I completely agree with the separation of style content and logic, but I do
this in the front end rather than in the troff file. The front end is designed
to produce high quality custom reports, the sort of thing you receive from
your bank showing performance of investments or pension pot, so every
report is different for each person because the investments are different,
and potentially this report may go to thousands of customers, each one
different.
There are many packages in the report production arena, and I know of
many large companies who have discovered that they do not scale well to
large volumes, whereas groff has a linear speed based on the size of the
troff file.
The front end I have written, which sits in front of groff, takes 3 types of
information:-
A csv type file, this is the content, i.e. the data which will appear in the
report,
A template file which specifies the style of the report, and
A program file which is my own report definition language, which supplies
the logic for moving the content to the template.
The template file has similarities to a css file (this was developed before
css came out as a standard), plus a bit of a little known desktop
publishing program for the Acorn Archimedes (Ovation) in the late 80s.
The program file would look quite familiar to anyone who knows "filetab"
(RPL-3 on IBM). This is a decision table based language.
(http://en.wikipedia.org/wiki/Filetab
These three elements are combined to produce a troff file which is then
run through groff.
Since this system is purely intended to produce files for printing (pdf or
postscript) or viewing (pdf locked to prevent editing). There is no semantic
markup required, all I want is a fast engine which handles the typography.
If you are interested in looking at an example of a single page produced
by the front end system using groff there is an example in the tar archive
at:-
http://chuzzlewit.co.uk/Example.tgz
Deri
- [Groff] The future redux, Peter Schaffter, 2014/02/24
- Re: [Groff] The future redux, Walter Alejandro Iglesias, 2014/02/25
- Re: [Groff] The future redux, Ralph Corderoy, 2014/02/25
- Re: [Groff] The future redux, Mike Bianchi, 2014/02/25
- Re: [Groff] The future redux, Walter Alejandro Iglesias, 2014/02/25
- Re: [Groff] The future redux, Ingo Schwarze, 2014/02/25
Re: [Groff] The future redux, Eric S. Raymond, 2014/02/25
Re: [Groff] The future redux, James K. Lowden, 2014/02/25