bug-texinfo
[Top][All Lists]
Advanced

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

Re: bad formatting of @verbatim followed by @image


From: Gavin Smith
Subject: Re: bad formatting of @verbatim followed by @image
Date: Sun, 26 Sep 2021 11:27:46 +0100
User-agent: Mutt/1.9.4 (2018-02-28)

On Sun, Sep 26, 2021 at 05:56:57AM +0000, Werner LEMBERG wrote:
> As the attached output shows, the formatting is quite bad, and I think
> it is a bug that the last line of the verbatim environment is split
> off and positioned on the next page – at least I can't see a reason
> for this bizarre behaviour.

I agree.  I put @tracingpages on and got the following in the log file for
a test file:-

> \box255=
@vbox(643.2+0.0)x433.62, glue set 153.47632fill
.@glue(@topskip) 29.30833
.@hbox(6.69167+0.0)x433.62, glue set 393.21507fil
..@glue(@leftskip) 28.90755
..@hbox(0.0+0.0)x0.0
..@texttt 1
..@texttt 4
..@hbox(0.0+0.0)x0.0
..@penalty 10000
..@glue(@parfillskip) 0.0 plus 1.0fil
..@glue(@rightskip) 0.0
.@penalty 10000
.@glue 6.0 plus 2.0 minus 2.0
.@penalty 10000
.@glue 3.0 plus 2.0 minus 1.0
.@penalty 10000
.@glue(@parskip) 3.0 plus 2.0 minus 1.0
.@glue(@lineskip) 1.09993
.@hbox(434.62375+0.0)x433.62, glue set 283.0575fil
..@pdfrefximage(434.62375+0.0)x150.5625
..@penalty 10000
..@glue(@parfillskip) 0.0 plus 1.0fil
..@glue(@rightskip) 0.0
.@glue 6.0 plus 2.0 minus 2.0
.@glue 0.0 plus 1.0fill

This is for the second page.  I believe it was the @penalty 10000 after
the first @hbox that suppressed the page break.  I believe this came from
the definition of @image.

I also found the same problem with @example and I expect other display
environments would have been affected too.

I've attempted to fix it with the following change (commit a9aacb0b39):

ff --git a/doc/texinfo.tex b/doc/texinfo.tex
index fdd4fbe498..f941c04bef 100644
--- a/doc/texinfo.tex
+++ b/doc/texinfo.tex
@@ -9403,7 +9403,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
   \fi\fi
   %
   \ifimagevmode
-    \nobreak\medskip
+    \medskip
     % Usually we'll have text after the image which will insert
     % \parskip glue, so insert it here too to equalize the space
     % above and below.

It would be helpful if you could test it as TeX's page breaking can be
difficult to understand.






reply via email to

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