aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/mdoc.3
diff options
context:
space:
mode:
authorKristaps Dzonsons <kristaps@bsd.lv>2010-05-30 22:56:02 +0000
committerKristaps Dzonsons <kristaps@bsd.lv>2010-05-30 22:56:02 +0000
commitc13027734e9d36c96b4fd039e21c3112330c80c1 (patch)
tree68a38c78005cc5fa2efaaa78bb7dcfe23b7de716 /mdoc.3
parentb8ca66ed11088edca84601f2bbe21a94cd5392ef (diff)
downloadmandoc-c13027734e9d36c96b4fd039e21c3112330c80c1.tar.gz
mandoc-c13027734e9d36c96b4fd039e21c3112330c80c1.tar.zst
mandoc-c13027734e9d36c96b4fd039e21c3112330c80c1.zip
Migrate `Bl -column' phrases to be MDOC_BODY instead of MDOC_HEAD. This
will make it easy for re-entrant parsing of `Ta' macros to fit in with standard closure rules. Added some more regressions for `Bl -column'. Note that one should fail, as documented in the TODO file. Recorded change of AST BNF in mdoc.3.
Diffstat (limited to 'mdoc.3')
-rw-r--r--mdoc.314
1 files changed, 7 insertions, 7 deletions
diff --git a/mdoc.3 b/mdoc.3
index 89e90ecc..da963ca5 100644
--- a/mdoc.3
+++ b/mdoc.3
@@ -1,4 +1,4 @@
-.\" $Id: mdoc.3,v 1.40 2010/05/25 22:16:59 kristaps Exp $
+.\" $Id: mdoc.3,v 1.41 2010/05/30 22:56:02 kristaps Exp $
.\"
.\" Copyright (c) 2009-2010 Kristaps Dzonsons <kristaps@bsd.lv>
.\"
@@ -14,7 +14,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: May 25 2010 $
+.Dd $Mdocdate: May 30 2010 $
.Dt MDOC 3
.Os
.Sh NAME
@@ -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