gbranden pushed a commit to branch master
in repository groff.

commit c2e27a9af6993a244716abc44d6ddc489c3d2fa4
Author: G. Branden Robinson <[email protected]>
AuthorDate: Tue Apr 21 12:56:53 2026 -0500

    [doc,man]: Update and resync brace escape stuff.
    
    Also break Texinfo input lines in a roff-friendly way.
---
 doc/groff.texi.in | 75 ++++++++++++++++++++++++++++++++++++++++---------------
 man/groff.7.man   | 49 ++++++++++++++++++++++++++++--------
 2 files changed, 94 insertions(+), 30 deletions(-)

diff --git a/doc/groff.texi.in b/doc/groff.texi.in
index e1bb2c87d..114e9bb3b 100644
--- a/doc/groff.texi.in
+++ b/doc/groff.texi.in
@@ -16248,10 +16248,21 @@ To conveniently nest conditionals, keep reading.
 @cindex blocks, conditional
 
 It is frequently desirable for a control structure to govern more than
-one request, macro call, text line, or combination of the foregoing.
-The opening and closing brace escape sequences @code{\@{} and @code{\@}}
-define such groups.  These @dfn{conditional blocks} can furthermore be
-nested.
+one request,
+macro call,
+text line,
+or combination of the foregoing.
+The opening and closing brace escape sequences
+@code{\@{}
+and
+@code{\@}}
+define such groups.
+These
+@dfn{conditional blocks}
+can furthermore be nested.
+
+Brace escape sequences outside of control structures have no meaning and
+produce no output.@c TODO: footnote: style warning
 
 @DefescList {\@\{, , , }
 @DefescListEnd {\@\}, , , }
@@ -16267,26 +16278,50 @@ nested.
 @cindex escape sequences, brace (@code{\@{}, @code{\@}})
 @cindex opening brace escape sequence (@code{\@}})
 @cindex closing brace escape sequence (@code{\@})}
-@code{\@{} begins a conditional block; it must appear (after optional
-spaces and tabs) immediately subsequent to the conditional expression of
-an @code{if}, @code{ie}, or @code{while}
-request,@footnote{@xref{while}.} or as the argument to an @code{el}
+@code{\@{}
+begins a conditional block;
+it must appear
+(after optional spaces and tabs)
+immediately subsequent to the conditional expression of an
+@code{if},
+@code{ie},
+or
+@code{while}
+request,@footnote{@xref{while}.}
+or as the argument to an
+@code{el}
 request.
 
-@code{\@}} ends a conditional block and should appear on a line with
-other occurrences of itself as necessary to match @code{\@{} sequences.
-It can be preceded by a control character, spaces, and tabs.  Input
-after any quantity of @code{\@}} sequences on the same line is processed
-only if all of the preceding conditions to which they correspond are
-true.  Furthermore, a @code{\@}} closing the body of a @code{while}
+@code{\@}}
+ends a conditional block and should appear on an input line
+with other occurrences of itself as necessary to match
+@code{\@{}
+sequences.
+It can be preceded by a control character,
+spaces,
+and tabs.
+Input after any quantity of opening brace escape sequences
+@code{\@}}
+on the same line is processed
+only if all of the preceding conditions to which they correspond
+are true.
+Furthermore,
+a closing brace escape sequence
+@code{\@}}
+closing the body of a
+@code{while}
 request must be the last such escape sequence on an input line.
 
-Brace escape sequences outside of control structures have no meaning and
-produce no output.
-
-@strong{Caution:@:} Input lines using @code{\@{} often end with
-@code{\RET}, especially in macros that consist primarily of control
-lines.  Forgetting to use @code{\RET} on an input line after @code{\@{}
+@strong{Caution:@:}
+Input lines using
+@code{\@{}
+often end with
+@code{\RET},
+especially in macros that consist primarily of control lines.
+Forgetting to use
+@code{\RET}
+on an input line after
+@code{\@{}
 is a common source of error.
 @endDefesc
 
diff --git a/man/groff.7.man b/man/groff.7.man
index 74c256921..45f1834f9 100644
--- a/man/groff.7.man
+++ b/man/groff.7.man
@@ -2219,21 +2219,34 @@ The opening and closing brace escape sequences
 .esc {
 and
 .esc }
-perform such grouping.
+define such groups.
+.
+These
+.I "conditional blocks"
+can furthermore be nested.
 .
 Brace escape sequences outside of control structures have no meaning and
-produce no output.
+produce no output.\" TODO: footnote: style warning
 .
 .
 .P
 .esc {
-should appear
+begins a conditional block;
+it must appear
 (after optional spaces and tabs)
-immediately subsequent to the request's conditional expression.
+immediately subsequent to the conditional expression of an
+.RB \[lq] if \[rq],
+.BR ie ,
+or
+.RB \[lq] while \[rq]
+request,\" @footnote{@xref{while}.}
+or as the argument to an
+.B el
+request.
 .
 .esc }
-should appear on a line with other occurrences of itself as necessary to
-match
+ends a conditional block and should appear on an input line
+with other occurrences of itself as necessary to match
 .esc {
 sequences.
 .
@@ -2241,19 +2254,35 @@ It can be preceded by a control character,
 spaces,
 and tabs.
 .
-Input after any quantity of
+Input after any quantity of opening brace escape sequences
 .esc }
-sequences on the same line is processed only if all the preceding
-conditions to which they correspond are true.
+on the same line is processed
+only if all of the preceding conditions to which they correspond
+are true.
 .
 Furthermore,
-a
+a closing brace escape sequence
 .esc }
 closing the body of a
 .RB \[lq] while \[rq]
 request must be the last such escape sequence on an input line.
 .
 .
+.P
+.I Caution:
+Input lines using
+.esc {
+often end with
+.escarg \& newline ,
+especially in macros that consist primarily of control lines.
+.
+Forgetting to use
+.escarg \& newline
+on an input line after
+.esc {
+is a common source of error.
+.
+.
 .\" ====================================================================
 .SS "while loops"
 .\" ====================================================================

_______________________________________________
groff-commit mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/groff-commit

Reply via email to