From fe145d2365e72a35cd1641adcd3eb55ecf5e5f1d Mon Sep 17 00:00:00 2001 From: Kristaps Dzonsons Date: Wed, 29 Dec 2010 16:44:23 +0000 Subject: Initial check-in of table data-row processing. For the time being, this parses table data then throws it away immediately. It does not yet try to cross-check data rows against layout or anything. This copied more or less completely from tbl.bsd.lv. --- libroff.h | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'libroff.h') diff --git a/libroff.h b/libroff.h index fbd69160..828185f1 100644 --- a/libroff.h +++ b/libroff.h @@ -1,4 +1,4 @@ -/* $Id: libroff.h,v 1.6 2010/12/29 14:53:31 kristaps Exp $ */ +/* $Id: libroff.h,v 1.7 2010/12/29 16:44:23 kristaps Exp $ */ /* * Copyright (c) 2009, 2010 Kristaps Dzonsons * @@ -60,6 +60,24 @@ struct tbl_row { struct tbl_cell *last; }; +struct tbl_dat { + struct tbl_dat *next; + char *string; + int flags; +#define TBL_DATA_HORIZ (1 << 0) +#define TBL_DATA_DHORIZ (1 << 1) +#define TBL_DATA_NHORIZ (1 << 2) +#define TBL_DATA_NDHORIZ (1 << 3) +}; + +struct tbl_span { + struct tbl_dat *first; + struct tbl_dat *last; + int flags; +#define TBL_SPAN_HORIZ (1 << 0) +#define TBL_SPAN_DHORIZ (1 << 1) +}; + struct tbl { mandocmsg msg; /* status messages */ void *data; /* privdata for messages */ @@ -90,6 +108,7 @@ void tbl_reset(struct tbl *); enum rofferr tbl_read(struct tbl *, int, const char *, int); int tbl_option(struct tbl *, int, const char *); int tbl_layout(struct tbl *, int, const char *); +struct tbl_span *tbl_data(struct tbl *, int, const char *); __END_DECLS -- cgit v1.2.3