summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2012-07-14 10:47:07 +0000
committerIngo Schwarze <schwarze@openbsd.org>2012-07-14 10:47:07 +0000
commit7d38f2b698595b8911b6d5954a9f59103ac33ff8 (patch)
tree9ba10990a9dbb563f46dcd18d2370e070fb52dc7
parent719447bb64de123d9c914061125d472f529eb3b0 (diff)
downloadmandoc-7d38f2b698595b8911b6d5954a9f59103ac33ff8.tar.gz
Translate blank input lines to .sp just like in mdoc(7),
and ignore .sp after .PP. This fixes vertical spacing for blank lines after .PP and for .sp after .PP. OpenBSD rev. man.c 1.68 and man_term.c 1.86
-rw-r--r--man.c5
-rw-r--r--man_term.c17
2 files changed, 17 insertions, 5 deletions
diff --git a/man.c b/man.c
index caef76f5..749356dc 100644
--- a/man.c
+++ b/man.c
@@ -435,9 +435,10 @@ man_ptext(struct man *m, int line, char *buf, int offs)
if ('\0' == buf[i]) {
/* Allocate a blank entry. */
- if ( ! man_word_alloc(m, line, offs, ""))
+ if ( ! man_elem_alloc(m, line, offs, MAN_sp))
return(0);
- return(man_descope(m, line, offs));
+ m->next = MAN_NEXT_SIBLING;
+ return(1);
}
/*
diff --git a/man_term.c b/man_term.c
index a00d26f2..873b250a 100644
--- a/man_term.c
+++ b/man_term.c
@@ -445,10 +445,21 @@ pre_sp(DECL_ARGS)
int neg;
if ((NULL == n->prev && n->parent)) {
- if (MAN_SS == n->parent->tok)
- return(0);
- if (MAN_SH == n->parent->tok)
+ switch (n->parent->tok) {
+ case (MAN_SH):
+ /* FALLTHROUGH */
+ case (MAN_SS):
+ /* FALLTHROUGH */
+ case (MAN_PP):
+ /* FALLTHROUGH */
+ case (MAN_LP):
+ /* FALLTHROUGH */
+ case (MAN_P):
+ /* FALLTHROUGH */
return(0);
+ default:
+ break;
+ }
}
neg = 0;