groff
[Top][All Lists]
Advanced

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

Re: -ms regression


From: G. Branden Robinson
Subject: Re: -ms regression
Date: Sun, 12 Nov 2023 20:47:26 -0600

Hi Doug,

At 2023-11-12T18:43:29-0500, Douglas McIlroy wrote:
> > I'm still having trouble figuring out what you think is wrong with
> > groff 1.23.0 relative to 1.22.4.
> 
> Stripped to the bone, this example
>         .LP
>         .bp
>         .AB
>         .AE
> is accepted by 1.22.4 but not by 1.23.0. And, yes, I do have a
> previously working -ms document that contains these lines in this
> order, though not contiguously.

Okay.  What's happening here is that your initial `LP` call is telling
ms that your document's main matter starts immediately: that it has no
description/front matter.  Consequently, groff ms regards these `AB` and
`AE` calls as invalid because they're happening only after the document
has begun.

I would argue that my interpretation is consistent with Lesk's
presentation in "Typing Documents on the Unix System" from the Version 7
Volume 2 manual; see attached screenshots.

Now, to be honest, we probably _could_ accept an abstract anywhere in
the main matter...multiples of them, in fact.  But we couldn't promise
that any would appear on the cover sheet produced by `RP`...not once
you've called a sectioning or paragraphing macro not contained within
AB/AE.

A similar question of ambiguity arose with `TL` and `AU` some time ago
on this list--I think.  One could abuse them to get bold and italics,
respectively, and this actually worked.  I don't remember if we found a
historical document that did so, and my searches of 3 groff lists aren't
turning up the discussion.

I did try to reproduce the problem: I get error diagnostics with both
groff 1.22.4 and 1.23.0, and (with the LL register adjusted per earlier
in the thread), they format the same, too.

$ /usr/bin/nroff -rLL=65n -ms EXPERIMENTS/doug-abstract.ms | cat -s > 
doug.1224.out
EXPERIMENTS/doug-abstract.ms:5: macro error: AB is not allowed after first AB, 
LP, PP, IP, SH or NH
EXPERIMENTS/doug-abstract.ms:10: macro error: AE without AB
$ nroff -rLL=65n -ms EXPERIMENTS/doug-abstract.ms | cat -s > doug.1230.out
s.tmac:EXPERIMENTS/doug-abstract.ms:5: error: .AB is not allowed after first 
.AB, .LP, .PP, .IP, .SH or .NH
s.tmac:EXPERIMENTS/doug-abstract.ms:10: error: .AE without .AB
$ cmp doug.12*out && echo same
same

So I guess we should figure out (1) why your input isn't producing error
messages with your groff 1.22.4 installation and (2) whether the output
being produced is actually different between your 1.22.4 and 1.23.0
installations.

Source attached.  (That's 3 attachments total that I should not forget.)

Regards,
Branden

Attachment: lesk-ms-front-matter-1.png
Description: PNG image

Attachment: lesk-ms-front-matter-2.png
Description: PNG image

Attachment: doug-abstract.ms
Description: Troff MS-macros document

Attachment: signature.asc
Description: PGP signature


reply via email to

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