>> So it looks like -me and -ms break the .sp request in this context. > > Well "break" is probably not the right word, since it implies > that this behavior is "not correct", whereas the behavior is > actually intended.
You're right; I shouldn't have used the word "break" especially for macro packages whose intended behavior I'm not familiar with. In the case of the -me macros, however, which I've been using for several months, I have to say that this intended behavior is not clearly documented: neither meintro.me nor meref.me mentions it in conjunction with the .sp request. Searching those documents now, it seems this default behavior is only mentioned (or, more often, implied) when documenting some exception to it (specifically, the .tp and .bl macros). Of course .sp is a groff request and not part of the -me package, but since the -me package does alter its behavior, I would think this warrants an explicit note when explaining .sp in -me documentation. Specific suggestions follow. meintro.me doesn't document .bl at all, talking only about .sp as a way to leave vertical space (in section 2.4). This would be a good place to add text to the effect of, "This request will not leave space at the top of a page. If you need the requested space to appear regardless of page position, use the .bl macro, which uses the same syntax as .sp but always leaves the requested space, even at the top of a page." In meref.me, .sp is only documented in the summary at the end, but even here, there's no mention of the top-of-page exception -- although the summary entry for .bl mentions that it /does/ work at the top of the page. I would suggest both describe their top-of-page behavior and include a reference to the other, e.g.: .bl blank lines (even at top of page; compare to .sp) .sp vertical space (except at top of page; compare to .bl) Additionally, the .bl description in section 8, "Equivalent to a .sp N inside a block", is ambiguously worded, as this could be interpreted as either that .bl is "equivalent to a .sp that appears inside a block" or "equivalent to .sp when the .bl appears inside a block." And ambiguity aside, I don't think this sentence is very illuminating, as the description of a block doesn't explain how vertical space is handled differently within vs outside a block. I don't have a suggestion to fix this because I don't know what it's trying to say. > The macro packages ... > might set the "no space" flag, to disable vertical space > from being output at the top of the page Is this a groff flag? Where is it documented? I couldn't find it in the info files.