Hi Erik,

At 2025-03-14T09:00:50+0000, dvalin--- via GNU roff typesetting system 
discussion wrote:
> Ah, well, that was initially for wrapping after the .I line, then it
> was Vim's autoindent. I provided the space needed after the trailing
> comma, to separate words ... erroneously as you're so succinctly
> illuminating.

Please excuse my brevity; people occasionally tell me I write too much.

> Missing whitespace is easy to find, extra less so, especially when the
> consequences are unanticipated. I had read that a blank line breaks,
> but sensitivity to a space in a text line is a significant surprise.
> Yes, at "4.6.5.3 Paragraphs" I read "Alternatively, a blank input line
> breaks the output line and vertically spaces by one vee." There was no
> hint that a space in a text line could do the same. As it modifies
> paragraph wrapping, I submit that it is functionally a paragraph
> attribute, highly worthy of an additional clause in the "blank line"
> sentence.

Yes, this might be worth noting in a tutorial introduction to ms.  The
handling of blank lines and leading spaces on text lines is a property
of *roff itself, not of macro packages.  (Albeit in GNU troff, one can
override the default behavior of each.)

> I'll read that now, and add the worst gotchas to the nascent groff
> section of my 460 pages of *nix & embedded systems software
> development notes, long essential for survival despite manpages.

Agreed.  I maintain an "answers" text file and a shell function "qa"
that uses lkbib(1) to essentially perform a keyword search on it and
return relevant entries.

> Grateful thanks for taking the time to analyse the problem, and
> discern the solution. It is dawning that I must tread *very* carefully
> with input, adding only a bit at the time, lest another bunch of
> unforeseen effects be triggered.

That's a reasonable way to think about it.  roff and nroff were
originally written on machines with resources that today's embedded
systems would describe as meager.  Every byte counted.  Their initial
audience was also accustomed to typewriter behavior and usage practices,
not just from previous experience but as an interface to the computer.

> Thanks again, Branden.

I'm attaching a recent rendered version of the groff ms manual from our
Git repository.  Nearly every word of it applies equally well to the
groff 1.22.4 (December 2018) packages you're apparently using.

The content is much the same as in Chapter 4 of groff's Texinfo manual,
but there are more rendered examples because the source document, ms.ms,
which I emailed you earlier, is rendered with groff rather than TeX, and
we've made numerous corrections and clarifications since groff 1.23.0
(July 2023).  You can therefore use the source and rendered versions of
the manual to observe how to get things done with groff ms.

Let me know if this helps, or doesn't.

Regards,
Branden

Attachment: signature.asc
Description: PGP signature

Reply via email to