gbranden pushed a commit to branch master
in repository groff.

commit 1db7ea52871735de158150ace47c61906765d7b1
Author: G. Branden Robinson <[email protected]>
AuthorDate: Fri Jul 3 00:16:14 2026 -0500

    groff(7): Add "Line layout" section.
    
    Also modestly revise wording in our Texinfo manual; the requests
    documented here are general *roff features, not GNU troff extensions.
---
 doc/groff.texi.in |   7 ++--
 man/groff.7.man   | 110 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 114 insertions(+), 3 deletions(-)

diff --git a/doc/groff.texi.in b/doc/groff.texi.in
index 430373e1e..7e1c82b46 100644
--- a/doc/groff.texi.in
+++ b/doc/groff.texi.in
@@ -12084,9 +12084,10 @@ file @file{tty.tmac}, which is loaded by the startup 
file
 
 @cindex dimensions, line
 @cindex line dimensions
-The following drawing shows the dimensions that GNU @command{troff} uses
-to arrange a line of output on the page.  Each dimension is labeled with
-the name of the request that configures it.
+The following diagram shows the dimensions
+that the formatter uses to arrange a line of output on the page.
+Each dimension is labelled
+with the name of the request that configures it.
 
 @Example
      -->| in |<--
diff --git a/man/groff.7.man b/man/groff.7.man
index 089cd88c7..2c2688ce0 100644
--- a/man/groff.7.man
+++ b/man/groff.7.man
@@ -679,6 +679,7 @@ request
 to change\[em]or eliminate\[em]supplemental inter-sentence space.
 .\" (@pxref{Manipulating Filling and Adjustment}).
 .
+.
 .\" ====================================================================
 .SH "Tabs and leaders"
 .\" ====================================================================
@@ -712,6 +713,115 @@ respectively.
 .\" END Keep (roughly) parallel with groff.texi node "Tabs and Leaders".
 .
 .
+.br
+.ne 10v
+.\" ====================================================================
+.SH "Line layout"
+.\" ====================================================================
+.
+.\" BEGIN Keep (roughly) parallel with groff.texi node "Line Layout".
+The following diagram shows the dimensions
+that the formatter uses to arrange a line of output on the page.
+Each dimension is labelled
+with the name of the request that configures it.
+.
+.
+.P
+.RS
+.EX
+     -->| in |<--
+        |<-----------ll------------>|
+   +----+----+----------------------+----+
+   |    :    :                      :    |
+   +----+----+----------------------+----+
+-->| po |<--
+   |<--------paper width---------------->|
+.EE
+.RE
+.
+.
+.P
+The
+.I "page offset"
+is the leftmost position of running text.
+.
+.I Indentation
+is the distance from the page offset at which text is set.
+.
+.I "Line length"
+is the maximum extent of unindented running text.
+.
+.
+.P
+The page offset can be thought of as the \[lq]left margin\[rq].
+The right margin is not explicitly configured;
+the combination of page offset and line length
+provides the information necessary to derive it.
+.
+The
+.BR nm ,
+.BR nn ,
+and
+.B mc
+requests exist
+to place line numbers and margin characters
+beyond the page margins.
+.\" @footnote{@xref{Output Line Annotation}.}
+.
+.
+.P
+The
+.B ti
+request configures a
+.I "temporary indentation."
+.
+Its idiomatic application
+is invocation by a paragraphing macro
+to set up a first-line indentation,
+of positive sign in the conventional case,
+and negative for a \[lq]hanging\[rq] paragraph.
+.
+The temporary indentation is associated
+with the environment.
+.
+See section \[lq]Environments\[rq] below.
+.
+.
+.P
+The page offset can be found in the read-only register
+.BR .o .
+.
+The read-only register
+.B .i
+interpolates the indentation amount,
+ignoring temporary indentation.
+.
+The read-only register
+.B .in
+reports the indentation that applies to the pending output line.
+.
+The line length as set by
+.B ll
+can be found in the read-only register
+.BR .l .
+.
+The read-only register
+.B .ll
+is the line length that applies to the pending output line.
+.
+Similarly to
+.B .i
+and
+.BR .in ,
+the difference between
+.B .l
+and
+.B .ll
+is that the latter takes into account
+whether a partially collected line still uses the previous length.
+.\" END Keep (roughly) parallel with groff.texi node "Line Layout".
+.
+.
 .\" ====================================================================
 .SH "Line continuation"
 .\" ====================================================================

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

Reply via email to