]> git.cameronkatri.com Git - mandoc.git/blobdiff - roff.7
Documented ie/el.
[mandoc.git] / roff.7
diff --git a/roff.7 b/roff.7
index 42e6e7e98d87bb7b977bd7bf65a28ac578fb7d3e..4c582588532132a287f94878c78808e653b251e6 100644 (file)
--- a/roff.7
+++ b/roff.7
@@ -1,4 +1,4 @@
-.\"    $Id: roff.7,v 1.2 2010/05/16 22:28:33 kristaps Exp $
+.\"    $Id: roff.7,v 1.5 2010/05/17 02:38:13 kristaps Exp $
 .\"
 .\" Copyright (c) 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 16 2010 $
+.Dd $Mdocdate: May 17 2010 $
 .Dt ROFF 7
 .Os
 .Sh NAME
@@ -65,9 +65,80 @@ Thus, the following are equivalent:
 .Sh REFERENCE
 This section is a canonical reference of all macros, arranged
 alphabetically.
+.Ss \&am
+The syntax of this macro is the same as that of
+.Sx \&ig ,
+except that a leading argument must be specified.
+It is ignored, as are its children.
+.Ss \&ami
+The syntax of this macro is the same as that of
+.Sx \&ig ,
+except that a leading argument must be specified.
+It is ignored, as are its children.
+.Ss \&am1
+The syntax of this macro is the same as that of
+.Sx \&ig ,
+except that a leading argument must be specified.
+It is ignored, as are its children.
+.Ss \&de
+The syntax of this macro is the same as that of
+.Sx \&ig ,
+except that a leading argument must be specified.
+It is ignored, as are its children.
+.Ss \&dei
+The syntax of this macro is the same as that of
+.Sx \&ig ,
+except that a leading argument must be specified.
+It is ignored, as are its children.
+.Ss \&de1
+The syntax of this macro is the same as that of
+.Sx \&ig ,
+except that a leading argument must be specified.
+It is ignored, as are its children.
+.Ss \&el
+The
+.Qq else
+half of an if/else conditional.
+Pops a result off the stack of conditional evaluations pushed by
+.Sx \&ie
+and uses it as its conditional.
+If no stack entries are present (e.g., due to no prior
+.Sx \&ie
+calls)
+then false is assumed.
+The syntax of this macro is similar to
+.Sx \&if
+except that the conditional is missing.
+.Ss \&ie
+The
+.Qq if
+half of an if/else conditional.
+The result of the conditional is pushed into a stack used by subsequent
+invocations of
+.Sx \&el ,
+which may be separated by any intervening input (or not exist at all).
+Its syntax is equivalent to
+.Sx \&if .
 .Ss \&if
-Begins a conditional.
-Has the following syntax:
+Begins a conditional that always evaluates to false.
+If a conditional is false, its children are not processed, but are
+syntactically interpreted to preserve the integrity of the input
+document.
+Thus,
+.Pp
+.D1 \&.if t \e .ig
+.Pp
+will discard the
+.Sq \&.ig ,
+which may lead to interesting results, but
+.Pp
+.D1 \&.if t \e .if t \e{\e
+.Pp
+will continue to syntactically interpret to the block close of the final
+conditional.
+Sub-conditionals, in this case, obviously inherit the truth value of
+the parent.
+This macro has the following syntax:
 .Pp
 .Bd -literal -offset indent -compact
 \&.if COND \e{\e
@@ -88,7 +159,8 @@ BODY...
 BODY
 .Ed
 .Pp
-COND is a conditional (TODO: document).
+COND is a conditional (for the time being, this always evaluates to
+false).
 .Pp
 If the BODY section is begun by an escaped brace
 .Sq \e{ ,
@@ -180,6 +252,11 @@ Historic groff did not accept white-space buffering the custom END tag
 for the
 .Sx \&ig
 macro.
+.It
+The
+.Sx \&if
+and family would print funny white-spaces with historic groff when
+depending on next-line syntax.
 .El
 .Sh AUTHORS
 The