version 1.279, 2017/04/17 12:53:29 |
version 1.282, 2017/05/04 22:16:09 |
Line 118 static int mdoc_vt_pre(MDOC_ARGS); |
|
Line 118 static int mdoc_vt_pre(MDOC_ARGS); |
|
static int mdoc_xr_pre(MDOC_ARGS); |
static int mdoc_xr_pre(MDOC_ARGS); |
static int mdoc_xx_pre(MDOC_ARGS); |
static int mdoc_xx_pre(MDOC_ARGS); |
|
|
static const struct htmlmdoc mdocs[MDOC_MAX] = { |
static const struct htmlmdoc __mdocs[MDOC_MAX - MDOC_Dd] = { |
{mdoc_ap_pre, NULL}, /* Ap */ |
|
{NULL, NULL}, /* Dd */ |
{NULL, NULL}, /* Dd */ |
{NULL, NULL}, /* Dt */ |
{NULL, NULL}, /* Dt */ |
{NULL, NULL}, /* Os */ |
{NULL, NULL}, /* Os */ |
Line 135 static const struct htmlmdoc mdocs[MDOC_MAX] = { |
|
Line 134 static const struct htmlmdoc mdocs[MDOC_MAX] = { |
|
{mdoc_it_pre, NULL}, /* It */ |
{mdoc_it_pre, NULL}, /* It */ |
{mdoc_ad_pre, NULL}, /* Ad */ |
{mdoc_ad_pre, NULL}, /* Ad */ |
{mdoc_an_pre, NULL}, /* An */ |
{mdoc_an_pre, NULL}, /* An */ |
|
{mdoc_ap_pre, NULL}, /* Ap */ |
{mdoc_ar_pre, NULL}, /* Ar */ |
{mdoc_ar_pre, NULL}, /* Ar */ |
{mdoc_cd_pre, NULL}, /* Cd */ |
{mdoc_cd_pre, NULL}, /* Cd */ |
{mdoc_cm_pre, NULL}, /* Cm */ |
{mdoc_cm_pre, NULL}, /* Cm */ |
Line 237 static const struct htmlmdoc mdocs[MDOC_MAX] = { |
|
Line 237 static const struct htmlmdoc mdocs[MDOC_MAX] = { |
|
{mdoc_quote_pre, mdoc_quote_post}, /* En */ |
{mdoc_quote_pre, mdoc_quote_post}, /* En */ |
{mdoc_xx_pre, NULL}, /* Dx */ |
{mdoc_xx_pre, NULL}, /* Dx */ |
{mdoc__x_pre, mdoc__x_post}, /* %Q */ |
{mdoc__x_pre, mdoc__x_post}, /* %Q */ |
{mdoc_sp_pre, NULL}, /* br */ |
|
{mdoc_sp_pre, NULL}, /* sp */ |
{mdoc_sp_pre, NULL}, /* sp */ |
{mdoc__x_pre, mdoc__x_post}, /* %U */ |
{mdoc__x_pre, mdoc__x_post}, /* %U */ |
{NULL, NULL}, /* Ta */ |
{NULL, NULL}, /* Ta */ |
{mdoc_skip_pre, NULL}, /* ll */ |
{mdoc_skip_pre, NULL}, /* ll */ |
}; |
}; |
|
static const struct htmlmdoc *const mdocs = __mdocs - MDOC_Dd; |
|
|
|
|
/* |
/* |
Line 393 print_mdoc_node(MDOC_ARGS) |
|
Line 393 print_mdoc_node(MDOC_ARGS) |
|
t = h->tag; |
t = h->tag; |
} |
} |
assert(h->tblt == NULL); |
assert(h->tblt == NULL); |
if (mdocs[n->tok].pre && (n->end == ENDBODY_NOT || n->child)) |
if (n->tok < ROFF_MAX) { |
|
roff_html_pre(h, n); |
|
break; |
|
} |
|
assert(n->tok >= MDOC_Dd && n->tok < MDOC_MAX); |
|
if (mdocs[n->tok].pre != NULL && |
|
(n->end == ENDBODY_NOT || n->child != NULL)) |
child = (*mdocs[n->tok].pre)(meta, n, h); |
child = (*mdocs[n->tok].pre)(meta, n, h); |
break; |
break; |
} |
} |
Line 412 print_mdoc_node(MDOC_ARGS) |
|
Line 418 print_mdoc_node(MDOC_ARGS) |
|
case ROFFT_EQN: |
case ROFFT_EQN: |
break; |
break; |
default: |
default: |
if ( ! mdocs[n->tok].post || n->flags & NODE_ENDED) |
if (n->tok < ROFF_MAX || |
|
mdocs[n->tok].post == NULL || |
|
n->flags & NODE_ENDED) |
break; |
break; |
(*mdocs[n->tok].post)(meta, n, h); |
(*mdocs[n->tok].post)(meta, n, h); |
if (n->end != ENDBODY_NOT) |
if (n->end != ENDBODY_NOT) |
Line 1002 mdoc_bd_pre(MDOC_ARGS) |
|
Line 1010 mdoc_bd_pre(MDOC_ARGS) |
|
*/ |
*/ |
switch (nn->tok) { |
switch (nn->tok) { |
case MDOC_Sm: |
case MDOC_Sm: |
case MDOC_br: |
case ROFF_br: |
case MDOC_sp: |
case MDOC_sp: |
case MDOC_Bl: |
case MDOC_Bl: |
case MDOC_D1: |
case MDOC_D1: |
Line 1323 mdoc_sp_pre(MDOC_ARGS) |
|
Line 1331 mdoc_sp_pre(MDOC_ARGS) |
|
struct roffsu su; |
struct roffsu su; |
|
|
SCALE_VS_INIT(&su, 1); |
SCALE_VS_INIT(&su, 1); |
|
if (NULL != (n = n->child)) { |
if (MDOC_sp == n->tok) { |
if ( ! a2roffsu(n->string, &su, SCALE_VS)) |
if (NULL != (n = n->child)) { |
su.scale = 1.0; |
if ( ! a2roffsu(n->string, &su, SCALE_VS)) |
else if (su.scale < 0.0) |
su.scale = 1.0; |
su.scale = 0.0; |
else if (su.scale < 0.0) |
} |
su.scale = 0.0; |
|
} |
|
} else |
|
su.scale = 0.0; |
|
|
|
print_otag(h, TAG_DIV, "suh", &su); |
print_otag(h, TAG_DIV, "suh", &su); |
|
|