[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: groff now undoing .ad settings after .IP
From: |
Russ Allbery |
Subject: |
Re: groff now undoing .ad settings after .IP |
Date: |
Fri, 15 Mar 2024 12:29:36 -0700 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
"G. Branden Robinson" <g.branden.robinson@gmail.com> writes:
> Can you name me a misbehaving perlpod(1)-generated page? I'll check it
> out.
Yeah, pod2man(1) itself will do it on a Debian system with recent groff.
You'll see justification switch from ragged right to full in the body of
the first option documented in OPTIONS.
> Perhaps what I really needed here was:
Aha, yes, I was wondering if you could just save and restore the
adjustment rather than having to set it to the AD register.
> A long time for sure. In Solaris _10_ troff's tmac.an, which has a
> GitHub repo,[1] `TH` has a relict ".if n .na"--that is, it's commented
> out. But for how long it had been commented out, I have no idea. And
> sure enough, SSHing to a Solaris 10 box and "man ls" tells me that
> adjustment to both margins is on.
> [Continues poking around, in non-publicly available sources...]
> Ah. Same commented out request in the same tmac.an macro in...
> Drum roll, please...
> SunOS 4 (1988).
> Same thing in SunOS 3.5, SunOS 3.2, and SunOS 2.0 (1982!).
> So as with many decisions James Clark made with groff, he was aiming at
> straight-down-the-line Sun compatibility. Mystery solved.
Must have been some other implementation where I ran into this, then. I
think at the time I was testing on a pile of different commercial UNIXes.
Hm, I tracked down the commit message where I changed from ".if n .na" in
the preamble to ".if n .ad l" after .TH, and the comment claims it was for
groff.
* lib/Pod/Man.pm (guesswork): Recognize more uses of hyphens in
regular English text and allow them to be regular hyphens.
(preamble): Turn off hyphenation and, for nroff, justification
after the .TH macro since that's where groff turns them on.
* t/basic.t: Update for the new preamble.
* t/filehandle.t: Likewise.
* t/man.t: Likewise, and test the new hyphen behavior.
* t/basic.man: Adjust for the new hyphen behavior.
(Bad 2006 version of me, combining unrelated changes into a single
commit.) It's possible that the comment is referring to the hyphenation
change and I just moved them both together. I don't appear to have
written down why I switched from ".na" to ".ad l".
".if n .na" was in the generated output of Pod::Man of my very first
version in 1999, which strongly implies that it was in Tom Christiansen's
original pod2man script on which Pod::Man was originally based.
--
Russ Allbery (eagle@eyrie.org) <https://www.eyrie.org/~eagle/>
Re: groff now undoing .ad settings after .IP, Russ Allbery, 2024/03/16
Re: groff now undoing .ad settings after .IP, Frederic Chartier, 2024/03/18
Re: groff now undoing .ad settings after .IP, G. Branden Robinson, 2024/03/18
Re: groff now undoing .ad settings after .IP, Dave Kemper, 2024/03/19