aboutsummaryrefslogtreecommitdiffstatshomepage
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
commit2a7ad7cc27a054ffb9b426860d023ebc687b10c9 (patch)
tree51c4df0ecca7c1c0a288eb7ed01772cec498c44f /tbl_term.c
parentdf93d3ceecb1d865ef7249ba9348370ffc024e60 (diff)
downloadmandoc-2a7ad7cc27a054ffb9b426860d023ebc687b10c9.tar.gz
mandoc-2a7ad7cc27a054ffb9b426860d023ebc687b10c9.tar.zst
mandoc-2a7ad7cc27a054ffb9b426860d023ebc687b10c9.zip
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.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/tbl_term.c b/tbl_term.c
index a6c78e1d..267c3d14 100644
--- a/tbl_term.c
+++ b/tbl_term.c
@@ -1,4 +1,4 @@
-/* $Id: tbl_term.c,v 1.9 2011/01/04 13:21:45 kristaps Exp $ */
+/* $Id: tbl_term.c,v 1.10 2011/01/04 15:02:00 kristaps Exp $ */
/*
* Copyright (c) 2009 Kristaps Dzonsons <kristaps@kth.se>
*
@@ -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;