[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[groff] 14/15: [man]: Fix half of Savannah #60611.
From: |
G. Branden Robinson |
Subject: |
[groff] 14/15: [man]: Fix half of Savannah #60611. |
Date: |
Wed, 19 May 2021 11:00:41 -0400 (EDT) |
gbranden pushed a commit to branch master
in repository groff.
commit f6f1218b0408233124b7b63cd53aa529659e0901
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
AuthorDate: Thu May 20 00:50:01 2021 +1000
[man]: Fix half of Savannah #60611.
Fix stochastic vertical space loss problems in continuous rendering mode
by being more scrupulous about extending the page length. As noted in
Savannah #60611, sometimes the vertical space between a header line and
the first section heading ("Name") would be reduced or removed
altogether, in a way that was highly sensitive to circumstances. As far
as I can tell, the problem is that this vertical space disappeared only
when we were in double-secret probation no-space mode; this is the
special non-spacing mode (not apparent with inspection of \n[.ns]) that
happens when the internal stealth vertical position trap is sprung.
This trap does not appear in .ptr output but can be disabled with ".vpt
0", which is an alternative fix for this problem (because continuous
rendering mode does not use vertical position traps at all). Another
fix might have been to simply call the moral equivalent of ".pl MAXINT"
as soon as continuous rendering mode was decided upon.
* tmac/an-old.tmac (an-header): In continuous rendering mode, extend the
page length by one line before calling PT to output the page header,
and afterwards, extend the page length by 3 vees and space by that
amount (instead of half an inch).
Fixes half of <https://savannah.gnu.org/bugs/?60611>.
---
ChangeLog | 26 ++++++++++++++++++++++++++
tmac/an-old.tmac | 8 ++++++--
2 files changed, 32 insertions(+), 2 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 1978707..d41ddc8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,31 @@
2021-05-20 G. Branden Robinson <g.branden.robinson@gmail.com>
+ Fix stochastic vertical space loss problems in continuous
+ rendering mode by being more scrupulous about extending the page
+ length. As noted in Savannah #60611, sometimes the vertical
+ space between a header line and the first section heading
+ {"Name"} would be reduced or removed altogether, in a way that
+ was highly sensitive to circumstances. As far as I can tell,
+ the problem is that this vertical space disappeared only when we
+ were in double-secret probation no-space mode; this is the
+ special non-spacing mode {not apparent with inspection of
+ \n[.ns]} that happens when the internal stealth vertical
+ position trap is sprung. This trap does not appear in .ptr
+ output but can be disabled with ".vpt 0", which is an
+ alternative fix for this problem {because continuous rendering
+ mode does not use vertical position traps at all}. Another fix
+ might have been to simply call the moral equivalent of ".pl
+ MAXINT" as soon as continuous rendering mode was decided upon.
+
+ * tmac/an-old.tmac (an-header): In continuous rendering mode,
+ extend the page length by one line before calling PT to output
+ the page header, and afterwards, extend the page length by 3
+ vees and space by that amount (instead of half an inch).
+
+ Fixes half of <https://savannah.gnu.org/bugs/?60611>.
+
+2021-05-20 G. Branden Robinson <g.branden.robinson@gmail.com>
+
* tmac/an-old.tmac (an-header, an-footer): Drop no-op .tl
requests.
diff --git a/tmac/an-old.tmac b/tmac/an-old.tmac
index ed47693..2e091dd 100644
--- a/tmac/an-old.tmac
+++ b/tmac/an-old.tmac
@@ -287,11 +287,15 @@
. if !\\n[an-is-output-html] \
. if !\\n[cR] \
. sp .5i
+. if \\n[cR] \
+. pl +1v
. PT
. ie !\\n[cR] \
. sp |1i
-. el \
-. sp .5i
+. el \{\
+. pl +3v
+. sp 3v
+. \}
. \}
. ev
. ns
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [groff] 14/15: [man]: Fix half of Savannah #60611.,
G. Branden Robinson <=