summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--TODO3
-rw-r--r--mdoc_html.c13
-rw-r--r--mdoc_term.c2
3 files changed, 14 insertions, 4 deletions
diff --git a/TODO b/TODO
index e8ac770f..6680a770 100644
--- a/TODO
+++ b/TODO
@@ -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):