version 1.26, 2012/07/09 17:53:01 |
version 1.28, 2012/07/09 22:36:34 |
Line 44 static int cond_head(DECL_ARGS); |
|
Line 44 static int cond_head(DECL_ARGS); |
|
static void font_push(char); |
static void font_push(char); |
static void font_pop(void); |
static void font_pop(void); |
static void post_bd(DECL_ARGS); |
static void post_bd(DECL_ARGS); |
|
static void post_bf(DECL_ARGS); |
static void post_bk(DECL_ARGS); |
static void post_bk(DECL_ARGS); |
static void post_dl(DECL_ARGS); |
static void post_dl(DECL_ARGS); |
static void post_enc(DECL_ARGS); |
static void post_enc(DECL_ARGS); |
|
static void post_eo(DECL_ARGS); |
static void post_fa(DECL_ARGS); |
static void post_fa(DECL_ARGS); |
static void post_fl(DECL_ARGS); |
static void post_fl(DECL_ARGS); |
static void post_fn(DECL_ARGS); |
static void post_fn(DECL_ARGS); |
Line 63 static void post_vt(DECL_ARGS); |
|
Line 65 static void post_vt(DECL_ARGS); |
|
static int pre_an(DECL_ARGS); |
static int pre_an(DECL_ARGS); |
static int pre_ap(DECL_ARGS); |
static int pre_ap(DECL_ARGS); |
static int pre_bd(DECL_ARGS); |
static int pre_bd(DECL_ARGS); |
|
static int pre_bf(DECL_ARGS); |
static int pre_bk(DECL_ARGS); |
static int pre_bk(DECL_ARGS); |
static int pre_br(DECL_ARGS); |
static int pre_br(DECL_ARGS); |
static int pre_bx(DECL_ARGS); |
static int pre_bx(DECL_ARGS); |
Line 158 static const struct manact manacts[MDOC_MAX + 1] = { |
|
Line 161 static const struct manact manacts[MDOC_MAX + 1] = { |
|
{ cond_body, pre_enc, post_enc, "<", ">" }, /* Aq */ |
{ cond_body, pre_enc, post_enc, "<", ">" }, /* Aq */ |
{ NULL, NULL, NULL, NULL, NULL }, /* At */ |
{ NULL, NULL, NULL, NULL, NULL }, /* At */ |
{ NULL, NULL, NULL, NULL, NULL }, /* Bc */ |
{ NULL, NULL, NULL, NULL, NULL }, /* Bc */ |
{ NULL, NULL, NULL, NULL, NULL }, /* _Bf */ |
{ NULL, pre_bf, post_bf, NULL, NULL }, /* Bf */ |
{ cond_body, pre_enc, post_enc, "[", "]" }, /* Bo */ |
{ cond_body, pre_enc, post_enc, "[", "]" }, /* Bo */ |
{ cond_body, pre_enc, post_enc, "[", "]" }, /* Bq */ |
{ cond_body, pre_enc, post_enc, "[", "]" }, /* Bq */ |
{ NULL, pre_ux, NULL, "BSD/OS", NULL }, /* Bsx */ |
{ NULL, pre_ux, NULL, "BSD/OS", NULL }, /* Bsx */ |
Line 167 static const struct manact manacts[MDOC_MAX + 1] = { |
|
Line 170 static const struct manact manacts[MDOC_MAX + 1] = { |
|
{ NULL, NULL, NULL, NULL, NULL }, /* Dc */ |
{ NULL, NULL, NULL, NULL, NULL }, /* Dc */ |
{ cond_body, pre_enc, post_enc, "``", "''" }, /* Do */ |
{ cond_body, pre_enc, post_enc, "``", "''" }, /* Do */ |
{ cond_body, pre_enc, post_enc, "``", "''" }, /* Dq */ |
{ cond_body, pre_enc, post_enc, "``", "''" }, /* Dq */ |
{ NULL, NULL, NULL, NULL, NULL }, /* _Ec */ |
{ NULL, NULL, NULL, NULL, NULL }, /* Ec */ |
{ NULL, NULL, NULL, NULL, NULL }, /* _Ef */ |
{ NULL, NULL, NULL, NULL, NULL }, /* Ef */ |
{ NULL, pre_em, post_font, NULL, NULL }, /* Em */ |
{ NULL, pre_em, post_font, NULL, NULL }, /* Em */ |
{ NULL, NULL, NULL, NULL, NULL }, /* _Eo */ |
{ NULL, NULL, post_eo, NULL, NULL }, /* Eo */ |
{ NULL, pre_ux, NULL, "FreeBSD", NULL }, /* Fx */ |
{ NULL, pre_ux, NULL, "FreeBSD", NULL }, /* Fx */ |
{ NULL, pre_sy, post_font, NULL, NULL }, /* Ms */ |
{ NULL, pre_sy, post_font, NULL, NULL }, /* Ms */ |
{ NULL, pre_no, NULL, NULL, NULL }, /* No */ |
{ NULL, pre_no, NULL, NULL, NULL }, /* No */ |
Line 396 print_node(DECL_ARGS) |
|
Line 399 print_node(DECL_ARGS) |
|
* This makes the page structure be more consistent. |
* This makes the page structure be more consistent. |
*/ |
*/ |
prev = n->prev ? n->prev : n->parent; |
prev = n->prev ? n->prev : n->parent; |
if (prev && prev->line < n->line && |
if (MMAN_spc & outflags && prev && prev->line < n->line) |
MDOC_Fo != prev->tok && MDOC_Ns != prev->tok) |
|
outflags |= MMAN_nl; |
outflags |= MMAN_nl; |
|
|
act = NULL; |
act = NULL; |
Line 644 post_bd(DECL_ARGS) |
|
Line 646 post_bd(DECL_ARGS) |
|
} |
} |
|
|
static int |
static int |
|
pre_bf(DECL_ARGS) |
|
{ |
|
|
|
switch (n->type) { |
|
case (MDOC_BLOCK): |
|
return(1); |
|
case (MDOC_BODY): |
|
break; |
|
default: |
|
return(0); |
|
} |
|
switch (n->norm->Bf.font) { |
|
case (FONT_Em): |
|
font_push('I'); |
|
break; |
|
case (FONT_Sy): |
|
font_push('B'); |
|
break; |
|
default: |
|
font_push('R'); |
|
break; |
|
} |
|
return(1); |
|
} |
|
|
|
static void |
|
post_bf(DECL_ARGS) |
|
{ |
|
|
|
if (MDOC_BODY == n->type) |
|
font_pop(); |
|
} |
|
|
|
static int |
pre_bk(DECL_ARGS) |
pre_bk(DECL_ARGS) |
{ |
{ |
|
|
Line 721 pre_em(DECL_ARGS) |
|
Line 757 pre_em(DECL_ARGS) |
|
return(1); |
return(1); |
} |
} |
|
|
|
static void |
|
post_eo(DECL_ARGS) |
|
{ |
|
|
|
if (MDOC_HEAD == n->type || MDOC_BODY == n->type) |
|
outflags &= ~MMAN_spc; |
|
} |
|
|
static int |
static int |
pre_fa(DECL_ARGS) |
pre_fa(DECL_ARGS) |
{ |
{ |
Line 761 post_fl(DECL_ARGS) |
|
Line 805 post_fl(DECL_ARGS) |
|
{ |
{ |
|
|
font_pop(); |
font_pop(); |
if (0 == n->nchild) |
if (0 == n->nchild && NULL != n->next && |
|
n->next->line == n->line) |
outflags &= ~MMAN_spc; |
outflags &= ~MMAN_spc; |
} |
} |
|
|
Line 1007 pre_sm(DECL_ARGS) |
|
Line 1052 pre_sm(DECL_ARGS) |
|
|
|
assert(n->child && MDOC_TEXT == n->child->type); |
assert(n->child && MDOC_TEXT == n->child->type); |
if (0 == strcmp("on", n->child->string)) |
if (0 == strcmp("on", n->child->string)) |
outflags |= MMAN_Sm; |
outflags |= MMAN_Sm | MMAN_spc; |
else |
else |
outflags &= ~MMAN_Sm; |
outflags &= ~MMAN_Sm; |
return(0); |
return(0); |