diff options
author | Kristaps Dzonsons <kristaps@bsd.lv> | 2011-01-03 13:59:21 +0000 |
---|---|---|
committer | Kristaps Dzonsons <kristaps@bsd.lv> | 2011-01-03 13:59:21 +0000 |
commit | 37cc2001c18336b17ab1db0fd5b493e86de5619a (patch) | |
tree | b39a648728b8aeb8b18a965cbdb9f87f773bdfd2 /tree.c | |
parent | 014a5fb27cb61fd91481514f5e11ab50aefdbfdb (diff) | |
download | mandoc-37cc2001c18336b17ab1db0fd5b493e86de5619a.tar.gz |
Make width calculations occur within tbl_term.c, not tbl.c. This allows
for front-ends to make decisions about widths, not the back-end.
To pull this off, first make each tbl_head contain a unique index value
(0 <= index < total tbl_head elements) and remove the tbl_calc() routine
from the back-end.
Then, when encountering the first tbl_span in the front-end, dynamically
create an array of configurations (termp_tbl) keyed on each tbl_head's
unique index value. Construct the decimals and widths at this time,
then continue parsing as before.
The termp_tbl and indexes are required because we pass a const tbl AST
into the front-end.
Diffstat (limited to 'tree.c')
-rw-r--r-- | tree.c | 13 |
1 files changed, 0 insertions, 13 deletions
@@ -249,21 +249,8 @@ static void print_span(const struct tbl_span *sp, int indent) { const struct tbl_dat *dp; - const struct tbl_head *hp; int i; - if (TBL_SPAN_FIRST & sp->flags) { - for (i = 0; i < indent; i++) - putchar('\t'); - printf("tbl-head: "); - for (hp = sp->head; hp; hp = hp->next) { - printf("[%d]", hp->width); - if (hp->next) - putchar(' '); - } - putchar('\n'); - } - for (i = 0; i < indent; i++) putchar('\t'); |