diff options
author | Kristaps Dzonsons <kristaps@bsd.lv> | 2009-10-08 23:00:15 +0000 |
---|---|---|
committer | Kristaps Dzonsons <kristaps@bsd.lv> | 2009-10-08 23:00:15 +0000 |
commit | 3ebfba7c53e0e445e1e477d3bc4e9c99f0307dda (patch) | |
tree | c8363d0de2b71e926f1f7d2f491a15c2817fb43b /man_term.c | |
parent | 3a90e7272d1daf578ea1c9df7b71ac934a5f8f33 (diff) | |
download | mandoc-3ebfba7c53e0e445e1e477d3bc4e9c99f0307dda.tar.gz |
Consolidated some -man -Tascii functions.
Added many -man -Thtml functions (almost complete).
Diffstat (limited to 'man_term.c')
-rw-r--r-- | man_term.c | 85 |
1 files changed, 28 insertions, 57 deletions
@@ -61,10 +61,8 @@ struct termact { static int pre_B(DECL_ARGS); static int pre_BI(DECL_ARGS); -static int pre_BR(DECL_ARGS); static int pre_HP(DECL_ARGS); static int pre_I(DECL_ARGS); -static int pre_IB(DECL_ARGS); static int pre_IP(DECL_ARGS); static int pre_IR(DECL_ARGS); static int pre_PP(DECL_ARGS); @@ -105,8 +103,8 @@ static const struct termact termacts[MAN_MAX] = { { NULL, NULL }, /* SM */ { pre_B, post_B }, /* SB */ { pre_BI, NULL }, /* BI */ - { pre_IB, NULL }, /* IB */ - { pre_BR, NULL }, /* BR */ + { pre_BI, NULL }, /* IB */ + { pre_RB, NULL }, /* BR */ { pre_RB, NULL }, /* RB */ { NULL, NULL }, /* R */ { pre_B, post_B }, /* B */ @@ -295,42 +293,25 @@ pre_IR(DECL_ARGS) /* ARGSUSED */ static int -pre_IB(DECL_ARGS) -{ - const struct man_node *nn; - int i; - - for (i = 0, nn = n->child; nn; nn = nn->next, i++) { - if (i % 2) - p->bold++; - else - p->under++; - if (i > 0) - p->flags |= TERMP_NOSPACE; - print_node(p, mt, nn, m); - if (i % 2) - p->bold--; - else - p->under--; - } - return(0); -} - - -/* ARGSUSED */ -static int pre_RB(DECL_ARGS) { const struct man_node *nn; int i; for (i = 0, nn = n->child; nn; nn = nn->next, i++) { - if (i % 2) + if (i % 2 && MAN_RB == n->tok) p->bold++; + else if ( ! (i % 2) && MAN_RB != n->tok) + p->bold++; + if (i > 0) p->flags |= TERMP_NOSPACE; + print_node(p, mt, nn, m); - if (i % 2) + + if (i % 2 && MAN_RB == n->tok) + p->bold--; + else if ( ! (i % 2) && MAN_RB != n->tok) p->bold--; } return(0); @@ -359,43 +340,33 @@ pre_RI(DECL_ARGS) /* ARGSUSED */ static int -pre_BR(DECL_ARGS) -{ - const struct man_node *nn; - int i; - - for (i = 0, nn = n->child; nn; nn = nn->next, i++) { - if ( ! (i % 2)) - p->bold++; - if (i > 0) - p->flags |= TERMP_NOSPACE; - print_node(p, mt, nn, m); - if ( ! (i % 2)) - p->bold--; - } - return(0); -} - - -/* ARGSUSED */ -static int pre_BI(DECL_ARGS) { - const struct man_node *nn; - int i; + const struct man_node *nn; + int i; for (i = 0, nn = n->child; nn; nn = nn->next, i++) { - if (i % 2) + if (i % 2 && MAN_BI == n->tok) p->under++; - else + else if (i % 2) p->bold++; - if (i > 0) + else if (MAN_BI == n->tok) + p->bold++; + else + p->under++; + + if (i) p->flags |= TERMP_NOSPACE; print_node(p, mt, nn, m); - if (i % 2) + + if (i % 2 && MAN_BI == n->tok) p->under--; - else + else if (i % 2) p->bold--; + else if (MAN_BI == n->tok) + p->bold--; + else + p->under--; } return(0); } |