version 1.18, 2013/06/02 03:48:26 |
version 1.23, 2014/01/05 20:26:36 |
|
|
.Nm mparse_strlevel |
.Nm mparse_strlevel |
.Nd mandoc macro compiler library |
.Nd mandoc macro compiler library |
.Sh LIBRARY |
.Sh LIBRARY |
.Lb mandoc |
.Lb libmandoc |
.Sh SYNOPSIS |
.Sh SYNOPSIS |
.In man.h |
.In man.h |
.In mdoc.h |
.In mdoc.h |
|
|
.Fa "const struct man *man" |
.Fa "const struct man *man" |
.Fc |
.Fc |
.Ft "struct mchars *" |
.Ft "struct mchars *" |
.Fn mchars_alloc |
.Fn mchars_alloc "void" |
.Ft void |
.Ft void |
.Fn mchars_free "struct mchars *p" |
.Fn mchars_free "struct mchars *p" |
.Ft char |
.Ft char |
|
|
.Fa "const struct mchars *p" |
.Fa "const struct mchars *p" |
.Fa "const char *cp" |
.Fa "const char *cp" |
.Fa "size_t sz" |
.Fa "size_t sz" |
.Ft "const char *" |
|
.Fc |
.Fc |
.Ft "const struct mdoc_meta *" |
.Ft "const struct mdoc_meta *" |
.Fo mdoc_meta |
.Fo mdoc_meta |
|
|
.Fc |
.Fc |
.Ft void |
.Ft void |
.Fo mparse_alloc |
.Fo mparse_alloc |
.Fa "enum mparset type" |
.Fa "enum mparset inttype" |
.Fa "enum mandoclevel wlevel" |
.Fa "enum mandoclevel wlevel" |
.Fa "mandocmsg msg" |
.Fa "mandocmsg mmsg" |
.Fa "void *msgarg" |
.Fa "char *defos" |
|
.Fa "int quick" |
.Fc |
.Fc |
.Ft void |
.Ft void |
.Fo mparse_free |
.Fo mparse_free |
.Fa "struct mparse *parse" |
.Fa "struct mparse *parse" |
.Fc |
.Fc |
.Ft void |
.Ft const char * |
.Fo mparse_getkeep |
.Fo mparse_getkeep |
.Fa "const struct mparse *parse" |
.Fa "const struct mparse *parse" |
.Fc |
.Fc |
Line 204 An escape sequence classification. |
|
Line 204 An escape sequence classification. |
|
A fatal error, error, or warning message during parsing. |
A fatal error, error, or warning message during parsing. |
.It Vt "enum mandoclevel" |
.It Vt "enum mandoclevel" |
A classification of an |
A classification of an |
.Vt "enum mandoclevel" |
.Vt "enum mandocerr" |
as regards system operation. |
as regards system operation. |
.It Vt "struct mchars" |
.It Vt "struct mchars" |
An opaque pointer to an object allowing for translation between |
An opaque pointer to an object allowing for translation between |
|
|
.Pa mdoc.c . |
.Pa mdoc.c . |
.It Fn mparse_alloc |
.It Fn mparse_alloc |
Allocate a parser. |
Allocate a parser. |
|
The arguments have the following effect: |
|
.Bl -tag -offset 5n -width inttype |
|
.It Ar inttype |
|
When set to |
|
.Dv MPARSE_MDOC |
|
or |
|
.Dv MPARSE_MAN , |
|
only that parser will be used. |
|
With |
|
.Dv MPARSE_AUTO , |
|
the document type will be automatically detected. |
|
.It Ar wlevel |
|
Can be set to |
|
.Dv MANDOCLEVEL_FATAL , |
|
.Dv MANDOCLEVEL_ERROR , |
|
or |
|
.Dv MANDOCLEVEL_WARNING . |
|
Messages below the selected level will be suppressed. |
|
.It Ar mmsg |
|
A callback function to handle errors and warnings. |
|
See |
|
.Pa main.c |
|
for an example. |
|
.It Ar defos |
|
A default string for the |
|
.Xr mdoc 7 |
|
.Sq \&Os |
|
macro, overriding the |
|
.Dv OSNAME |
|
preprocessor definition and the results of |
|
.Xr uname 3 . |
|
.It Ar quick |
|
When set, parsing is aborted after the NAME section. |
|
This is for example useful to quickly build minimal databases. |
|
.El |
|
.Pp |
The same parser may be used for multiple files so long as |
The same parser may be used for multiple files so long as |
.Fn mparse_reset |
.Fn mparse_reset |
is called between parses. |
is called between parses. |
Line 680 levels of badly-nested blocks. |
|
Line 716 levels of badly-nested blocks. |
|
The |
The |
.Nm |
.Nm |
library was written by |
library was written by |
.An Kristaps Dzonsons , |
.An Kristaps Dzonsons Aq Mt kristaps@bsd.lv . |
.Mt kristaps@bsd.lv . |
|