=================================================================== RCS file: /cvs/mandoc/Attic/mdoc.3,v retrieving revision 1.38 retrieving revision 1.41 diff -u -p -r1.38 -r1.41 --- mandoc/Attic/mdoc.3 2010/05/25 21:38:05 1.38 +++ mandoc/Attic/mdoc.3 2010/05/30 22:56:02 1.41 @@ -1,4 +1,4 @@ -.\" $Id: mdoc.3,v 1.38 2010/05/25 21:38:05 kristaps Exp $ +.\" $Id: mdoc.3,v 1.41 2010/05/30 22:56:02 kristaps Exp $ .\" .\" Copyright (c) 2009-2010 Kristaps Dzonsons .\" @@ -14,10 +14,11 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd $Mdocdate: May 25 2010 $ +.Dd $Mdocdate: May 30 2010 $ .Dt MDOC 3 .Os .Sh NAME +.Nm mdoc , .Nm mdoc_alloc , .Nm mdoc_endparse , .Nm mdoc_free , @@ -111,9 +112,8 @@ Function descriptions follow: Allocates a parsing structure. The .Fa data -pointer is passed to callbacks in -.Fa cb , -which are documented further in the header file. +pointer is passed to +.Fa msgs . The .Fa pflags arguments are defined in @@ -221,9 +221,7 @@ where capitalised non-terminals represent nodes. .It mnode \(<- BLOCK | ELEMENT | TEXT .It BLOCK -\(<- (HEAD [TEXT])+ [BODY [TEXT]] [TAIL [TEXT]] -.It BLOCK -\(<- BODY [TEXT] [TAIL [TEXT]] +\(<- HEAD [TEXT] (BODY [TEXT])+ [TAIL [TEXT]] .It ELEMENT \(<- TEXT* .It HEAD @@ -237,12 +235,14 @@ where capitalised non-terminals represent nodes. .El .Pp Of note are the TEXT nodes following the HEAD, BODY and TAIL nodes of -the BLOCK production. -These refer to punctuation marks. +the BLOCK production: these refer to punctuation marks. Furthermore, although a TEXT node will generally have a non-zero-length string, in the specific case of .Sq \&.Bd \-literal , an empty line will produce a zero-length string. +Multiple body parts are only found in invocations of +.Sq \&Bl \-column , +where a new body introduces a new phrase. .Sh EXAMPLES The following example reads lines from stdin and parses them, operating on the finished parse tree with