[Top][All Lists]

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

Re: [BUG] man(7) page not showing footer

From: G. Branden Robinson
Subject: Re: [BUG] man(7) page not showing footer
Date: Wed, 2 Nov 2022 03:30:18 -0500

At 2022-11-02T01:16:12-0500, G. Branden Robinson wrote:
> That isn't confirmed yet, but after also seeing the problem in
> filesystems(5), slabinfo(5), and utmp(5), that's the way my nose hairs
> are blowing.

Guess I should break out the trimmers; disabling the abbreviation logic
did not remedy the problem.

Nevertheless I found it after further sniffing.  I have now undergone a
rite of passage that many writers of *roff macro packages experience:
stumbling over the landmine of end-of-input trap page-ejection behavior.

This bug did not affect groff man(7) in 1.22.4; that isn't too much of a
surprise because I rewrote continuous rendering support afterward.  I
_think_ the bug was latent in groff 1.22.4 mdoc(7), but I am not
positive because headers and footers generally failed to appear in
continuous rendering mode in that release for that package.  Regardless,
it's certainly present in groff Git master on Savannah now.  But, not
long ago I ported over groff man(7)'s continuous rendering handling to
our mdoc(7), replacing the method it had been using--I don't know if I
exposed the bug or merely created it.

Rest assured, I have regression tests for this for both packages now.

Please apply the attached patch to your groff sources.  This will be in
my next push.

I have tried to explain the bug and fix clearly in comments and the
ChangeLog but the problem is in one of the more damnably subtle aspects
of formatter; witness the lengthy comment (that I recast), introduced by
Werner way back in 2001.  I welcome suggestions for clarification.

Thank you very much for using the Linux man-pages corpus to help
solidify groff man(7) for release.


Attachment: last-line-blues.diff
Description: Text Data

Attachment: signature.asc
Description: PGP signature

reply via email to

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