From b0aec68c2e236344e79a7ee4949b2e5c450d13f8 Mon Sep 17 00:00:00 2001 From: Ingo Schwarze Date: Mon, 26 Jan 2015 18:42:30 +0000 Subject: Rework tbl(7) layout parsing: * Continue parsing even if part of the input is invalid. * Do not require whitespace between cell specifications. * Allow tabs as well as blanks between modifiers. * Mark the 'm' modifier as unsupported. * Parse and ignore the 'p' and 'v' modifiers. * Better warning and error messages. * Get rid of a static buffer. Improved functionality but minus 50 lines of code. --- read.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'read.c') diff --git a/read.c b/read.c index 5f381584..7d36778e 100644 --- a/read.c +++ b/read.c @@ -1,4 +1,4 @@ -/* $Id: read.c,v 1.117 2015/01/26 13:03:48 schwarze Exp $ */ +/* $Id: read.c,v 1.118 2015/01/26 18:42:30 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons * Copyright (c) 2010-2015 Ingo Schwarze @@ -171,6 +171,11 @@ static const char * const mandocerrs[MANDOCERR_MAX] = { "invalid escape sequence", "undefined string, using \"\"", + /* related to tables */ + "tbl line starts with span", + "tbl column starts with span", + "skipping vertical bar in tbl layout", + "generic error", /* related to equations */ @@ -184,7 +189,9 @@ static const char * const mandocerrs[MANDOCERR_MAX] = { "skipping unknown tbl option", "missing tbl option argument", "wrong tbl option argument size", - "no table layout cells specified", + "empty tbl layout", + "invalid character in tbl layout", + "unmatched parenthesis in tbl layout", "no table data cells specified", "ignore data in cell", "data block still open", @@ -222,7 +229,7 @@ static const char * const mandocerrs[MANDOCERR_MAX] = { "input too large", "unsupported control character", "unsupported roff request", - "unsupported table layout", + "unsupported tbl layout modifier", "ignoring macro in table", "eqn in tbl", }; -- cgit v1.2.3-56-ge451