From 93b63a18346d62fd68aae5802b9439f7964043a2 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Sun, 26 Feb 2017 20:22:10 -0800 Subject: doc: block syntax horizontal and vertical. * txr.1: Document that block syntax can be horizontal or vertical, and likewise that the accept and fail directives can be in horizontal or vertical context. --- txr.1 | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/txr.1 b/txr.1 index 48b3de81..34289dd4 100644 --- a/txr.1 +++ b/txr.1 @@ -6538,6 +6538,22 @@ and directives introduce implicit anonymous blocks, as do function bodies. +Blocks must be terminated by +.code "@(end)" +and can be vertical: + +.cblk +.mets @(block <> [ name ]) + ... +.mets @(end) +.cble + +or horizontal: + +.cblk +.mets @(block <> [ name ])...@(end) +.cble + .NP* Block Scope The names of blocks are in a distinct namespace from the variable binding @@ -6635,6 +6651,10 @@ a failed block. Immediately terminate the innermost enclosing anonymous block, as if that block failed to match. +The +.code @(fail) +directive has a vertical and horizontal form. + If the implicit block introduced by .code @(skip) is terminated in this manner, @@ -6681,6 +6701,12 @@ of that .code @(accept) and the input position which was in effect at that time. +.code @(accept) +has a vertical and horizontal form. In the horizontal form, +it communicates a horizontal input position. A horizontal input +position thus communicated will only take effect if the block being +terminated had been suspended on the same line of input. + If the implicit block introduced by .code @(skip) is terminated by -- cgit v1.2.3