diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2012-07-07 13:37:42 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2012-07-07 13:37:42 +0000 |
commit | 822a820e13c606b6885482a788be638d3a9552b7 (patch) | |
tree | b0d41b5990a8d1371ebdfab23a3557d5c659e71b /mdoc_man.c | |
parent | 89f3e88d763bf2e6982ff0c8446b42c28510e57f (diff) | |
download | mandoc-822a820e13c606b6885482a788be638d3a9552b7.tar.gz |
minor -mdoc -Tman fixes
* right after .Ns, avoid breaking the line in man code
* after .Fl without arguments, do not insert a blank into man code
* before each .Nm in .Sh SYNOPSIS, insert a .br into man code
* skip .Pp arguments, don't copy them to man code
OpenBSD rev. 1.7
Diffstat (limited to 'mdoc_man.c')
-rw-r--r-- | mdoc_man.c | 11 |
1 files changed, 9 insertions, 2 deletions
@@ -290,7 +290,7 @@ print_node(DECL_ARGS) * This makes the page structure be more consistent. */ prev = n->prev ? n->prev : n->parent; - if (prev && prev->line < n->line) + if (prev && prev->line < n->line && MDOC_Ns != prev->tok) mm->need_nl = 1; act = NULL; @@ -379,6 +379,8 @@ post_enc(DECL_ARGS) return; mm->need_space = 0; print_word(mm, suffix); + if (MDOC_Fl == n->tok && 0 == n->nchild) + mm->need_space = 0; } /* @@ -544,6 +546,11 @@ pre_nm(DECL_ARGS) if (MDOC_ELEM != n->type && MDOC_HEAD != n->type) return(1); + if (MDOC_SYNPRETTY & n->flags) { + mm->need_nl = 1; + print_word(mm, ".br"); + mm->need_nl = 1; + } print_word(mm, "\\fB"); mm->need_space = 0; if (NULL == n->child) @@ -586,7 +593,7 @@ pre_pp(DECL_ARGS) else print_word(mm, ".PP"); mm->need_nl = 1; - return(1); + return(MDOC_Rs == n->tok); } static int |