=================================================================== RCS file: /cvs/mandoc/mandoc.3,v retrieving revision 1.12 retrieving revision 1.17 diff -u -p -r1.12 -r1.17 --- mandoc/mandoc.3 2011/07/11 08:43:27 1.12 +++ mandoc/mandoc.3 2012/01/13 15:27:14 1.17 @@ -1,4 +1,4 @@ -.\" $Id: mandoc.3,v 1.12 2011/07/11 08:43:27 kristaps Exp $ +.\" $Id: mandoc.3,v 1.17 2012/01/13 15:27:14 joerg Exp $ .\" .\" Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons .\" Copyright (c) 2010 Ingo Schwarze @@ -15,13 +15,14 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd $Mdocdate: July 11 2011 $ +.Dd $Mdocdate: January 13 2012 $ .Dt MANDOC 3 .Os .Sh NAME .Nm mandoc , .Nm mandoc_escape , .Nm man_meta , +.Nm man_mparse , .Nm man_node , .Nm mchars_alloc , .Nm mchars_free , @@ -33,6 +34,8 @@ .Nm mdoc_node , .Nm mparse_alloc , .Nm mparse_free , +.Nm mparse_getkeep , +.Nm mparse_keep , .Nm mparse_readfd , .Nm mparse_reset , .Nm mparse_result , @@ -47,14 +50,18 @@ .In mandoc.h .Ft "enum mandoc_esc" .Fo mandoc_escape -.Fa "const char **in" -.Fa "const char **seq" -.Fa "int *len" +.Fa "const char **end" +.Fa "const char **start" +.Fa "int *sz" .Fc .Ft "const struct man_meta *" .Fo man_meta .Fa "const struct man *man" .Fc +.Ft "const struct mparse *" +.Fo man_mparse +.Fa "const struct man *man" +.Fc .Ft "const struct man_node *" .Fo man_node .Fa "const struct man *man" @@ -69,14 +76,14 @@ .Fn mchars_num2uc "const char *cp" "size_t sz" .Ft "const char *" .Fo mchars_spec2str -.Fa "struct mchars *p" +.Fa "const struct mchars *p" .Fa "const char *cp" .Fa "size_t sz" .Fa "size_t *rsz" .Fc .Ft int .Fo mchars_spec2cp -.Fa "struct mchars *p" +.Fa "const struct mchars *p" .Fa "const char *cp" .Fa "size_t sz" .Ft "const char *" @@ -100,6 +107,14 @@ .Fo mparse_free .Fa "struct mparse *parse" .Fc +.Ft void +.Fo mparse_getkeep +.Fa "const struct mparse *parse" +.Fc +.Ft void +.Fo mparse_keep +.Fa "struct mparse *parse" +.Fc .Ft "enum mandoclevel" .Fo mparse_readfd .Fa "struct mparse *parse" @@ -219,7 +234,9 @@ messages emitted by the parser. .It Fn mandoc_escape Scan an escape sequence, i.e., a character string beginning with .Sq \e . -Pass a pointer to this string as +Pass a pointer to the character after the +.Sq \e +as .Va end ; it will be set to the supremum of the parsed escape sequence unless returning @@ -244,6 +261,8 @@ may be Obtain the meta-data of a successful parse. This may only be used on a pointer returned by .Fn mparse_result . +.It Fn man_mparse +Get the parser used for the current output. .It Fn man_node Obtain the root node of a successful parse. This may only be used on a pointer returned by @@ -294,6 +313,15 @@ must be called to free the memory allocated by this fu .It Fn mparse_free Free all memory allocated by .Fn mparse_alloc . +.It Fn mparse_getkeep +Acquire the keep buffer. +Must follow a call of +.Fn mparse_keep . +.It Fn mparse_keep +Instruct the parser to retain a copy of its parsed input. +This can be acquired with subsequent +.Fn mparse_getkeep +calls. .It Fn mparse_readfd Parse a file or file descriptor. If @@ -568,4 +596,5 @@ levels of badly-nested blocks. The .Nm library was written by -.An Kristaps Dzonsons Aq kristaps@bsd.lv . +.An Kristaps Dzonsons , +.Mt kristaps@bsd.lv .