[looping in Thomas Dickey since I mention him below] Hi Paul, At 2024-03-17T11:35:48-0700, Paul Eggert wrote:
On 2024-03-17 05:43, Alejandro Colomar wrote:
RS after IP, if the indentation amount is not specified, takes the same indentation that IP had. The values being used were wrong, and by removing them, we're fixing the indentation of the page. Also, one RS was not just incorrect, but completely unnecessary, and there was a missing RE.
Thanks for the bug report. Unfortunately the proposed fix generates too much white space between the bullet and the tzh_timecnt entry, when generating PDF. I installed the attached patch instead, which fixes the wrong .RS/.RE nesting and indentation in a different way; hope it works for you too.
Six four-byte integer values, in the following order: -.RS "\w' \(bu 'u" +.RS "\w' \(bu 'u" .TP "\w' 'u" [...] already support the POSIX-required range [\-24:59:59, 25:59:59]. -.RS "\w' 'u" .IP \(bu "\w'\(bu 'u"
From what I've seen it's uncommon, especially in man pages, to measure the space width of the current font. (Also, non-roff man page formatters have historically had fits with this sort of input--or totally ignored it--because of the 257 people who decided to write something called "man2html" in a fever dream of conquering the world with their mighty Perl scripting powers during the dot-com era, none wanted to implement a full *roff numerical expression evaluator.) Can I ask how the existing system of measurement units in *roff is unsatisfactory for your application? Thomas Dickey has the following idiom for bulleted paragraphs. .de bP .ie n .IP \(bu 4 .el .IP \(bu 2 .. It seems I can't talk him out of a macro definition for this application because he truly wants _wider_ spacing after the bullet on a terminal device than a typesetter. If his preferences were inverted, that is .de bP .ie n .IP \(bu 2 .el .IP \(bu 4 .. ...like that, then he could cut the Gordian Knot as follows and not define a macro at all. .IP \(bu 2m On typesetters, an em is twice the width of en (`IP`'s default unit). But on terminals, 1 em equals 1 en (which is typographically true on devices lacking proportional type). I bring all this up because as a man(7) macro language advocate and (unpaid) instructor, I strive to keep the language's expression as simple as possible. When inexperienced authors don't see scary syntax in others' pages, they're less likely to be discouraged, and perhaps more likely to stay on the horse and contribute worthy documentation. At the same time I understand the authorial desire to bring one's work to a high degree of polish. Regards, Branden