summaryrefslogtreecommitdiffstats
path: root/tbl_term.c
diff options
context:
space:
mode:
authorKristaps Dzonsons <kristaps@bsd.lv>2011-01-04 15:02:00 +0000
committerKristaps Dzonsons <kristaps@bsd.lv>2011-01-04 15:02:00 +0000
commit169a2d82c18ba1ee663ba1da329795f3e1753e8d (patch)
tree26abfc46221fcb93c3697f6ed426ea8c590cb98d /tbl_term.c
parent6f6927e6a5ffb72da4a382768a7d53d045cf5590 (diff)
downloadmandoc-169a2d82c18ba1ee663ba1da329795f3e1753e8d.tar.gz
Support `T{' and `T}' data blocks. When a standalone `T{' is
encountered as a line's last data cell, move into TBL_PART_CDATA mode whilst leaving the cell's designation as TBL_DATA_NONE. When new data arrives that's not a standalone `T}', append it to the cell contends. Close out and warn appropriately.
Diffstat (limited to 'tbl_term.c')
-rw-r--r--tbl_term.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/tbl_term.c b/tbl_term.c
index 6ee2d112..de0b0652 100644
--- a/tbl_term.c
+++ b/tbl_term.c
@@ -253,6 +253,9 @@ tbl_data(struct termp *tp, const struct tbl *tbl,
}
switch (dp->pos) {
+ case (TBL_DATA_NONE):
+ tbl_char(tp, ASCII_NBRSP, tbp->width);
+ return;
case (TBL_DATA_HORIZ):
/* FALLTHROUGH */
case (TBL_DATA_NHORIZ):
@@ -420,14 +423,9 @@ tbl_calc(struct termp *tp, const struct tbl_span *sp)
hp = sp->head;
for ( ; sp; sp = sp->next) {
- switch (sp->pos) {
- case (TBL_DATA_HORIZ):
- /* FALLTHROUGH */
- case (TBL_DATA_DHORIZ):
+ if (TBL_SPAN_DATA != sp->pos)
continue;
- default:
- break;
- }
+
for (dp = sp->first; dp; dp = dp->next) {
if (NULL == dp->layout)
continue;