=================================================================== RCS file: /cvs/mandoc/man.h,v retrieving revision 1.2 retrieving revision 1.8 diff -u -p -r1.2 -r1.8 --- mandoc/man.h 2009/03/23 15:20:51 1.2 +++ mandoc/man.h 2009/04/02 06:51:44 1.8 @@ -1,4 +1,4 @@ -/* $Id: man.h,v 1.2 2009/03/23 15:20:51 kristaps Exp $ */ +/* $Id: man.h,v 1.8 2009/04/02 06:51:44 kristaps Exp $ */ /* * Copyright (c) 2009 Kristaps Dzonsons * @@ -41,7 +41,10 @@ #define MAN_B 17 #define MAN_I 18 #define MAN_IR 19 -#define MAN_MAX 20 +#define MAN_RI 20 +#define MAN_br 21 +#define MAN_na 22 +#define MAN_MAX 23 enum man_type { MAN_TEXT, @@ -51,10 +54,10 @@ enum man_type { struct man_meta { int msec; - char *vol; time_t date; + char *vol; char *title; - char *os; + char *source; }; struct man_node { @@ -72,17 +75,25 @@ struct man_node { char *string; }; +#define MAN_IGN_MACRO (1 << 0) /* Ignore unknown macros. */ + extern const char *const *man_macronames; +struct man_cb { + int (*man_warn)(void *, int, int, const char *); + int (*man_err)(void *, int, int, const char *); +}; + __BEGIN_DECLS struct man; void man_free(struct man *); -struct man *man_alloc(void); +struct man *man_alloc(void *, int, const struct man_cb *); void man_reset(struct man *); int man_parseln(struct man *, int, char *buf); int man_endparse(struct man *); +int man_valid_post(struct man *); const struct man_node *man_node(const struct man *); const struct man_meta *man_meta(const struct man *);