Hi Dave, At 2023-05-23T15:24:26-0500, Dave Kemper wrote: > On 5/21/23, G. Branden Robinson <g.branden.robin...@gmail.com> wrote: > > At 2023-05-13T12:52:06-0500, Dave Kemper wrote: > >> In Heirloom troff, the space on the first and third lines match. > >> In groff (both 1.22.4 and 1.23 rc4), the second and third lines do. > > > > On DWB 3.3 troff, a direct descendant of Kernighan troff, and the > > basis for Heirloom Doctools troff, the second and third lines match: > > The behavioral divergence between DWB 3.3 and Heirloom surprises me. > I wondered if maybe this was the result of a different Times space > width in Heirloom, but if I'm reading its metrics files correctly > (which I admit is partly educated guesswork on my part), the widths > appear to match groff's: > > $ cd heirloom/local/ucblib/doctools/font/devps > $ fgrep 'N space ' * > B.afm:C 32 ; WX 250 ; N space ; B 0 0 0 0 ; [snip]
As I understand it, Heirloom loads font files directly (a feature many would like to see added to groff). So maybe these AFMs don't match the actual font in use? > > I don't think I trust Heirloom here. First, I suspect what they did > > was treat the CSTR #54 as more authoritative than empirically > > measured formatter behavior. > > I can't rule that out, but it sure goes against (my understanding of) > the general philosophy of the Heirloom project (which is to use only > the original source code for original functionality, not > reverse-engineering any of it). My wild-ass speculation is that, upon adding a feature that demanded refactoring of legacy troff code, and without a TRIP test to guide them, they could have followed CSTR #54 as a specification rather than the implementation. Perhaps without full awareness of the divergence between the two; I just documented a new (and unrelated) CSTR #54 erratum this week that's been lying in plain sight for decades...[1] > I guess the upshot is that rather than a groff difference that needs > to be documented, this is a CSTR #54 erratum (which groff could still > document, That is my view. > but it feels less important). Here I don't agree; I mean to document every CSTR #54 behavioral erratum that we become aware of. Bible thumpers can just die mad about it.[2] Regards, Branden [1] https://git.savannah.gnu.org/cgit/groff.git/commit/?id=8c22fb258c2a5fd0d9b52c9d694915c081e774dd [2] And future contributors can rip the notations back out after I've died mad about something else ;-). I'll have done my part to inform the historical record.
signature.asc
Description: PGP signature