* texinfo.tex (\begindoublecolumns): Ship out \partialpage
authorKarl Berry <karl@gnu.org>
Fri, 15 Jan 1999 09:29:00 +0000 (09:29 +0000)
committerKarl Berry <karl@gnu.org>
Fri, 15 Jan 1999 09:29:00 +0000 (09:29 +0000)
immediately if it is nonvoid, instead of saving it.  This avoids a
bug where the index could end up printing one line per page (see
the indexspread.tex test).
From: Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>

* texinfo.tex (\image): If running pdftex, do \pdfimage{imagefile.pdf}.
  From: Samuel Tardieu <sam@inf.enst.fr>

  Also, update copyright year.

texinfo.tex

index aa52853..0f86337 100644 (file)
@@ -3,9 +3,9 @@
 % Load plain if necessary, i.e., if running under initex.
 \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
 %
-\def\texinfoversion{1999-01-05}%
+\def\texinfoversion{1999-01-14}%
 %
-% Copyright (C) 1985, 86, 88, 90, 91, 92, 93, 94, 95, 96, 97, 98
+% Copyright (C) 1985, 86, 88, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99
 % Free Software Foundation, Inc.
 %
 % This texinfo.tex file is free software; you can redistribute it and/or
@@ -2819,23 +2819,25 @@ width0pt\relax} \fi
 
 \def\begindoublecolumns{\begingroup % ended by \enddoublecolumns
   % Grab any single-column material above us.
-  \output = {\global\setbox\partialpage = \vbox{%
+  \output = {%
     % 
     % Here is a possibility not foreseen in manmac: if we accumulate a
     % whole lot of material, we might end up calling this \output
     % routine twice in a row (see the doublecol-lose test, which is
     % essentially a couple of indexes with @setchapternewpage off).  In
-    % that case, we must prevent the second \partialpage from
-    % simply overwriting the first, causing us to lose the page.
-    % This will preserve it until a real output routine can ship it
-    % out.  Generally, \partialpage will be empty when this runs and
-    % this will be a no-op.
-    \unvbox\partialpage
+    % that case we just ship out what is in \partialpage with the normal
+    % output routine.  Generally, \partialpage will be empty when this
+    % runs and this will be a no-op.  See the indexspread.tex test case.
+    \ifvoid\partialpage \else
+      \onepageout{\pagecontents\partialpage}%
+    \fi
     %
-    % Unvbox the main output page.
-    \unvbox255
-    \kern-\topskip \kern\baselineskip
-  }}%
+    \global\setbox\partialpage = \vbox{%
+      % Unvbox the main output page.
+      \unvbox\PAGE
+      \kern-\topskip \kern\baselineskip
+    }%
+  }%
   \eject % run that output routine to set \partialpage
   %
   % Use the double-column output routine for subsequent pages.
@@ -2888,7 +2890,6 @@ width0pt\relax} \fi
 \def\pagesofar{%
   % Re-output the contents of the output page -- any previous material,
   % followed by the two boxes we just split, in box0 and box2.
-  \advance\vsize by \ht\partialpage
   \unvbox\partialpage
   %
   \hsize = \doublecolumnhsize
@@ -5154,18 +5155,22 @@ width0pt\relax} \fi
 \newif\ifwarnednoepsf
 \newhelp\noepsfhelp{epsf.tex must be installed for images to
   work.  It is also included in the Texinfo distribution, or you can get
-  it from ftp://ftp.tug.org/tex/epsf.tex.}
+  it from ftp://tug.org/tex/epsf.tex.}
 %
 % Only complain once about lack of epsf.tex.
 \def\image#1{%
-  \ifx\epsfbox\undefined
-    \ifwarnednoepsf \else
-      \errhelp = \noepsfhelp
-      \errmessage{epsf.tex not found, images will be ignored}%
-      \global\warnednoepsftrue
+  \ifx\pdfoutput\undefined
+    \ifx\epsfbox\undefined
+      \ifwarnednoepsf \else
+        \errhelp = \noepsfhelp
+        \errmessage{epsf.tex not found, images will be ignored}%
+        \global\warnednoepsftrue
+      \fi
+    \else
+      \imagexxx #1,,,\finish
     \fi
   \else
-    \imagexxx #1,,,\finish
+    \centerline{\pdfimage #1.pdf}%
   \fi
 }
 %
@@ -5184,6 +5189,7 @@ width0pt\relax} \fi
     \centerline{\epsfbox{#1.eps}}%
     \bigbreak
   \else
+    % In the middle of a paragraph, no extra space.
     \epsfbox{#1.eps}%
   \fi
 }