groff
[Top][All Lists]
Advanced

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

[Groff] Re: once more hdtbl


From: Larry Kollar
Subject: [Groff] Re: once more hdtbl
Date: Thu, 4 Feb 2010 12:18:23 -0500


Joachim Walsdorff wrote:

thanks for spending your time to improve hdtbl. It's a good idea to seperate hdtbl- and example stuff into hdmisc.tmac respectively common.roff. But some little things now seem to be wrong.

1) In fonts_x.in und fonts_n.in:
.so examples/common.roff
is missing.

Fixed in attached patch, please test.

2) I would remove line 87 in Makefile.sub to prevent common.roff from beeing deleted by make clean.

I'm not too good with anything beyond basic Makefiles. Werner, can you verify that this is the right fix?

3) In common.roff the traps for makros HM and BM are missing:
.wh 0 HM und .wh 0-1.5i BM

4) Also the initialization for t*HM nd t*BM (running title, running footer):
.ds t*HM //arbitrary text for pageheader, except on the first page//\"
.ds t*BM //arbitrary text for pagefooter, except on the last page/\ \n[%]/\"

Fixed.

5) initialization of registers s and v in hdmisc.tmac is lost (necessary for proper work of macro pv):
.nr s \n[.ps] and .nr v \n[.v]
Also registers l, p and o should be set, for example:
.nr l \n[.l], .nr p \n[.p] and .nr o \n[.o]

I assumed that .pv was the right way to initialize these. I've renamed them to t*s etc. and set them to the global *roff values in hdtbl.tmac for the sake of convenience.

6) In common.roff the line .mso hdtbl.tmac must be placed at the beginning (or before the refence to pv).

Fixed.

7) Macro EM and .em EM should remain in hdmisc.tmac.

I renamed EM to t*EM in hdmisc.tmac, and re-defined EM in common.roff to turn off the footer and call t*EM. To make the "Missing .ETB" message a little more helpful, I also defined t*FN and t*LN in .TBL to capture the last call to TBL so the user can easily find the last table.

Larry, furthermore no initialization is necessary before creating tables! And in groff_hdtbl.man should be described only hdtbl specific things and not utility macros like pv and other. pv is used by hdtbl, but it is useful independent from hdtbl, like others as P1, PN, getarg, index, SP, DI, time... And the naming convention is simply, that only hdtbl specific/exclusive names are preceeded by t*. (Most of the other names are historic, taken from an elder macropackage which run under AIX-troff; therefore the one and two character names.)

Yes, several of those macros are generally useful, but I agree with Werner -- we can tackle that later.

-- Larry

Attachment: hdtbl.patch
Description: Binary data


reply via email to

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