[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[6589] make final page of indices have flush column bottoms again
From: |
Gavin D. Smith |
Subject: |
[6589] make final page of indices have flush column bottoms again |
Date: |
Sun, 30 Aug 2015 22:11:13 +0000 |
Revision: 6589
http://svn.sv.gnu.org/viewvc/?view=rev&root=texinfo&revision=6589
Author: gavin
Date: 2015-08-30 22:11:12 +0000 (Sun, 30 Aug 2015)
Log Message:
-----------
make final page of indices have flush column bottoms again
Modified Paths:
--------------
trunk/ChangeLog
trunk/doc/texinfo-tex-test.texi
trunk/doc/texinfo.tex
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2015-08-29 19:51:44 UTC (rev 6588)
+++ trunk/ChangeLog 2015-08-30 22:11:12 UTC (rev 6589)
@@ -1,3 +1,13 @@
+2015-08-30 Gavin Smith <address@hidden>
+
+ * doc/texinfo.tex (\initialfonts, \initialglyphs): Rename, and
+ add a missing %.
+ (\balancecolumns): Make the columns have flush bottoms only if
+ their heights are not too different.
+ * doc/texinfo-tex-test.texi: Add example to show flush column
+ bottoms in the middle of an index, and tweak examples of short
+ indices.
+
2015-08-29 Gavin Smith <address@hidden>
* info/display.c (display_process_line): Don't append codes to
Modified: trunk/doc/texinfo-tex-test.texi
===================================================================
--- trunk/doc/texinfo-tex-test.texi 2015-08-29 19:51:44 UTC (rev 6588)
+++ trunk/doc/texinfo-tex-test.texi 2015-08-30 22:11:12 UTC (rev 6589)
@@ -19,6 +19,8 @@
@setfilename
@settitle Test Document for @file{texinfo.tex}
address@hidden @thischapter @| @| @thissection
+
@contents
@chapter Macros
@@ -339,11 +341,151 @@
\entry {References using \code address@hidden
\finishindex
address@hidden Index page break not before initial
+The next index is to show the bottoms of columns when the next page
+doesn't start with an initial.
+
address@hidden
+\initial {P}
+\entry {\code {PACKAGE}}{196}
+\entry {\code {PACKAGE_AND_VERSION}}{196}
+\entry {\code {PACKAGE_NAME}}{196}
+\entry {\code {PACKAGE_URL}}{196}
+\entry {\code {PACKAGE_VERSION}}{196}
+\entry {Page breaks, awkward}{124}
+\entry {Page breaks, forcing}{126}
+\entry {Page delimiter in Texinfo mode}{261}
+\entry {Page headings}{270}
+\entry {Page numbering}{270}
+\entry {Page sizes for books}{175}
+\entry {Page sizes, customized}{175}
+\entry {\code {page-delimiter}}{261}
+\entry {Pages, starting odd}{29}
+\entry {Paper size, A4}{175}
+\entry {Paragraph indentation control}{31}
+\entry {Paragraph, marking text within}{66}
+\entry {\code {paragraphindent}}{187}
+\entry {Parameters to macros}{154}
+\entry {Parentheses in node name}{37}
+\entry {Parsing errors}{202}
+\entry {Part of file formatting and printing}{266}
+\entry {Part pages}{50}
+\entry {Partial documents, formatting}{168}
+\entry {Parts of a cross reference}{54}
+\entry {Parts of a master menu}{28}
+\entry {Parts of a menu}{43}
+\entry {Patches, contributing}{4}
+\entry {PCL file, for printing}{170}
+\entry {\code {pdf image inclusions}}{97}
+\entry {PDF output}{176}
+\entry {PDF output of urls}{64}
+\entry {PDF output, overview}{5}
+\entry {\code {pdfetex}}{167}
+\entry {\code {pdftex}}{176}
+\entry {\code {pdftex\r {, and images}}}{97}
+\entry {\code {pdftexi2dvi}}{166}
+\entry {Period in node name}{37}
+\entry {Periods, inserting}{111}
+\entry {Perl format strings for translation}{199}
+\entry {Perl POD, converting to Texinfo}{200}
+\entry {Permissions text, including}{22}
+\entry {Permissions, printed}{25}
+\entry {\code {pg} (program) index}{102}
+\entry {Picas}{98}
+\entry {Pictures, inserting}{97}
+\entry {Pinard, Fran\,{c}ois}{7}
+\entry {Plain \TeX {}}{146}
+\entry {Plain text output with \option {--plaintext}}{183}
+\entry {Plain text output, overview}{4}
+\entry {\code {png image format}}{97}
+\entry {POD, converting to Texinfo}{200}
+\entry {\code {pod2texi}}{200}
+\entry {Point, indicating in a buffer}{121}
+\entry {Pointer creation with \code {makeinfo}}{40}
+\entry {Pointer validation with \code {makeinfo}}{185}
+\entry {Pointer validation, suppressing}{168}
+\entry {Pointer validation, suppressing from command line}{182}
+\entry {Points (dimension)}{98}
+\entry {PostScript output, overview}{4}
+\entry {Pounds symbol}{118}
+\entry {\code {PRE_ABOUT}}{192}
+\entry {\code {PRE_BODY_CLOSE}}{192}
+\entry {Preamble, in Info format}{283}
+\entry {Predefined names for indices}{105}
+\entry {Preface, etc., and Docbook}{48}
+\entry {\code {PREFIX}}{196}
+\entry {Preparing for \TeX {}}{173}
+\entry {Preserving HTML links to old nodes}{221}
+\entry {Prev node of Top node}{38}
+\entry {Preventing first paragraph indentation}{32}
+\entry {Preventing line and page breaks}{124}
+\entry {Print and format in Texinfo mode}{170}
+\entry {Print, format from Emacs shell}{170}
+\entry {Printed book and manual characteristics}{6}
+\entry {Printed output, indicating}{120}
+\entry {Printed output, through \command {texi2any}}{185}
+\entry {Printed permissions}{25}
+\entry {Printing a region or buffer}{266}
+\entry {Printing an index}{104}
+\entry {Printing cost, reducing}{75}
+\entry {Printing cropmarks}{176}
+\entry {Printing DVI files, on MS-DOS/MS-Windows}{170}
+\entry {Printing hardcopy}{166}
+\entry {Problems, catching}{275}
+\entry {\code {PROGRAM}}{196}
+\entry {Program names, indicating}{72}
+\entry {\code {PROGRAM_NAME_IN_FOOTER}}{192}
+\entry {Programming, glyphs for}{119}
+\entry {Pronunciation of Texinfo}{3}
+\entry {Prototype row, column widths defined by}{93}
+\initial {Q}
+\entry {Quotation characters (`'), in source}{114}
+\entry {Quotation marks, French}{115}
+\entry {Quotation marks, German}{115}
+\entry {Quotation marks, inserting}{114}
+\entry {Quotations}{78}
+\entry {Quotations in smaller fonts}{82}
+\entry {Quote characters, inserting}{110}
+\entry {Quoting, automatic for some macros}{156}
+\entry {Ragged left, without filling}{83}
+\entry {Ragged right, with filling}{84}
+\entry {Ragged right, without filling}{83}
+\entry {Raising and lowering sections}{51}
+\entry {Raw formatter commands}{146}
+\entry {Raw HTML}{213}
+\entry {raw text output}{188}
+\entry {RCS $Id}{253}
+\entry {Recommended names for keys}{69}
+\entry {Rectangle, black in hardcopy}{174}
+\entry {Recursive macro invocations}{155}
+\entry {Reducing font size}{75}
+\entry {Reference implementation}{178}
+\entry {Reference to @-commands}{223}
+\entry {References}{53}
+\entry {References using \code address@hidden
+\entry {Raw formatter commands}{146}
+\entry {Raw HTML}{213}
+\entry {raw text output}{188}
+\entry {RCS $Id}{253}
+\entry {Recommended names for keys}{69}
+\entry {Rectangle, black in hardcopy}{174}
+\entry {Recursive macro invocations}{155}
+\entry {Reducing font size}{75}
+\entry {Reference implementation}{178}
+\entry {Reference to @-commands}{223}
+\entry {References}{53}
+\entry {References using \code address@hidden
+\finishindex
+
@section Short indices
See following pages
address@hidden
address@hidden
address@hidden
+
@commenceindex
\initial{A}
\entry{aaaa}{1}
@@ -363,11 +505,21 @@
@commenceindex
\initial{A}
\entry{aaaa}{1}
+\initial{B}
\entry{bbbb}{2}
+\initial{C}
+\entry{cccc}{2}
+\entry{cccc}{2}
+\finishindex
+
address@hidden
+\initial{A}
+\entry{aaaa}{1}
\entry{bbbb}{2}
\entry{bbbb}{2}
\entry{bbbb}{2}
\entry{bbbb}{2}
+\entry{bbbb}{2}
\finishindex
@commenceindex
Modified: trunk/doc/texinfo.tex
===================================================================
--- trunk/doc/texinfo.tex 2015-08-29 19:51:44 UTC (rev 6588)
+++ trunk/doc/texinfo.tex 2015-08-30 22:11:12 UTC (rev 6589)
@@ -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{2015-08-27.20}
+\def\texinfoversion{2015-08-31.00}
%
% Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
@@ -5030,7 +5030,7 @@
{\catcode`\/=13 \catcode`\-=13 \catcode`\^=13 \catcode`\~=13 \catcode`\_=13
\catcode`\|=13 \catcode`\<=13 \catcode`\>=13 \catcode`\+=13 \catcode`\"=13
\catcode`\$=3
-\gdef\initialfonts{%
+\gdef\initialglyphs{%
% Some changes for non-alphabetic characters. Using the glyphs from the
% math fonts looks more consistent than the typewriter font used elsewhere
% for these characters.
@@ -5045,7 +5045,7 @@
\let^=\normalcaret
\let~=\normaltilde
\def\_{%
- \leavevmode \kern.07em \vbox{\hrule width.33em height.06ex}\kern .07em }
+ \leavevmode \kern.07em \vbox{\hrule width.33em height.06ex}\kern .07em }%
\def|{$\vert$}%
\def<{$\less$}%
\def>{$\gtr$}%
@@ -5054,7 +5054,7 @@
\def\initial{%
\bgroup
- \initialfonts
+ \initialglyphs
\initialx
}
@@ -5261,7 +5261,7 @@
}
% The double-column output routine for all double-column pages except
-% the last.
+% the last, which is done by \balancecolumns.
%
\def\doublecolumnout{%
\splittopskip=\topskip \splitmaxdepth=\maxdepth
@@ -5343,7 +5343,8 @@
\pagegoal = \vsize
}
%
-% Only called for the last of the double column material.
+% Only called for the last of the double column material. \doublecolumnout
+% does the others.
\def\balancecolumns{%
\setbox0 = \vbox{\unvbox255}% like \box255 but more efficient, see p.120.
\dimen@ = \ht0
@@ -5352,25 +5353,35 @@
\ifdim\dimen@<14\baselineskip
% Don't split a short final column in two.
\global\setbox1 = \copy0
- \global\setbox3 = \vbox{}%
+ \setbox0=\vbox{}%
+ \setbox0=\vbox address@hidden
+ \setbox2=\vbox{}%
\else
- \divide\dimen@ by 2 % target to split to
- %debug\message{final 2-column material height=\the\ht0, address@hidden
- \splittopskip = \topskip
- % Loop until we get a decent breakpoint.
- {%
- \vbadness = 10000
- \loop
- \global\setbox3 = \copy0
- \global\setbox1 = \vsplit3 to \dimen@
- \ifdim\ht3>\dimen@
- \global\advance\dimen@ by 1pt
- \repeat
- }%
+ \divide\dimen@ by 2 % target to split to
+ address@hidden = \dimen@
+ \splittopskip = \topskip
+ % Loop until the second column is no higher than the first
+ {%
+ \vbadness = 10000
+ \loop
+ \global\setbox3 = \copy0
+ \global\setbox1 = \vsplit3 to \dimen@
+ \ifdim\ht3>\dimen@
+ \global\advance\dimen@ by 1pt
+ \repeat
+ }%
\fi
- %debug\message{split to \the\dimen@, column heights: \the\ht1, \the\ht3.}%
- \setbox0=\vbox address@hidden
- \setbox2=\vbox address@hidden
+ address@hidden by 4
+ address@hidden by 5
+ \ifdim\ht3<address@hidden
+ % Column heights are too different, so don't make their bottoms
+ % flush with each other
+ \setbox0=\vbox address@hidden
+ \setbox2=\vbox address@hidden
+ \else
+ \setbox0=\vbox address@hidden
+ \setbox2=\vbox address@hidden
+ \fi
%
\pagesofar
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [6589] make final page of indices have flush column bottoms again,
Gavin D. Smith <=