diff options
-rw-r--r-- | TODO | 3 | ||||
-rw-r--r-- | mdoc_html.c | 13 | ||||
-rw-r--r-- | mdoc_term.c | 2 |
3 files changed, 14 insertions, 4 deletions
@@ -109,9 +109,6 @@ is just "o\bo". see for example OpenBSD ksh(1) -- .Sm should *not* produce as a blank line in .Bd -literal - see for example "Brace expansion" in OpenBSD ksh(1) - - The characters "|" and "\*(Ba" should never be bold, not even in the middle of a word, e.g. ".Cm b\*(Bac" in "mknod [-m mode] name b|c major minor" diff --git a/mdoc_html.c b/mdoc_html.c index 2974f1b3..6f5c8a81 100644 --- a/mdoc_html.c +++ b/mdoc_html.c @@ -1323,6 +1323,8 @@ mdoc_bd_pre(MDOC_ARGS) * anyway, so don't sweat it. */ switch (nn->tok) { + case (MDOC_Sm): + /* FALLTHROUGH */ case (MDOC_br): /* FALLTHROUGH */ case (MDOC_sp): @@ -1603,7 +1605,16 @@ mdoc_sm_pre(MDOC_ARGS) assert(n->child && MDOC_TEXT == n->child->type); if (0 == strcmp("on", n->child->string)) { - /* FIXME: no p->col to check... */ + /* + * FIXME: no p->col to check. Thus, if we have + * .Bd -literal + * .Sm off + * 1 2 + * .Sm on + * 3 + * .Ed + * the "3" is preceded by a space. + */ h->flags &= ~HTML_NOSPACE; h->flags &= ~HTML_NONOSPACE; } else diff --git a/mdoc_term.c b/mdoc_term.c index b408f08f..d7e11f86 100644 --- a/mdoc_term.c +++ b/mdoc_term.c @@ -1584,6 +1584,8 @@ termp_bd_pre(DECL_ARGS) * anyway, so don't sweat it. */ switch (nn->tok) { + case (MDOC_Sm): + /* FALLTHROUGH */ case (MDOC_br): /* FALLTHROUGH */ case (MDOC_sp): |