diff options
author | Kristaps Dzonsons <kristaps@bsd.lv> | 2010-04-06 11:28:17 +0000 |
---|---|---|
committer | Kristaps Dzonsons <kristaps@bsd.lv> | 2010-04-06 11:28:17 +0000 |
commit | aeb53baa584ae0fe0d04a3cd1e74f509d353e8c0 (patch) | |
tree | 00d440a16a75d6d270567180f1501a5506625605 | |
parent | 6d0ad067809e00ebce310fb6eb53a72a9874a704 (diff) | |
download | mandoc-aeb53baa584ae0fe0d04a3cd1e74f509d353e8c0.tar.gz |
Let `Bl' accept arguments on the head line with a warning (these are ignored in the front-end device) (noted by Theo de Raadt).
-rw-r--r-- | mdoc_html.c | 2 | ||||
-rw-r--r-- | mdoc_term.c | 12 | ||||
-rw-r--r-- | mdoc_validate.c | 5 |
3 files changed, 16 insertions, 3 deletions
diff --git a/mdoc_html.c b/mdoc_html.c index bfcb5674..90d22e1f 100644 --- a/mdoc_html.c +++ b/mdoc_html.c @@ -1116,6 +1116,8 @@ mdoc_bl_pre(MDOC_ARGS) { struct ord *ord; + if (MDOC_HEAD == n->type) + return(0); if (MDOC_BLOCK != n->type) return(1); if (MDOC_Enum != a2list(n)) diff --git a/mdoc_term.c b/mdoc_term.c index d1de3107..671a5ecc 100644 --- a/mdoc_term.c +++ b/mdoc_term.c @@ -99,6 +99,7 @@ static int termp_ap_pre(DECL_ARGS); static int termp_aq_pre(DECL_ARGS); static int termp_bd_pre(DECL_ARGS); static int termp_bf_pre(DECL_ARGS); +static int termp_bl_pre(DECL_ARGS); static int termp_bold_pre(DECL_ARGS); static int termp_bq_pre(DECL_ARGS); static int termp_brq_pre(DECL_ARGS); @@ -148,7 +149,7 @@ static const struct termact termacts[MDOC_MAX] = { { termp_d1_pre, termp_d1_post }, /* Dl */ { termp_bd_pre, termp_bd_post }, /* Bd */ { NULL, NULL }, /* Ed */ - { NULL, termp_bl_post }, /* Bl */ + { termp_bl_pre, termp_bl_post }, /* Bl */ { NULL, NULL }, /* El */ { termp_it_pre, termp_it_post }, /* It */ { NULL, NULL }, /* Ad */ @@ -1250,6 +1251,15 @@ termp_nd_pre(DECL_ARGS) /* ARGSUSED */ +static int +termp_bl_pre(DECL_ARGS) +{ + + return(MDOC_HEAD != n->type); +} + + +/* ARGSUSED */ static void termp_bl_post(DECL_ARGS) { diff --git a/mdoc_validate.c b/mdoc_validate.c index ef9fce61..46849243 100644 --- a/mdoc_validate.c +++ b/mdoc_validate.c @@ -1103,8 +1103,9 @@ post_bl_head(POST_ARGS) if (n->args->argv[i].arg == MDOC_Column) break; - if (i == (int)n->args->argc) - return(1); + if (i == (int)n->args->argc && n->nchild) + return(warn_count(mdoc, "==", 0, + "line arguments", n->nchild)); if (n->args->argv[i].sz && mdoc->last->child) return(mdoc_nerr(mdoc, n, ECOLMIS)); |