]> git.cameronkatri.com Git - mandoc.git/blobdiff - mdoc.3
Handle nested, recursive mathematical subexpressions. This is
[mandoc.git] / mdoc.3
diff --git a/mdoc.3 b/mdoc.3
index f65b4c39e35fc17e6b56c60cea8fcceca60bed31..3620b15552a9720da17e5379083029a5af928ecb 100644 (file)
--- a/mdoc.3
+++ b/mdoc.3
@@ -1,6 +1,7 @@
-.\"    $Id: mdoc.3,v 1.45 2010/06/29 19:20:38 schwarze Exp $
+.\"    $Id: mdoc.3,v 1.49 2010/08/20 01:02:07 schwarze Exp $
 .\"
-.\" Copyright (c) 2009-2010 Kristaps Dzonsons <kristaps@bsd.lv>
+.\" Copyright (c) 2009, 2010 Kristaps Dzonsons <kristaps@bsd.lv>
+.\" Copyright (c) 2010 Ingo Schwarze <schwarze@openbsd.org>
 .\"
 .\" Permission to use, copy, modify, and distribute this software for any
 .\" purpose with or without fee is hereby granted, provided that the above
@@ -14,7 +15,7 @@
 .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 .\"
-.Dd $Mdocdate: June 29 2010 $
+.Dd $Mdocdate: August 20 2010 $
 .Dt MDOC 3
 .Os
 .Sh NAME
@@ -29,7 +30,6 @@
 .Nd mdoc macro compiler library
 .Sh SYNOPSIS
 .In mandoc.h
-.In regs.h
 .In mdoc.h
 .Vt extern const char * const * mdoc_macronames;
 .Vt extern const char * const * mdoc_argnames;
@@ -37,7 +37,6 @@
 .Fo mdoc_alloc
 .Fa "struct regset *regs"
 .Fa "void *data"
-.Fa "int pflags"
 .Fa "mandocmsg msgs"
 .Fc
 .Ft int
@@ -124,10 +123,6 @@ The
 .Fa data
 pointer is passed to
 .Fa msgs .
-The
-.Fa pflags
-arguments are defined in
-.Pa mdoc.h .
 Returns NULL on failure.
 If non-NULL, the pointer must be freed with
 .Fn mdoc_free .
@@ -257,10 +252,10 @@ 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.
-.Ss Badly nested blocks
-A special kind of node is available to end the formatting
-associated with a given block before the physical end of that block.
-Such an ENDBODY node has a non-null
+.Ss Badly-nested Blocks
+The ENDBODY node is available to end the formatting associated
+with a given block before the physical end of that block.
+It has a non-null
 .Va end
 field, is of the BODY
 .Va type ,
@@ -297,25 +292,32 @@ BLOCK Ao
 TEXT end
 .Ed
 .Pp
-Here, the formatting of the Ao block extends from TEXT ao to TEXT ac,
-while the formatting of the Bo block extends from TEXT bo to TEXT bc,
-rendering like this in
+Here, the formatting of the
+.Sq \&Ao
+block extends from TEXT ao to TEXT ac,
+while the formatting of the
+.Sq \&Bo
+block extends from TEXT bo to TEXT bc.
+It renders as follows in
 .Fl T Ns Cm ascii
 mode:
+.Pp
 .Dl <ao [bo ac> bc] end
-Support for badly nested blocks is only provided for backward
+.Pp
+Support for badly-nested blocks is only provided for backward
 compatibility with some older
 .Xr mdoc 7
 implementations.
-Using them in new code is stronly discouraged:
-Some frontends, in particular
-.Fl T Ns Cm html ,
-are unable to render them in any meaningful way,
-many other
-.Xr mdoc 7
-implementations do not support them, and even for those that do,
-the behaviour is not well-defined, in particular when using multiple
-levels of badly nested blocks.
+Using badly-nested blocks is
+.Em strongly discouraged :
+the
+.Fl T Ns Cm html
+and
+.Fl T Ns Cm xhtml
+front-ends are unable to render them in any meaningful way.
+Furthermore, behaviour when encountering badly-nested blocks is not
+consistent across troff implementations, especially when using  multiple
+levels of badly-nested blocks.
 .Sh EXAMPLES
 The following example reads lines from stdin and parses them, operating
 on the finished parse tree with
@@ -331,7 +333,7 @@ int line;
 
 bzero(&regs, sizeof(struct regset));
 line = 1;
-mdoc = mdoc_alloc(&regs, NULL, 0, NULL);
+mdoc = mdoc_alloc(&regs, NULL, NULL);
 buf = NULL;
 alloc_len = 0;