summaryrefslogtreecommitdiffstats
path: root/usr.bin/mandoc/man_html.c
diff options
context:
space:
mode:
authorschwarze <schwarze@openbsd.org>2014-12-02 10:07:17 +0000
committerschwarze <schwarze@openbsd.org>2014-12-02 10:07:17 +0000
commit64c3401c9d7b678fca49a2777f3b21e6ef0c011c (patch)
treeec9c83f9c5154d0697d3c72c87996fcf8bf076f4 /usr.bin/mandoc/man_html.c
parentmacro cleanup; kaspars at bankovskis dot net (diff)
downloadwireguard-openbsd-64c3401c9d7b678fca49a2777f3b21e6ef0c011c.tar.xz
wireguard-openbsd-64c3401c9d7b678fca49a2777f3b21e6ef0c011c.zip
Fix the implementation and documentation of \c (continue text input line).
In particular, make it work in no-fill mode, too. Reminded by Carsten dot Kunze at arcor dot de (Heirloom roff).
Diffstat (limited to 'usr.bin/mandoc/man_html.c')
-rw-r--r--usr.bin/mandoc/man_html.c15
1 files changed, 4 insertions, 11 deletions
diff --git a/usr.bin/mandoc/man_html.c b/usr.bin/mandoc/man_html.c
index bba6f68ebc4..cde34a999c3 100644
--- a/usr.bin/mandoc/man_html.c
+++ b/usr.bin/mandoc/man_html.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: man_html.c,v 1.58 2014/12/01 08:05:02 schwarze Exp $ */
+/* $OpenBSD: man_html.c,v 1.59 2014/12/02 10:07:17 schwarze Exp $ */
/*
* Copyright (c) 2008-2012, 2014 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2013, 2014 Ingo Schwarze <schwarze@openbsd.org>
@@ -210,21 +210,14 @@ print_man_node(MAN_ARGS)
man_root_pre(man, n, mh, h);
break;
case MAN_TEXT:
- /*
- * If we have a blank line, output a vertical space.
- * If we have a space as the first character, break
- * before printing the line's data.
- */
if ('\0' == *n->string) {
print_paragraph(h);
return;
}
-
- if (' ' == *n->string && MAN_LINE & n->flags)
+ if (n->flags & MAN_LINE && (*n->string == ' ' ||
+ (n->prev != NULL && mh->fl & MANH_LITERAL &&
+ ! (h->flags & HTML_NONEWLINE))))
print_otag(h, TAG_BR, 0, NULL);
- else if (MANH_LITERAL & mh->fl && n->prev)
- print_otag(h, TAG_BR, 0, NULL);
-
print_text(h, n->string);
return;
case MAN_EQN: