texinfo-commits
[Top][All Lists]
Advanced

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

[7291] index double column tweaks


From: gavinsmith0123
Subject: [7291] index double column tweaks
Date: Sun, 31 Jul 2016 18:00:17 +0000 (UTC)

Revision: 7291
          http://svn.sv.gnu.org/viewvc/?view=rev&root=texinfo&revision=7291
Author:   gavin
Date:     2016-07-31 18:00:17 +0000 (Sun, 31 Jul 2016)
Log Message:
-----------
index double column tweaks

Modified Paths:
--------------
    trunk/ChangeLog
    trunk/doc/texinfo.tex

Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog     2016-07-31 08:40:28 UTC (rev 7290)
+++ trunk/ChangeLog     2016-07-31 18:00:17 UTC (rev 7291)
@@ -1,5 +1,18 @@
 2016-07-31  Gavin Smith  <address@hidden>
 
+       * doc/texinfo.tex (\balancecolumns): Reduce height limit for 
+       splitting the final double-column material.  Remove glue from 
+       bottom of both left and right columns when comparing heights.
+       Compare heights of columns differently.  When not making the 
+       bottoms of the two columns flush, use the obtained height of the 
+       taller left column for the height of both columns.  (Otherwise, 
+       an overful column box could overlap material below.  An example 
+       of broken formatting due to this was reported in the AucTeX manual
+       by Arash Esbati.
+       Change some comments and edit for clarity.
+
+2016-07-31  Gavin Smith  <address@hidden>
+
        * doc/Makefile.am (TXI_XLATE): Add txi-ja.tex.
        (EXTRA_DIST): Add texinfo-ja.tex and short-sample-ja.tex.
 

Modified: trunk/doc/texinfo.tex
===================================================================
--- trunk/doc/texinfo.tex       2016-07-31 08:40:28 UTC (rev 7290)
+++ trunk/doc/texinfo.tex       2016-07-31 18:00:17 UTC (rev 7291)
@@ -3,7 +3,7 @@
 % Load plain if necessary, i.e., if running under initex.
 \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
 %
-\def\texinfoversion{2016-07-31.07}
+\def\texinfoversion{2016-07-31.17}
 %
 % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
 % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
@@ -5924,49 +5924,46 @@
   \dimen@ = \ht0
   \advance\dimen@ by \topskip
   \advance\dimen@ by-\baselineskip
-  \ifdim\dimen@<14\baselineskip
+  \ifdim\dimen@<5\baselineskip
     % Don't split a short final column in two.
     \setbox2=\vbox{}%
   \else
     \divide\dimen@ by 2 % target to split to
     address@hidden = \dimen@
     \splittopskip = \topskip
-    % Loop until the second column is no higher than the first
+    % Loop until left column is at least as high as the right column.
     {%
       \vbadness = 10000
       \loop
         \global\setbox3 = \copy0
         \global\setbox1 = \vsplit3 to \dimen@
-        % Remove glue from bottom of first column to
-        % make sure it is higher than the second.
+        % Remove glue from bottom of columns to compare
+        % apparent heights.
         \global\setbox1 = \vbox{\unvbox1\unpenalty\unskip}%
-      \ifdim\ht3>\ht1
+        \global\setbox3 = \vbox{\unvbox3\unpenalty\unskip}%
+      \ifdim\ht1<\ht3
         \global\advance\dimen@ by 1pt
       \repeat
     }%
+    % Now the left column is in box 1, and the right column in box 3.
+    % Check whether the left column has come out higher than the page itself.  
+    % (Note that we have doubled \vsize for the double columns, so
+    % the actual height of the page is 0.5\vsize).
     \ifdim2\ht1>\vsize
-      % The left column has come out longer than the page itself.  (Note
-      % that we have doubled \vsize for the double columns, so
-      % the actual height of the page is 0.5\vsize).  Just split the last
-      % of the double column material roughly in half.
+      % Just split the last of the double column material roughly in half.
       \setbox2=\box0
       \setbox0 = \vsplit2 to address@hidden
       \setbox0=\vbox address@hidden
       \setbox2=\vbox address@hidden
     \else
-      address@hidden by 5
-      address@hidden by 4
-      \global\setbox3 = \copy0
-      \global\setbox1 = \vsplit3 to address@hidden
-      \global\setbox\balancedcolumns=\vbox{\pagesofar}%
-      \ifdim\ht3<address@hidden
+      % Compare the heights of the two columns.
+      \ifdim4\ht1>5\ht3
         % Column heights are too different, so don't make their bottoms
-        % flush with each other.  The glue at the end of the second column
-        % allows a second column to stretch, reducing the difference in
-        % height between the two.
-        \setbox0=\vbox address@hidden
-        \setbox2=\vbox address@hidden 0pt plus 0.3\ht0}%
+        % flush with each other.
+        \setbox2=\vbox to \ht1 {\unvbox3\vfill}%
+        \setbox0=\vbox to \ht1 {\unvbox1\vfill}%
       \else
+        % Make column bottoms flush with each other.
         \setbox0=\vbox address@hidden
         \setbox2=\vbox address@hidden
       \fi




reply via email to

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