aboutsummaryrefslogtreecommitdiffstatshomepage
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
commitc516e456aa90607875602699c239832b71f65359 (patch)
tree7e061471efcf32a09dbaf449f6912c38a6bdc6e3 /mandoc.h
parentb0aec68c2e236344e79a7ee4949b2e5c450d13f8 (diff)
downloadmandoc-c516e456aa90607875602699c239832b71f65359.tar.gz
mandoc-c516e456aa90607875602699c239832b71f65359.tar.zst
mandoc-c516e456aa90607875602699c239832b71f65359.zip
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.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/mandoc.h b/mandoc.h
index 02c404fc..82d6fd7a 100644
--- a/mandoc.h
+++ b/mandoc.h
@@ -1,4 +1,4 @@
-/* $Id: mandoc.h,v 1.189 2015/01/26 18:42:30 schwarze Exp $ */
+/* $Id: mandoc.h,v 1.190 2015/01/27 05:21:44 schwarze Exp $ */
/*
* Copyright (c) 2010, 2011, 2014 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2010-2015 Ingo Schwarze <schwarze@openbsd.org>
@@ -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 {