Hi,

Stuart Henderson wrote on Thu, Jan 15, 2015 at 09:22:07PM +0000:
> On 2015/01/15 23:49, Kirill Bychkov wrote:

>> This patch sorts variables in Makefile, adds some blank lines for
>> higher readability and drops USE_GROFF (the only difference between
>> groff and mandoc ith blank lines after header of each section,
>> [...]

> Yes, OK, that looks nicer.

Note that the designers of the man(7) language (likely Dennis Ritchie
and Joseph Ossanna) agreed:  They specifically designed the .SH
section header macro such that an immediately subsequent .sp (vertical
space) request has no effect, and text follows the header directly
even when you explicitly ask for a blank line there.  Already in
the first version of the man(7) macros in AT&T Version 7 UNIX, the
.SH macro sets up an input line trap which switches to no-space
mode at the end of the title line.

> Those blank lines in manuals match up with "ERROR: skipping unknown
> macro: .rs" errors from mandoc (and I think the mandoc version is
> better).

My interpretation is that the author of the manual went to great
lengths to get those blank lines:  The meaning of the .rs request
is "end vertical no-space mode".  So it specifically breaks that
aspect of the section header macro.  With groff, these .rs requests
do indeed prevent .SH from swallowing the subsequent .sp.

Now, since mandoc(1) doesn't implement no-space mode at all, that .rs
hack has no effect, and incidentally, in the meantime, in the context
of starting -Wunsupp, i made mandoc(1) explicitly ignore the .rs
request and documented it as "ignored" in roff(7), so even the
rather pointless error messages are gone now.

Anyway, i'm fine with what you committed.

Yours,
  Ingo

Reply via email to