-.\" $Id: eqn.7,v 1.33 2015/01/29 00:33:57 schwarze Exp $
+.\" $Id: eqn.7,v 1.36 2017/07/20 11:07:27 schwarze Exp $
.\"
.\" Copyright (c) 2011 Kristaps Dzonsons <kristaps@bsd.lv>
.\" Copyright (c) 2014 Ingo Schwarze <schwarze@openbsd.org>
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.Dd $Mdocdate: January 29 2015 $
+.Dd $Mdocdate: July 20 2017 $
.Dt EQN 7
.Os
.Sh NAME
.Bd -literal -offset indent
eqn : box | eqn box
box : text
- | \*q{\*q eqn \*q}\*q
- | \*qdefine\*q text text
- | \*qndefine\*q text text
- | \*qtdefine\*q text text
- | \*qgfont\*q text
- | \*qgsize\*q text
- | \*qset\*q text text
- | \*qundef\*q text
- | \*qsqrt\*q box
+ | \(dq{\(dq eqn \(dq}\(dq
+ | \(dqdefine\(dq text text
+ | \(dqndefine\(dq text text
+ | \(dqtdefine\(dq text text
+ | \(dqgfont\(dq text
+ | \(dqgsize\(dq text
+ | \(dqset\(dq text text
+ | \(dqundef\(dq text
+ | \(dqsqrt\(dq box
| box pos box
| box mark
- | \*qmatrix\*q \*q{\*q [col \*q{\*q list \*q}\*q ]*
- | pile \*q{\*q list \*q}\*q
+ | \(dqmatrix\(dq \(dq{\(dq [col \(dq{\(dq list \(dq}\(dq ]*
+ | pile \(dq{\(dq list \(dq}\(dq
| font box
- | \*qsize\*q text box
- | \*qleft\*q text eqn [\*qright\*q text]
-col : \*qlcol\*q | \*qrcol\*q | \*qccol\*q | \*qcol\*q
-text : [^space\e\*q]+ | \e\*q.*\e\*q
-pile : \*qlpile\*q | \*qcpile\*q | \*qrpile\*q | \*qpile\*q
-pos : \*qover\*q | \*qsup\*q | \*qsub\*q | \*qto\*q | \*qfrom\*q
-mark : \*qdot\*q | \*qdotdot\*q | \*qhat\*q | \*qtilde\*q | \*qvec\*q
- | \*qdyad\*q | \*qbar\*q | \*qunder\*q
-font : \*qroman\*q | \*qitalic\*q | \*qbold\*q | \*qfat\*q
+ | \(dqsize\(dq text box
+ | \(dqleft\(dq text eqn [\(dqright\(dq text]
+col : \(dqlcol\(dq | \(dqrcol\(dq | \(dqccol\(dq | \(dqcol\(dq
+text : [^space\e\(dq]+ | \e\(dq.*\e\(dq
+pile : \(dqlpile\(dq | \(dqcpile\(dq | \(dqrpile\(dq | \(dqpile\(dq
+pos : \(dqover\(dq | \(dqsup\(dq | \(dqsub\(dq | \(dqto\(dq | \(dqfrom\(dq
+mark : \(dqdot\(dq | \(dqdotdot\(dq | \(dqhat\(dq | \(dqtilde\(dq | \(dqvec\(dq
+ | \(dqdyad\(dq | \(dqbar\(dq | \(dqunder\(dq
+font : \(dqroman\(dq | \(dqitalic\(dq | \(dqbold\(dq | \(dqfat\(dq
list : eqn
- | list \*qabove\*q eqn
+ | list \(dqabove\(dq eqn
space : [\e^~ \et]
.Ed
.Pp
differential), times (multiply), cdot (center-dot), nothing (zero-width
space), approx (approximately equals), prime (prime), half (one-half),
partial (partial differential), inf (infinity), >> (much greater), <<
-(much less), \-> (left arrow), <\- (right arrow), +\- (plus-minus), !=
+(much less), <\- (left arrow), \-> (right arrow), +\- (plus-minus), !=
(not equal), == (equivalence), <= (less-than-equal), and >=
(more-than-equal).
The character escape sequences documented in
.Ar val .
This allows for arbitrary enclosure of terms (not just quotes), such as
.Pp
-.D1 Cm define Ar foo 'bar baz'
+.D1 Cm define Ar foo \(aqbar baz\(aq
.D1 Cm define Ar foo cbar bazc
.Pp
It is an error to have an empty
Definitions can create arbitrary strings, for example, the following is
a legal construction.
.Bd -literal -offset indent
-define foo 'define'
-foo bar 'baz'
+define foo \(aqdefine\(aq
+foo bar \(aqbaz\(aq
.Ed
.Pp
Self-referencing definitions will raise an error.
.Bl -dash -compact
.It
The text string
-.Sq \e\*q
+.Sq \e\(dq
is interpreted as a literal quote in troff.
In mandoc, this is interpreted as a comment.
.It