summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKristaps Dzonsons <kristaps@bsd.lv>2010-06-04 21:05:39 +0000
committerKristaps Dzonsons <kristaps@bsd.lv>2010-06-04 21:05:39 +0000
commit8c29167218188f6baf91ea99e4a5cd3e70080638 (patch)
treeb391112ae69692eae77d166b5f29f41995db38d7
parentbf61435dc0abfd7e6ec28cc908580306d14676f3 (diff)
downloadmandoc-8c29167218188f6baf91ea99e4a5cd3e70080638.tar.gz
Fixed `Fd' to format in the right way. Found when confused by what the
hell `Fd' is supposed to do anyway (answer: it's a historical macro and we shouldn't be doing anything with it anyway).
-rw-r--r--mdoc_html.c23
-rw-r--r--mdoc_term.c5
-rw-r--r--regress/mdoc/Fd/fd.in22
3 files changed, 33 insertions, 17 deletions
diff --git a/mdoc_html.c b/mdoc_html.c
index fde75843..970b0db0 100644
--- a/mdoc_html.c
+++ b/mdoc_html.c
@@ -84,6 +84,7 @@ static void mdoc_dq_post(MDOC_ARGS);
static int mdoc_dq_pre(MDOC_ARGS);
static int mdoc_dv_pre(MDOC_ARGS);
static int mdoc_fa_pre(MDOC_ARGS);
+static void mdoc_fd_post(MDOC_ARGS);
static int mdoc_fd_pre(MDOC_ARGS);
static int mdoc_fl_pre(MDOC_ARGS);
static int mdoc_fn_pre(MDOC_ARGS);
@@ -158,7 +159,7 @@ static const struct htmlmdoc mdocs[MDOC_MAX] = {
{mdoc_ev_pre, NULL}, /* Ev */
{mdoc_ex_pre, NULL}, /* Ex */
{mdoc_fa_pre, NULL}, /* Fa */
- {mdoc_fd_pre, NULL}, /* Fd */
+ {mdoc_fd_pre, mdoc_fd_post}, /* Fd */
{mdoc_fl_pre, NULL}, /* Fl */
{mdoc_fn_pre, NULL}, /* Fn */
{mdoc_ft_pre, NULL}, /* Ft */
@@ -1510,21 +1511,19 @@ mdoc_fa_pre(MDOC_ARGS)
/* ARGSUSED */
+static void
+mdoc_fd_post(MDOC_ARGS)
+{
+
+ print_otag(h, TAG_BR, 0, NULL);
+}
+
+
+/* ARGSUSED */
static int
mdoc_fd_pre(MDOC_ARGS)
{
struct htmlpair tag;
- struct roffsu su;
-
- if (SEC_SYNOPSIS == n->sec && MDOC_LINE & n->flags) {
- if (n->next && MDOC_Fd != n->next->tok) {
- SCALE_VS_INIT(&su, 1);
- bufcat_su(h, "margin-bottom", &su);
- PAIR_STYLE_INIT(&tag, h);
- print_otag(h, TAG_DIV, 1, &tag);
- } else
- print_otag(h, TAG_DIV, 0, NULL);
- }
PAIR_CLASS_INIT(&tag, "macro");
print_otag(h, TAG_SPAN, 1, &tag);
diff --git a/mdoc_term.c b/mdoc_term.c
index 94981f19..ffe8905f 100644
--- a/mdoc_term.c
+++ b/mdoc_term.c
@@ -1358,12 +1358,7 @@ static void
termp_fd_post(DECL_ARGS)
{
- if (n->sec != SEC_SYNOPSIS || ! (MDOC_LINE & n->flags))
- return;
-
term_newln(p);
- if (n->next && MDOC_Fd != n->next->tok)
- term_vspace(p);
}
diff --git a/regress/mdoc/Fd/fd.in b/regress/mdoc/Fd/fd.in
new file mode 100644
index 00000000..a4a5e0ac
--- /dev/null
+++ b/regress/mdoc/Fd/fd.in
@@ -0,0 +1,22 @@
+.Dd $Mdocdate$
+.Dt FOO
+.Os
+.Sh NAME
+.Nm foo
+.Nd bar
+.Sh SYNOPSIS
+1
+.Fl
+.Fd 2 3 4
+.Fd 3
+4
+.Sh DESCRIPTION
+1
+.Fd 2
+.Fd 3
+4
+.Sh BLAH
+1
+.Fd 2
+.Fd 3
+4