summaryrefslogtreecommitdiffstats
path: root/out.h
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2017-06-08 18:11:22 +0000
committerIngo Schwarze <schwarze@openbsd.org>2017-06-08 18:11:22 +0000
commit3fb3595e2dd4a3aa729120f074bd64eba84f7a4d (patch)
tree8f51ea63f0dd3f7cace9bf94c0855d51bc4258ba /out.h
parentad29d8dbe925e8f0d680007ebf3c95aec8351f84 (diff)
downloadmandoc-3fb3595e2dd4a3aa729120f074bd64eba84f7a4d.tar.gz
Implement w layout specifier (minimum column width).
Improve width calculation of text blocks. Reduces the groff/mandoc diff in Base+Xenocara by about 800 lines.
Diffstat (limited to 'out.h')
-rw-r--r--out.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/out.h b/out.h
index f7aeea38..1db24ff0 100644
--- a/out.h
+++ b/out.h
@@ -41,14 +41,16 @@ struct roffsu {
double scale;
};
+typedef size_t (*tbl_sulen)(const struct roffsu *, void *);
typedef size_t (*tbl_strlen)(const char *, void *);
typedef size_t (*tbl_len)(size_t, void *);
struct rofftbl {
+ tbl_sulen sulen; /* calculate scaling unit length */
tbl_strlen slen; /* calculate string length */
tbl_len len; /* produce width of empty space */
struct roffcol *cols; /* master column specifiers */
- void *arg; /* passed to slen and len */
+ void *arg; /* passed to sulen, slen, and len */
};
#define SCALE_VS_INIT(p, v) \