=================================================================== RCS file: /cvs/mandoc/mdoc_html.c,v retrieving revision 1.30 retrieving revision 1.33 diff -u -p -r1.30 -r1.33 --- mandoc/mdoc_html.c 2009/10/15 01:33:12 1.30 +++ mandoc/mdoc_html.c 2009/10/19 10:18:06 1.33 @@ -1,4 +1,4 @@ -/* $Id: mdoc_html.c,v 1.30 2009/10/15 01:33:12 kristaps Exp $ */ +/* $Id: mdoc_html.c,v 1.33 2009/10/19 10:18:06 kristaps Exp $ */ /* * Copyright (c) 2008, 2009 Kristaps Dzonsons * @@ -327,10 +327,10 @@ static void a2width(const char *p, struct roffsu *su) { - if (a2roffsu(p, su)) - return; - su->unit = SCALE_EM; - su->scale = (int)strlen(p); + if ( ! a2roffsu(p, su, SCALE_MAX)) { + su->unit = SCALE_EM; + su->scale = (int)strlen(p); + } } @@ -343,13 +343,15 @@ static void a2offs(const char *p, struct roffsu *su) { + /* FIXME: "right"? */ + if (0 == strcmp(p, "left")) SCALE_HS_INIT(su, 0); else if (0 == strcmp(p, "indent")) SCALE_HS_INIT(su, INDENT); else if (0 == strcmp(p, "indent-two")) SCALE_HS_INIT(su, INDENT * 2); - else if ( ! a2roffsu(p, su)) { + else if ( ! a2roffsu(p, su, SCALE_MAX)) { su->unit = SCALE_EM; su->scale = (int)strlen(p); } @@ -1066,6 +1068,8 @@ mdoc_it_pre(MDOC_ARGS) /* Override width in some cases. */ switch (type) { + case (MDOC_Item): + /* FALLTHROUGH */ case (MDOC_Inset): /* FALLTHROUGH */ case (MDOC_Diag): @@ -1371,6 +1375,8 @@ mdoc_bd_pre(MDOC_ARGS) default: break; } + + /* FIXME: -centered, etc. formatting. */ if (MDOC_BLOCK == n->type) { bufcat_su(h, "margin-left", &su);