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