summaryrefslogtreecommitdiffstats
path: root/mandoc.h
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2015-01-27 05:21:44 +0000
committerIngo Schwarze <schwarze@openbsd.org>2015-01-27 05:21:44 +0000
commit3d1973ffce60279bff4ec548c2c90f4d1d31f1a2 (patch)
treeff7ba8b19b0c296892ac283cae5c138a94b2e04f /mandoc.h
parentfb1f845c9ebafe8648f3df58f8a4581041ff067e (diff)
downloadmandoc-3d1973ffce60279bff4ec548c2c90f4d1d31f1a2.tar.gz
Multiple parser and formatter fixes for line drawing in tbl(7).
* Allow mixing vertical line bars with the layout options of the preceding layout cell. * Correctly combine box options with layout lines. * Correctly print vertical lines in data rows, with the right spacing. * Correctly print cross markers and left and right ends of horizontal lines even if vertical lines differ above and below. * Avoid the bogus error message "no table data cells" when a table data section starts with a horizontal line. No increase in code size.
Diffstat (limited to 'mandoc.h')
-rw-r--r--mandoc.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/mandoc.h b/mandoc.h
index 3148221b..47cd7292 100644
--- a/mandoc.h
+++ b/mandoc.h
@@ -206,6 +206,8 @@ struct tbl_opts {
#define TBL_OPT_NOSPACE (1 << 6)
#define TBL_OPT_NOWARN (1 << 7)
int cols; /* number of columns */
+ int lvert; /* width of left vertical line */
+ int rvert; /* width of right vertical line */
};
/*
@@ -215,7 +217,6 @@ struct tbl_opts {
*/
struct tbl_head {
int ident; /* 0 <= unique id < cols */
- int vert; /* width of preceding vertical line */
struct tbl_head *next;
struct tbl_head *prev;
};
@@ -238,7 +239,7 @@ enum tbl_cellt {
*/
struct tbl_cell {
struct tbl_cell *next;
- int vert; /* width of preceding vertical line */
+ int vert; /* width of subsequent vertical line */
enum tbl_cellt pos;
size_t spacing;
int flags;
@@ -260,7 +261,7 @@ struct tbl_row {
struct tbl_row *next;
struct tbl_cell *first;
struct tbl_cell *last;
- int vert; /* trailing vertical line */
+ int vert; /* width of left vertical line */
};
enum tbl_datt {
@@ -299,12 +300,13 @@ struct tbl_span {
struct tbl_row *layout; /* layout row */
struct tbl_dat *first;
struct tbl_dat *last;
+ struct tbl_span *prev;
+ struct tbl_span *next;
int line; /* parse line */
int flags;
#define TBL_SPAN_FIRST (1 << 0)
#define TBL_SPAN_LAST (1 << 1)
enum tbl_spant pos;
- struct tbl_span *next;
};
enum eqn_boxt {