gbranden pushed a commit to branch master
in repository groff.
commit 11a405ebb8687fcb0a7943f21b59992f7976c607
Author: G. Branden Robinson <[email protected]>
AuthorDate: Tue Dec 30 03:59:42 2025 -0600
[doc,man]: Continue revising "Delimiters" stuff.
---
doc/groff.texi.in | 69 +++++++++++++++++++++++++++++++++++++++++-----------
man/groff.7.man | 33 +++++++++++++++++++------
man/groff_diff.7.man | 5 +++-
3 files changed, 84 insertions(+), 23 deletions(-)
diff --git a/doc/groff.texi.in b/doc/groff.texi.in
index fbe153499..73133c387 100644
--- a/doc/groff.texi.in
+++ b/doc/groff.texi.in
@@ -8040,12 +8040,39 @@ if the character after the escape character would be
valid.
@cindex @code{\S}, delimiters allowed by
@cindex @code{\v}, delimiters allowed by
@cindex @code{\x}, delimiters allowed by
-Conditional expressions@footnote{@xref{Operators in Conditionals}.}
-prohibit delimiters that are meaningful in numeric expressions, because
-the latter are a subset of the former. The escape sequences @code{\D},
-@code{\h}, @code{\H}, @code{\l}, @code{\L}, @code{\N}, @code{\R},
-@code{\s}, @code{\S}, @code{\v}, and @code{\x} similarly prohibit them
-because they accept numeric expressions as (or within) their arguments.
+The escape sequences
+@code{\D},
+@code{\h},
+@code{\H},
+@code{\l},
+@code{\L},
+@code{\N},
+@code{\R},
+@code{\s},
+@code{\S},
+@code{\v},
+and
+@code{\x}
+prohibit delimiters that are meaningful in numeric expressions,
+because they accept numeric expressions as
+(or within)
+their arguments.
+For consistency,
+GNU
+@command{troff} @c GNU
+prohibits the same delimiters in the argument to the
+@code{tl}
+request.
+The
+@code{if},
+@code{ie},
+and
+@code{while}
+requests each interpret their first argument
+as a conditional expression@footnote{@xref{Operators in Conditionals}.};
+only characters that are not meaningful as operators
+in that context
+can be used as output comparison delimiters.
@itemize @bullet
@item
@@ -8108,9 +8135,14 @@ any escape sequences other than @code{\%}, @code{\:},
@code{\@{},
@cindex depth, interpolation
@cindex nesting depth, of interpolations
@cindex depth, nesting, of interpolations
-Delimiter syntax is complex and flexible primarily for historical
-reasons; the foregoing restrictions need be kept in mind mainly when
-using @code{groff} in @acronym{AT&T} compatibility mode.
+Delimiter syntax is flexible
+(and laborious to describe)
+primarily for historical reasons;
+the foregoing restrictions need be kept in mind mainly when using
+GNU
+@command{troff} @c GNU
+in @acronym{AT&T} compatibility mode.
+Normally,
GNU
@command{troff}
keeps track of the nesting depth of escape sequence interpolations,
@@ -8140,10 +8172,16 @@ $ groff -T ps
@error{} "Wet'+200i" is 14415860 units wide.
@endExample
-We see here that in compatibility mode, the part of the argument after
-the @code{'} delimiter escapes from its context and, if nefariously
-crafted, influences the computation of the @var{wd} register's value in
-a surprising way.
+We see here that in compatibility mode,
+the part of the argument after the
+@code{'}
+delimiter escapes,
+if you will,
+from its context and,
+if nefariously crafted,
+influences the computation of the
+@var{wd}
+register's value in a surprising way.
@c END Keep (roughly) parallel with subsection "Delimiters" of groff(7).
@node Comments, Registers, Formatter Instructions, GNU troff Reference
@@ -20670,7 +20708,10 @@ escape sequence),
string expressions
(as with the
@code{\w}
-escape sequence),
+escape sequence
+and
+@code{tl}
+request),
and output comparisons
(as in
@samp{.if #foo#bar# .tm match}).
diff --git a/man/groff.7.man b/man/groff.7.man
index a26728666..7a43407a8 100644
--- a/man/groff.7.man
+++ b/man/groff.7.man
@@ -1913,10 +1913,6 @@ if the character after the escape character would be
valid.
.br
.ne 3v
.P
-Conditional expressions prohibit delimiters
-that are meaningful in numeric expressions,
-because the latter are a subset of the former.
-.
The escape sequences
.BR \[rs]D ,
.BR \[rs]h ,
@@ -1930,11 +1926,29 @@ The escape sequences
.BR \[rs]v ,
and
.B \[rs]x
-similarly prohibit them
+prohibit delimiters that are meaningful in numeric expressions,
because they accept numeric expressions as
(or within)
their arguments.
.
+For consistency,
+GNU
+.I troff \" GNU
+prohibits the same delimiters in the argument to the
+.B tl
+request.
+.
+The
+.RB \[lq] if \[rq],
+.BR ie ,
+and
+.RB \[lq] while \[rq]
+requests each interpret their first argument
+as a conditional expression;
+only characters that are not meaningful as operators
+in that context
+can be used as output comparison delimiters.
+.
.
.RS
.IP \[bu] 3n
@@ -1967,12 +1981,15 @@ and
.
.
.P
-Delimiter syntax is complex and flexible primarily for historical
-reasons;
+Delimiter syntax is flexible
+(and laborious to describe)
+primarily for historical reasons;
the foregoing restrictions need be kept in mind mainly when using
-.I groff
+GNU
+.I troff \" GNU
in AT&T compatibility mode.
.
+Normally,
GNU
.I troff \" GNU
keeps track of the nesting depth of escape sequence interpolations,
diff --git a/man/groff_diff.7.man b/man/groff_diff.7.man
index 1444efcdd..dc62197d6 100644
--- a/man/groff_diff.7.man
+++ b/man/groff_diff.7.man
@@ -5406,7 +5406,10 @@ escape sequence),
string expressions
(as with the
.B \[rs]w
-escape sequence),
+escape sequence
+and
+.B tl
+request),
and output comparisons
(as in
.RB \[lq] ".if #foo#bar# .tm match" \[rq]).
_______________________________________________
groff-commit mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/groff-commit