summaryrefslogtreecommitdiffstats
path: root/mdoc_term.c
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2014-08-21 12:57:17 +0000
committerIngo Schwarze <schwarze@openbsd.org>2014-08-21 12:57:17 +0000
commit789c95de5c329863a91a87b7615365dddd3a887a (patch)
treed61ec8e6b065eb6b2d0a784f9245bbedbcc5bc45 /mdoc_term.c
parentc5afe1457c884399f540e3898d76a6dac974bcc9 (diff)
downloadmandoc-789c95de5c329863a91a87b7615365dddd3a887a.tar.gz
Right after .Fl, a middle delimiter triggers an empty scope,
just like a closing delimiter. This didn't work in groff-1.15, but it now works in groff-1.22. After being closed by delimiters, .Nm scopes do not reopen. Do not suppress white space after .Fl if the next node is a text node on the same input line; that can happen for middle delimiters. Fixing an issue reported by jmc@.
Diffstat (limited to 'mdoc_term.c')
-rw-r--r--mdoc_term.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/mdoc_term.c b/mdoc_term.c
index ea7c0d3b..4b4c4248 100644
--- a/mdoc_term.c
+++ b/mdoc_term.c
@@ -1075,9 +1075,10 @@ termp_fl_pre(DECL_ARGS)
term_fontpush(p, TERMFONT_BOLD);
term_word(p, "\\-");
- if (n->child)
- p->flags |= TERMP_NOSPACE;
- else if (n->next && n->next->line == n->line)
+ if ( ! (n->nchild == 0 &&
+ (n->next == NULL ||
+ n->next->type == MDOC_TEXT ||
+ n->next->flags & MDOC_LINE)))
p->flags |= TERMP_NOSPACE;
return(1);