=================================================================== RCS file: /cvs/mandoc/mdoc_html.c,v retrieving revision 1.24 retrieving revision 1.27 diff -u -p -r1.24 -r1.27 --- mandoc/mdoc_html.c 2009/10/07 14:39:00 1.24 +++ mandoc/mdoc_html.c 2009/10/08 23:00:15 1.27 @@ -1,4 +1,4 @@ -/* $Id: mdoc_html.c,v 1.24 2009/10/07 14:39:00 kristaps Exp $ */ +/* $Id: mdoc_html.c,v 1.27 2009/10/08 23:00:15 kristaps Exp $ */ /* * Copyright (c) 2008, 2009 Kristaps Dzonsons * @@ -49,16 +49,11 @@ static void print_mdoc_nodelist(MDOC_ARGS); static void a2width(const char *, struct roffsu *); static void a2offs(const char *, struct roffsu *); + static int a2list(const struct mdoc_node *); static void mdoc_root_post(MDOC_ARGS); static int mdoc_root_pre(MDOC_ARGS); -static int mdoc_it_block_pre(MDOC_ARGS, int, - struct roffsu *, int, - struct roffsu *); -static int mdoc_it_head_pre(MDOC_ARGS, int, - struct roffsu *); -static int mdoc_it_body_pre(MDOC_ARGS, int); static void mdoc__x_post(MDOC_ARGS); static int mdoc__x_pre(MDOC_ARGS); @@ -96,6 +91,11 @@ static void mdoc_fo_post(MDOC_ARGS); static int mdoc_fo_pre(MDOC_ARGS); static int mdoc_ic_pre(MDOC_ARGS); static int mdoc_in_pre(MDOC_ARGS); +static int mdoc_it_block_pre(MDOC_ARGS, int, int, + struct roffsu *, struct roffsu *); +static int mdoc_it_head_pre(MDOC_ARGS, int, + struct roffsu *); +static int mdoc_it_body_pre(MDOC_ARGS, int); static int mdoc_it_pre(MDOC_ARGS); static int mdoc_lb_pre(MDOC_ARGS); static int mdoc_li_pre(MDOC_ARGS); @@ -552,7 +552,7 @@ mdoc_sh_pre(MDOC_ARGS) { struct htmlpair tag[2]; const struct mdoc_node *nn; - char link[BUFSIZ]; + char lbuf[BUFSIZ]; struct roffsu su; if (MDOC_BODY == n->type) { @@ -579,11 +579,11 @@ mdoc_sh_pre(MDOC_ARGS) return(1); } - link[0] = 0; + lbuf[0] = 0; for (nn = n->child; nn; nn = nn->next) { - (void)strlcat(link, nn->string, BUFSIZ); + (void)strlcat(lbuf, nn->string, BUFSIZ); if (nn->next) - (void)strlcat(link, "_", BUFSIZ); + (void)strlcat(lbuf, "_", BUFSIZ); } /* @@ -593,7 +593,7 @@ mdoc_sh_pre(MDOC_ARGS) PAIR_CLASS_INIT(&tag[0], "sec-head"); tag[1].key = ATTR_ID; - tag[1].val = link; + tag[1].val = lbuf; print_otag(h, TAG_DIV, 2, tag); return(1); } @@ -605,7 +605,7 @@ mdoc_ss_pre(MDOC_ARGS) { struct htmlpair tag[3]; const struct mdoc_node *nn; - char link[BUFSIZ]; + char lbuf[BUFSIZ]; struct roffsu su; SCALE_VS_INIT(&su, 1); @@ -632,11 +632,11 @@ mdoc_ss_pre(MDOC_ARGS) /* TODO: see note in mdoc_sh_pre() about duplicates. */ - link[0] = 0; + lbuf[0] = 0; for (nn = n->child; nn; nn = nn->next) { - (void)strlcat(link, nn->string, BUFSIZ); + (void)strlcat(lbuf, nn->string, BUFSIZ); if (nn->next) - (void)strlcat(link, "_", BUFSIZ); + (void)strlcat(lbuf, "_", BUFSIZ); } SCALE_HS_INIT(&su, INDENT - HALFINDENT); @@ -646,7 +646,7 @@ mdoc_ss_pre(MDOC_ARGS) PAIR_CLASS_INIT(&tag[0], "ssec-head"); PAIR_STYLE_INIT(&tag[1], h); tag[2].key = ATTR_ID; - tag[2].val = link; + tag[2].val = lbuf; print_otag(h, TAG_DIV, 3, tag); return(1); } @@ -855,8 +855,8 @@ mdoc_bx_pre(MDOC_ARGS) /* ARGSUSED */ static int -mdoc_it_block_pre(MDOC_ARGS, int type, struct roffsu *offs, - int comp, struct roffsu *width) +mdoc_it_block_pre(MDOC_ARGS, int type, int comp, + struct roffsu *offs, struct roffsu *width) { struct htmlpair tag; const struct mdoc_node *nn; @@ -908,6 +908,7 @@ mdoc_it_block_pre(MDOC_ARGS, int type, struct roffsu * } +/* ARGSUSED */ static int mdoc_it_body_pre(MDOC_ARGS, int type) { @@ -937,6 +938,7 @@ mdoc_it_body_pre(MDOC_ARGS, int type) } +/* ARGSUSED */ static int mdoc_it_head_pre(MDOC_ARGS, int type, struct roffsu *width) { @@ -1079,8 +1081,8 @@ mdoc_it_pre(MDOC_ARGS) if (MDOC_BODY == n->type) return(mdoc_it_body_pre(m, n, h, type)); if (MDOC_BLOCK == n->type) - return(mdoc_it_block_pre(m, n, h, type, - &offs, comp, &width)); + return(mdoc_it_block_pre(m, n, h, type, comp, + &offs, &width)); /* Override column widths. */ @@ -1282,20 +1284,20 @@ mdoc_sx_pre(MDOC_ARGS) { struct htmlpair tag[2]; const struct mdoc_node *nn; - char link[BUFSIZ]; + char lbuf[BUFSIZ]; /* FIXME: duplicates? */ - (void)strlcpy(link, "#", BUFSIZ); + (void)strlcpy(lbuf, "#", BUFSIZ); for (nn = n->child; nn; nn = nn->next) { - (void)strlcat(link, nn->string, BUFSIZ); + (void)strlcat(lbuf, nn->string, BUFSIZ); if (nn->next) - (void)strlcat(link, "_", BUFSIZ); + (void)strlcat(lbuf, "_", BUFSIZ); } PAIR_CLASS_INIT(&tag[0], "link-sec"); tag[1].key = ATTR_HREF; - tag[1].val = link; + tag[1].val = lbuf; print_otag(h, TAG_A, 2, tag); return(1); @@ -1622,7 +1624,8 @@ mdoc_fn_pre(MDOC_ARGS) assert(n->child->string); sp = n->child->string; - if ((ep = strchr(sp, ' '))) { + ep = strchr(sp, ' '); + if (NULL != ep) { PAIR_CLASS_INIT(&tag[0], "ftype"); t = print_otag(h, TAG_SPAN, 1, tag);