version 1.182, 2015/01/15 04:26:40 |
version 1.187, 2015/01/26 00:57:22 |
|
|
/* $Id$ */ |
/* $Id$ */ |
/* |
/* |
* Copyright (c) 2010, 2011, 2014 Kristaps Dzonsons <kristaps@bsd.lv> |
* Copyright (c) 2010, 2011, 2014 Kristaps Dzonsons <kristaps@bsd.lv> |
* Copyright (c) 2010-2014 Ingo Schwarze <schwarze@openbsd.org> |
* Copyright (c) 2010-2015 Ingo Schwarze <schwarze@openbsd.org> |
* |
* |
* Permission to use, copy, modify, and distribute this software for any |
* Permission to use, copy, modify, and distribute this software for any |
* purpose with or without fee is hereby granted, provided that the above |
* purpose with or without fee is hereby granted, provided that the above |
Line 31 enum mandoclevel { |
|
Line 31 enum mandoclevel { |
|
MANDOCLEVEL_RESERVED, |
MANDOCLEVEL_RESERVED, |
MANDOCLEVEL_WARNING, /* warnings: syntax, whitespace, etc. */ |
MANDOCLEVEL_WARNING, /* warnings: syntax, whitespace, etc. */ |
MANDOCLEVEL_ERROR, /* input has been thrown away */ |
MANDOCLEVEL_ERROR, /* input has been thrown away */ |
MANDOCLEVEL_FATAL, /* input is borked */ |
MANDOCLEVEL_UNSUPP, /* input needs unimplemented features */ |
MANDOCLEVEL_BADARG, /* bad argument in invocation */ |
MANDOCLEVEL_BADARG, /* bad argument in invocation */ |
MANDOCLEVEL_SYSERR, /* system error */ |
MANDOCLEVEL_SYSERR, /* system error */ |
MANDOCLEVEL_MAX |
MANDOCLEVEL_MAX |
Line 136 enum mandocerr { |
|
Line 136 enum mandocerr { |
|
MANDOCERR_EQNEOF, /* unexpected end of equation */ |
MANDOCERR_EQNEOF, /* unexpected end of equation */ |
|
|
/* related to tables */ |
/* related to tables */ |
MANDOCERR_TBL, /* bad table syntax */ |
MANDOCERR_TBLOPT_ALPHA, /* non-alphabetic character in tbl options */ |
MANDOCERR_TBLOPT, /* bad table option */ |
MANDOCERR_TBLOPT_BAD, /* skipping unknown tbl option: option */ |
MANDOCERR_TBLLAYOUT, /* bad table layout */ |
MANDOCERR_TBLOPT_NOARG, /* missing tbl option argument */ |
|
MANDOCERR_TBLOPT_ARGSZ, /* wrong tbl option argument size */ |
MANDOCERR_TBLNOLAYOUT, /* no table layout cells specified */ |
MANDOCERR_TBLNOLAYOUT, /* no table layout cells specified */ |
MANDOCERR_TBLNODATA, /* no table data cells specified */ |
MANDOCERR_TBLNODATA, /* no table data cells specified */ |
MANDOCERR_TBLIGNDATA, /* ignore data in cell */ |
MANDOCERR_TBLIGNDATA, /* ignore data in cell */ |
MANDOCERR_TBLBLOCK, /* data block still open */ |
MANDOCERR_TBLBLOCK, /* data block still open */ |
MANDOCERR_TBLEXTRADAT, /* ignoring extra data cells */ |
MANDOCERR_TBLEXTRADAT, /* ignoring extra data cells */ |
MANDOCERR_TBLMACRO, /* ignoring macro in table: macro */ |
|
|
|
/* related to document structure and macros */ |
/* related to document structure and macros */ |
MANDOCERR_FILE, /* cannot open file */ |
MANDOCERR_FILE, /* cannot open file */ |
MANDOCERR_TOOLARGE, /* input too large */ |
|
MANDOCERR_ROFFLOOP, /* input stack limit exceeded, infinite loop? */ |
MANDOCERR_ROFFLOOP, /* input stack limit exceeded, infinite loop? */ |
MANDOCERR_BADCHAR, /* skipping bad character: number */ |
MANDOCERR_CHAR_BAD, /* skipping bad character: number */ |
MANDOCERR_MACRO, /* skipping unknown macro: macro */ |
MANDOCERR_MACRO, /* skipping unknown macro: macro */ |
|
MANDOCERR_REQ_INSEC, /* skipping insecure request: request */ |
MANDOCERR_IT_STRAY, /* skipping item outside list: It ... */ |
MANDOCERR_IT_STRAY, /* skipping item outside list: It ... */ |
MANDOCERR_TA_STRAY, /* skipping column outside column list: Ta */ |
MANDOCERR_TA_STRAY, /* skipping column outside column list: Ta */ |
MANDOCERR_BLK_NOTOPEN, /* skipping end of block that is not open */ |
MANDOCERR_BLK_NOTOPEN, /* skipping end of block that is not open */ |
|
MANDOCERR_RE_NOTOPEN, /* fewer RS blocks open, skipping: RE arg */ |
MANDOCERR_BLK_BROKEN, /* inserting missing end of block: macro ... */ |
MANDOCERR_BLK_BROKEN, /* inserting missing end of block: macro ... */ |
MANDOCERR_BLK_NOEND, /* appending missing end of block: macro */ |
MANDOCERR_BLK_NOEND, /* appending missing end of block: macro */ |
|
|
Line 173 enum mandocerr { |
|
Line 174 enum mandocerr { |
|
MANDOCERR_ARG_EXCESS, /* skipping excess arguments: macro ... args */ |
MANDOCERR_ARG_EXCESS, /* skipping excess arguments: macro ... args */ |
MANDOCERR_DIVZERO, /* divide by zero */ |
MANDOCERR_DIVZERO, /* divide by zero */ |
|
|
|
MANDOCERR_UNSUPP, /* ===== start of unsupported features ===== */ |
|
|
|
MANDOCERR_TOOLARGE, /* input too large */ |
|
MANDOCERR_CHAR_UNSUPP, /* unsupported control character: number */ |
|
MANDOCERR_REQ_UNSUPP, /* unsupported roff request: request */ |
|
MANDOCERR_TBLLAYOUT, /* unsupported table layout */ |
|
MANDOCERR_TBLMACRO, /* ignoring macro in table: macro */ |
|
|
MANDOCERR_MAX |
MANDOCERR_MAX |
}; |
}; |
|
|
struct tbl_opts { |
struct tbl_opts { |
char tab; /* cell-separator */ |
char tab; /* cell-separator */ |
char decimal; /* decimal point */ |
char decimal; /* decimal point */ |
int linesize; |
|
int opts; |
int opts; |
#define TBL_OPT_CENTRE (1 << 0) |
#define TBL_OPT_CENTRE (1 << 0) |
#define TBL_OPT_EXPAND (1 << 1) |
#define TBL_OPT_EXPAND (1 << 1) |
Line 394 enum mandoc_esc { |
|
Line 402 enum mandoc_esc { |
|
ESCAPE_NUMBERED, /* a numbered glyph */ |
ESCAPE_NUMBERED, /* a numbered glyph */ |
ESCAPE_UNICODE, /* a unicode codepoint */ |
ESCAPE_UNICODE, /* a unicode codepoint */ |
ESCAPE_NOSPACE, /* suppress space if the last on a line */ |
ESCAPE_NOSPACE, /* suppress space if the last on a line */ |
ESCAPE_SKIPCHAR /* skip the next character */ |
ESCAPE_SKIPCHAR, /* skip the next character */ |
|
ESCAPE_OVERSTRIKE /* overstrike all chars in the argument */ |
}; |
}; |
|
|
typedef void (*mandocmsg)(enum mandocerr, enum mandoclevel, |
typedef void (*mandocmsg)(enum mandocerr, enum mandoclevel, |