The current CVS mm macros misbehave if \n[P] has a non-numeric format
applied.  They also fail to disable traps before calling .EOP (if
defined) as promised in the documentation.  This fixes both problems:

Index: m.tmac
===================================================================
RCS file: /sources/groff/groff/contrib/mm/m.tmac,v
retrieving revision 2.38
diff -u -r2.38 m.tmac
--- m.tmac      30 May 2010 05:18:10 -0000      2.38
+++ m.tmac      31 May 2010 00:29:43 -0000
@@ -1233,8 +1233,11 @@
 .              ie d TP .TP
 .              el \{\
 '                      sp 3
+.                      ds hd*format \\g[P]
+.                      af P 0
 .                      ie ((\\n[P]=1)&((\\n[N]=1):(\\n[N]=2))) .sp
 .                      el .tl \\*[pg*header]
+.                      af P \\*[hd*format]
 .                      ie o .tl \\*[pg*odd-header]
 .                      el .tl \\*[pg*even-header]
 '                      sp 2
@@ -1302,17 +1305,20 @@
 .\" print the footer and eject new page
 .ev pg*tl-ev
 ....@set-env
+.vpt 0
 .\" user defined end-of-page macro
 .ie d EOP .EOP
 .el \{\
-.      vpt 0
 .      ie o .tl \\*[pg*odd-footer]
 .      el .tl \\*[pg*even-footer]
+.      ds hd*format \\g[P]
+.      af P 0
 .      ie (\\n[P]=1)&(\\n[N]=1) .tl \\*[pg*header]
 .      el .tl \\*[pg*footer]
+.      af P \\*[hd*format]
 .      tl ''\\*[pg_type!\...@copy_type]]''
-.      vpt 1
 .\}
+.vpt 1
 .ev
 .\" be sure that floating displays and footnotes will be
 .\" printed at the end of the document.

-Larry Jones

Like I'm going to get any sleep NOW. -- Calvin

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

Reply via email to