groff-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[groff] 27/31: Fix Savannah #57034.


From: G. Branden Robinson
Subject: [groff] 27/31: Fix Savannah #57034.
Date: Sun, 30 May 2021 11:12:38 -0400 (EDT)

gbranden pushed a commit to branch master
in repository groff.

commit a1bec1e178d66f383acc9b1ff2c654f496d68112
Author: Tadziu Hoffmann <hoffmann@usm.uni-muenchen.de>
AuthorDate: Tue Mar 16 12:38:41 2021 +0100

    Fix Savannah #57034.
    
    * contrib/mm/m.tmac (AT): Count author title declarations.
    
      (let*mt-sign): Use correct index when iterating author names.  Prevent
      page break between author names and titles.  Iterate author titles and
      write them.
    
    Fixes <https://savannah.gnu.org/bugs/?57034>.
---
 ChangeLog         | 11 +++++++++++
 contrib/mm/m.tmac | 11 +++++++++--
 2 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 8874efc..27cc2b4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2021-05-30  Tadziu Hoffman <hoffmann@usm.uni-muenchen.de>
+
+       Fix Savannah #57034.
+
+       * contrib/mm/m.tmac (AT): Count author title declarations.
+       (let*mt-sign): Use correct index when iterating author names.
+       Prevent page break between author names and titles.  Iterate
+       author titles and write them.
+
+       Fixes <https://savannah.gnu.org/bugs/?57034>.
+
 2021-05-30  G. Branden Robinson <g.branden.robinson@gmail.com>
 
        Add regression test for Savannah #57034.
diff --git a/contrib/mm/m.tmac b/contrib/mm/m.tmac
index 416a7bd..0619d6e 100644
--- a/contrib/mm/m.tmac
+++ b/contrib/mm/m.tmac
@@ -2977,7 +2977,8 @@ in=\\n[.i] fi=\\n[.u] .d=\\n[.d] nl=\\n[nl] pg=\\n[%]
 .\"    indent stored in cov*abs-ind
 .\" number of authors stored in cov*au
 .\" author(s) stored in cov*au!x!y
-.\" author(s) title stored in cov*at!x!y
+.\" number of authors' titles strored in cov*at!x
+.\" title(s) of author(s) stored in cov*at!x!y
 .\"    x is the author-index [1-cov*au], y is the argument-index [1-9].
 .\" author(s) firm stored in cov*firm
 .\" new date (if .ND exists) is stored in cov*new-date
@@ -3021,6 +3022,7 @@ in=\\n[.i] fi=\\n[.u] .d=\\n[.d] nl=\\n[nl] pg=\\n[%]
 .\" Must appear directly after .AU
 .de AT
 .if \\n[.$]<1 .@error "AT: no arguments"
+.nr cov*at!\\n[cov*au] \\n[.$]
 .nr cov*i 0 1
 .while \\n[.$]>=\\n+[cov*i] \{\
 .      ds cov*at!\\n[cov*au]!\\n[cov*i] "\\$[\\n[cov*i]]
@@ -3306,18 +3308,23 @@ in=\\n[.i] fi=\\n[.u] .d=\\n[.d] nl=\\n[nl] pg=\\n[%]
 .nr let*i 0 1
 .while \\n+[let*i]<=\\n[cov*au] \{\
 .      if \\n[let*i]>1 .as let*tmp /
-.      as let*tmp \\*[cov*au!\\n[let*k]!2]
+.      as let*tmp \\*[cov*au!\\n[let*i]!2]
 .\}
 .if !''\\$1' .as let*tmp -\\$1
 .in (u;\\n[.l]/2)
 .nf
 .nr let*i 0 1
 .while \\n+[let*i]<=\\n[cov*au] \{\
+.      ne 3v+\\n[cov*at!\\n[let*i]]v
 .      SP 3v
 .      if \\n[let*i]=\\n[let*k] \{\
 \Z'\h'-(u;\\n[.l]/2)'\\*[let*tmp]'\c
 .      \}
 \\*[cov*au!\\n[let*i]!1]
+.      nr let*j 0 1
+.      while \\n+[let*j]<=\\n[cov*at!\\n[let*i]] \{\
+\\*[cov*at!\\n[let*i]!\\n[let*j]]
+.      \}
 .\}
 .fi
 .in



reply via email to

[Prev in Thread] Current Thread [Next in Thread]