[latexrefman-commits] [SCM] latexrefman updated: r638 - trunk
jimhefferon at gnu.org.ua
jimhefferon at gnu.org.ua
Sat Jun 2 16:23:19 CEST 2018
Author: jimhefferon
Date: 2018-06-02 17:23:19 +0300 (Sat, 02 Jun 2018)
New Revision: 638
Modified:
trunk/ChangeLog
trunk/latex2e.html
trunk/latex2e.info
trunk/latex2e.pdf
trunk/latex2e.texi
Log:
Page breaking. Add synopses and examples for all items, combine \clearpage with \cleardoublepage
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2018-06-01 23:40:15 UTC (rev 637)
+++ trunk/ChangeLog 2018-06-02 14:23:19 UTC (rev 638)
@@ -1,5 +1,11 @@
2018-06-01 Jim Hefferon <jhefferon at smcvt.edu>
+ * latex2e.texi (Page breaking) Next in latex-info. Adjust wording.
+ Add examples and a few error messages.
+ (\clearpage & \cleardoublepage) Combine the two into one.
+
+2018-06-01 Jim Hefferon <jhefferon at smcvt.edu>
+
* latex2e.texi (Line breaking) Next in latex-info (split with
page breaking). Adjust wording. Add examples and a few error
messages. Adjust wording.
Modified: trunk/latex2e.html
===================================================================
--- trunk/latex2e.html 2018-06-01 23:40:15 UTC (rev 637)
+++ trunk/latex2e.html 2018-06-02 14:23:19 UTC (rev 638)
@@ -283,11 +283,10 @@
</ul></li>
<li><a name="toc-Page-breaking-1" href="#Page-breaking">10 Page breaking</a>
<ul class="no-bullet">
- <li><a name="toc-_005ccleardoublepage-1" href="#g_t_005ccleardoublepage">10.1 <code>\cleardoublepage</code></a></li>
- <li><a name="toc-_005cclearpage-1" href="#g_t_005cclearpage">10.2 <code>\clearpage</code></a></li>
- <li><a name="toc-_005cnewpage-1" href="#g_t_005cnewpage">10.3 <code>\newpage</code></a></li>
- <li><a name="toc-_005cenlargethispage-1" href="#g_t_005cenlargethispage">10.4 <code>\enlargethispage</code></a></li>
- <li><a name="toc-_005cpagebreak-_0026-_005cnopagebreak-1" href="#g_t_005cpagebreak-_0026-_005cnopagebreak">10.5 <code>\pagebreak</code> & <code>\nopagebreak</code></a></li>
+ <li><a name="toc-_005cclearpage-_0026-_005ccleardoublepage-1" href="#g_t_005cclearpage-_0026-_005ccleardoublepage">10.1 <code>\clearpage</code> & <code>\cleardoublepage</code></a></li>
+ <li><a name="toc-_005cnewpage-1" href="#g_t_005cnewpage">10.2 <code>\newpage</code></a></li>
+ <li><a name="toc-_005cenlargethispage-1" href="#g_t_005cenlargethispage">10.3 <code>\enlargethispage</code></a></li>
+ <li><a name="toc-_005cpagebreak-_0026-_005cnopagebreak-1" href="#g_t_005cpagebreak-_0026-_005cnopagebreak">10.4 <code>\pagebreak</code> & <code>\nopagebreak</code></a></li>
</ul></li>
<li><a name="toc-Footnotes-1" href="#Footnotes">11 Footnotes</a>
<ul class="no-bullet">
@@ -8399,9 +8398,9 @@
<p>Encourage or discourage a line break. The optional <var>zero-to-four</var>
is an integer that converts the command from a demand to a request. The
-higher the number, the more insistent the request. The default is 4, to
-entirely force or prevent the break. Both commands are fragile
-(see <a href="#g_t_005cprotect">\protect</a>).
+higher the number, the more insistent the request. The default is 4, so
+that without the optional argument these commands entirely force or
+prevent the break. Both commands are fragile (see <a href="#g_t_005cprotect">\protect</a>).
</p>
<p>Here we tell LaTeX that a good place to put a linebreak is after the
standard legal text.
@@ -8430,78 +8429,157 @@
<a name="index-page-breaking"></a>
<a name="index-breaking-pages"></a>
-<p>LaTeX starts new pages asynchronously, when enough material has
-accumulated to fill up a page. Usually this happens automatically,
-but sometimes you may want to influence the breaks.
+<p>Ordinarily LaTeX automatically takes care of breaking output into
+pages with its usual aplomb. But if you are writing commands, or
+tweaking the final version of a document, then you may need to
+understand how to influence its actions.
</p>
+<p>LaTeX’s algorithm for splitting a document into pages is more complex
+than just waiting until there is enough material to fill a page and
+outputting the result. Instead, LaTeX typesets more material than
+would fit on the page and then chooses a break that is optimal in some
+way (it has the smallest badness). An example of the advantage of this
+approach is that if the page has some vertical space that can be
+stretched or shrunk, such as with rubber lengths between paragraphs,
+then LaTeX can use that to avoid widow lines (where a new page starts
+with the last line of a paragraph; LaTeX can squeeze the extra line
+onto the first page) and orphans (where the first line of paragraph is
+at the end of a page; LaTeX can stretch the material of the first
+page so the extra line falls on the second page). Another example is
+where LaTeX uses available vertical shrinkage to fit on a page not
+just the header for a new section but also the first two lines of that
+section.
+</p>
+<p>But LaTeX does not optimize over the entire document’s set of page
+breaks. So it can happen that the first page break is great but the
+second one is lousy; to break the current page LaTeX doesn’t look as
+far ahead as the next page break. So occasionally you may want to
+influence page breaks while preparing a final version of a document.
+</p>
+<p>See <a href="#Layout">Layout</a> for more material that is relevant to page breaking.
+</p>
<table class="menu" border="0" cellspacing="0">
-<tr><td align="left" valign="top">• <a href="#g_t_005ccleardoublepage" accesskey="1">\cleardoublepage</a>:</td><td> </td><td align="left" valign="top">Start a new right-hand page.
+<tr><td align="left" valign="top">• <a href="#g_t_005cclearpage-_0026-_005ccleardoublepage" accesskey="1">\clearpage & \cleardoublepage</a>:</td><td> </td><td align="left" valign="top">Start a new page; eject floats.
</td></tr>
-<tr><td align="left" valign="top">• <a href="#g_t_005cclearpage" accesskey="2">\clearpage</a>:</td><td> </td><td align="left" valign="top">Start a new page.
+<tr><td align="left" valign="top">• <a href="#g_t_005cnewpage" accesskey="2">\newpage</a>:</td><td> </td><td align="left" valign="top">Start a new page.
</td></tr>
-<tr><td align="left" valign="top">• <a href="#g_t_005cnewpage" accesskey="3">\newpage</a>:</td><td> </td><td align="left" valign="top">Start a new page.
+<tr><td align="left" valign="top">• <a href="#g_t_005cenlargethispage" accesskey="3">\enlargethispage</a>:</td><td> </td><td align="left" valign="top">Enlarge the current page a bit.
</td></tr>
-<tr><td align="left" valign="top">• <a href="#g_t_005cenlargethispage" accesskey="4">\enlargethispage</a>:</td><td> </td><td align="left" valign="top">Enlarge the current page a bit.
+<tr><td align="left" valign="top">• <a href="#g_t_005cpagebreak-_0026-_005cnopagebreak" accesskey="4">\pagebreak & \nopagebreak</a>:</td><td> </td><td align="left" valign="top">Forcing & avoiding page breaks.
</td></tr>
-<tr><td align="left" valign="top">• <a href="#g_t_005cpagebreak-_0026-_005cnopagebreak" accesskey="5">\pagebreak & \nopagebreak</a>:</td><td> </td><td align="left" valign="top">Forcing & avoiding page breaks.
-</td></tr>
</table>
<hr>
-<a name="g_t_005ccleardoublepage"></a>
+<a name="g_t_005cclearpage-_0026-_005ccleardoublepage"></a>
<div class="header">
<p>
-Next: <a href="#g_t_005cclearpage" accesskey="n" rel="next">\clearpage</a>, Up: <a href="#Page-breaking" accesskey="u" rel="up">Page breaking</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#g_t_005cnewpage" accesskey="n" rel="next">\newpage</a>, Up: <a href="#Page-breaking" accesskey="u" rel="up">Page breaking</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
</div>
-<a name="g_t_005ccleardoublepage-1"></a>
-<h3 class="section">10.1 <code>\cleardoublepage</code></h3>
+<a name="g_t_005cclearpage-_0026-_005ccleardoublepage-1"></a>
+<h3 class="section">10.1 <code>\clearpage</code> & <code>\cleardoublepage</code></h3>
+<a name="index-_005cclearpage"></a>
+<a name="index-flushing-floats-and-starting-a-page"></a>
+<a name="index-starting-a-new-page-and-clearing-floats"></a>
<a name="index-_005ccleardoublepage"></a>
<a name="index-starting-on-a-right_002dhand-page"></a>
-<p>The <code>\cleardoublepage</code> command ends the current page and causes all
-the pending floating figures and tables that have so far appeared in the
-input to be printed. In a two-sided printing style, it also makes the
-next page a right-hand (odd-numbered) page, producing a blank page if
-necessary.
+<p>Synopsis:
</p>
+<div class="example">
+<pre class="example">\clearpage
+</pre></div>
-<hr>
-<a name="g_t_005cclearpage"></a>
-<div class="header">
-<p>
-Next: <a href="#g_t_005cnewpage" accesskey="n" rel="next">\newpage</a>, Previous: <a href="#g_t_005ccleardoublepage" accesskey="p" rel="prev">\cleardoublepage</a>, Up: <a href="#Page-breaking" accesskey="u" rel="up">Page breaking</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
-</div>
-<a name="g_t_005cclearpage-1"></a>
-<h3 class="section">10.2 <code>\clearpage</code></h3>
+<p>or:
+</p>
+<div class="example">
+<pre class="example">\cleardoublepage
+</pre></div>
-<a name="index-_005cclearpage"></a>
-<a name="index-flushing-floats-and-starting-a-page"></a>
-<a name="index-starting-a-new-page-and-clearing-floats"></a>
+<p>End the current page and output all of the pending floating figures and
+tables (see <a href="#Floats">Floats</a>). If there are too many floats to fit on the
+page then LaTeX will put in extra pages containing only floats. The
+<code>\clearpage</code> command is robust while <code>\cleardoublepage</code> is
+fragile (see <a href="#g_t_005cprotect">\protect</a>).
+</p>
+<p>In two-sided printing, <code>\cleardoublepage</code> also makes the next page
+a right-hand page, an odd-numbered page.
+</p>
+<p>LaTeX’s page breaks are optimized so ordinarily you only use this
+command in a document body to polish the final version, or inside
+commands.
+</p>
+<p>The <code>\cleardoublepage</code> command will put in a blank page, but it
+will have the running headers and footers. To get a really blank
+page, use this command.
+</p>
+<div class="example">
+<pre class="example">\let\origdoublepage\cleardoublepage
+\newcommand{\clearemptydoublepage}{%
+ \clearpage
+ {\pagestyle{empty}\origdoublepage}%
+}
+</pre></div>
-<p>The <code>\clearpage</code> command ends the current page and causes all the
-pending floating figures and tables that have so far appeared in the
-input to be printed.
+<p>If you want LaTeX’s standard <code>\chapter</code> command to do this then
+add the line <code>\let\cleardoublepage\clearemptydoublepage</code>.
</p>
+<p>The command <code>\newpage</code> (see <a href="#g_t_005cnewpage">\newpage</a>) also ends the current
+page, but without clearing pending floats. And, if LaTeX is in
+two-column mode then <code>\newpage</code> ends the current column while
+<code>\clearpage</code> and <code>\cleardoublepage</code> end the current page.
+</p>
+
<hr>
<a name="g_t_005cnewpage"></a>
<div class="header">
<p>
-Next: <a href="#g_t_005cenlargethispage" accesskey="n" rel="next">\enlargethispage</a>, Previous: <a href="#g_t_005cclearpage" accesskey="p" rel="prev">\clearpage</a>, Up: <a href="#Page-breaking" accesskey="u" rel="up">Page breaking</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
+Next: <a href="#g_t_005cenlargethispage" accesskey="n" rel="next">\enlargethispage</a>, Previous: <a href="#g_t_005cclearpage-_0026-_005ccleardoublepage" accesskey="p" rel="prev">\clearpage & \cleardoublepage</a>, Up: <a href="#Page-breaking" accesskey="u" rel="up">Page breaking</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="g_t_005cnewpage-1"></a>
-<h3 class="section">10.3 <code>\newpage</code></h3>
+<h3 class="section">10.2 <code>\newpage</code></h3>
<a name="index-_005cnewpage"></a>
<a name="index-new-page_002c-starting"></a>
<a name="index-starting-a-new-page"></a>
-<p>The <code>\newpage</code> command ends the current page, but does not clear
-floats (see <a href="#g_t_005cclearpage">\clearpage</a>).
+<p>Synopsis:
</p>
+<div class="example">
+<pre class="example">\newpage
+</pre></div>
+<p>End the current page. This command is robust (see <a href="#g_t_005cprotect">\protect</a>).
+</p>
+<p>LaTeX’s page breaks are optimized so ordinarily you only use this
+command in a document body to polish the final version, or inside
+commands.
+</p>
+<p>While the commands <code>\clearpage</code> and <code>\cleardoublepage</code> also
+end the current page, in addition they clear pending floats
+(see <a href="#g_t_005cclearpage-_0026-_005ccleardoublepage">\clearpage & \cleardoublepage</a>). And, if LaTeX is in
+two-column mode then <code>\clearpage</code> and <code>\cleardoublepage</code> end
+the current page, possibly leaving an empty column, while
+<code>\newpage</code> only ends the current column.
+</p>
+<p>In contrast with <code>\pagebreak</code> (see <a href="#g_t_005cpagebreak-_0026-_005cnopagebreak">\pagebreak & \nopagebreak</a>),
+the <code>\newpage</code> command will cause the new page to start right where
+requested. This
+</p>
+<div class="example">
+<pre class="example">Four score and seven years ago our fathers brought forth on this continent,
+\newpage
+\noindent a new nation, conceived in Liberty, and dedicated to the proposition
+that all men are created equal.
+</pre></div>
+
+<p>makes a new page start after ‘<samp>continent,</samp>’ and the cut-off line
+is not right justified. In addition, <code>\newpage</code> does not
+vertically stretch out the page, as <code>\pagebreak</code> does.
+</p>
+
<hr>
<a name="g_t_005cenlargethispage"></a>
<div class="header">
@@ -8509,24 +8587,38 @@
Next: <a href="#g_t_005cpagebreak-_0026-_005cnopagebreak" accesskey="n" rel="next">\pagebreak & \nopagebreak</a>, Previous: <a href="#g_t_005cnewpage" accesskey="p" rel="prev">\newpage</a>, Up: <a href="#Page-breaking" accesskey="u" rel="up">Page breaking</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="g_t_005cenlargethispage-1"></a>
-<h3 class="section">10.4 <code>\enlargethispage</code></h3>
+<h3 class="section">10.3 <code>\enlargethispage</code></h3>
<a name="index-_005cenlargethispage"></a>
<a name="index-enlarge-current-page"></a>
-<p><code>\enlargethispage{size}</code>
+<p>Synopsis, one of:
</p>
-<p><code>\enlargethispage*{size}</code>
+<div class="example">
+<pre class="example">\enlargethispage{size}
+\enlargethispage*{size}
+</pre></div>
+
+<p>Enlarge the <code>\textheight</code> for the current page. The required
+argument <var>size</var> must be a rigid length (see <a href="#Lengths">Lengths</a>). It may be
+positive or negative. This command is fragile (see <a href="#g_t_005cprotect">\protect</a>).
</p>
-<p>Enlarge the <code>\textheight</code> for the current page by the specified
-amount; e.g., <code>\enlargethispage{\baselineskip}</code> will allow one
-additional line.
+<p>A common strategy is to wait until you have the final text of a
+document, and then pass through it tweaking line and page breaks. This
+command allows you some page size leeway.
</p>
-<p>The starred form tries to squeeze the material together on the page as
-much as possible. This is normally used together with an explicit
-<code>\pagebreak</code>.
+<p>This will allow one extra line on the current page.
</p>
+<div class="example">
+<pre class="example">\enlargethispage{\baselineskip}
+</pre></div>
+<p>The starred form <code>\enlargesthispage*</code> tries to squeeze the material
+together on the page as much as possible, for the common use case of
+geting one more line on the page. This is often used together with an
+explicit <code>\pagebreak</code>.
+</p>
+
<hr>
<a name="g_t_005cpagebreak-_0026-_005cnopagebreak"></a>
<div class="header">
@@ -8534,7 +8626,7 @@
Previous: <a href="#g_t_005cenlargethispage" accesskey="p" rel="prev">\enlargethispage</a>, Up: <a href="#Page-breaking" accesskey="u" rel="up">Page breaking</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Concept-Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="g_t_005cpagebreak-_0026-_005cnopagebreak-1"></a>
-<h3 class="section">10.5 <code>\pagebreak</code> & <code>\nopagebreak</code></h3>
+<h3 class="section">10.4 <code>\pagebreak</code> & <code>\nopagebreak</code></h3>
<a name="index-_005cpagebreak"></a>
<a name="index-_005cnopagebreak"></a>
@@ -8544,21 +8636,47 @@
<p>Synopses:
</p>
<div class="example">
-<pre class="example">\pagebreak[<var>priority</var>]
-\nopagebreak[<var>priority</var>]
+<pre class="example">\pagebreak
+\pagebreak[<var>zero-to-four</var>]
</pre></div>
-<p>By default, the <code>\pagebreak</code> (<code>\nopagebreak</code>) command forces
-(prevents) a page break at the current position. With
-<code>\pagebreak</code>, the vertical space on the page is stretched out
-where possible so that it extends to the normal bottom margin.
+<p>or:
</p>
-<p>With the optional argument <var>priority</var>, you can convert the
-<code>\pagebreak</code> command from a demand to a request. The number must
-be a number from 0 to 4. The higher the number, the more
-insistent the request is.
+<div class="example">
+<pre class="example">\nopagebreak
+\nopagebreak[<var>zero-to-four</var>]
+</pre></div>
+
+<p>Encourage or discourage a page break. The optional <var>zero-to-four</var>
+is an integer that converts the command from a demand to a request. The
+higher the number, the more insistent the request. The default is 4, so
+that without the optional argument these commands entirely force or
+prevent the break. Both commands are fragile (see <a href="#g_t_005cprotect">\protect</a>).
</p>
+<p>LaTeX’s page endings are optimized so ordinarily you only use this
+command in a document body to polish the final version, or inside
+commands.
+</p>
+<p>If you use these inside a paragraph, they apply to the point following
+the line in which they appear. So this
+</p>
+<div class="example">
+<pre class="example">Four score and seven years ago our fathers brought forth on this continent,
+\pagebreak
+a new nation, conceived in Liberty, and dedicated to the proposition
+that all men are created equal.
+</pre></div>
+<p>does not give a page break at ‘<samp>continent,</samp>’ but instead at
+‘<samp>nation,</samp>’ since that is where LaTeX breaks that line. In
+addition, with <code>\pagebreak</code> the vertical space on the page is
+stretched out where possible so that it extends to the normal bottom
+margin. This can look wierd, and if <code>\flushbottom</code> is in effect
+this can cause you to get ‘<samp>Underfull \vbox (badness 10000) has
+occurred while \output is active</samp>’. See <a href="#g_t_005cnewpage">\newpage</a> for a command that
+does not have these effects.
+</p>
+
<hr>
<a name="Footnotes"></a>
<div class="header">
@@ -16784,12 +16902,13 @@
LaTeX document.
</p>
<p>The <code>\include</code> command does three things: it executes
-<code>\clearpage</code> (see <a href="#g_t_005cclearpage">\clearpage</a>), then it inputs the material from
-<samp><var>filename</var>.tex</samp> into the document, and then it does another
-<code>\clearpage</code>. This command can only appear in the document body.
-The <code>\includeonly</code> command controls which files will be read by
-LaTeX under subsequent <code>\include</code> commands. Its list of
-filenames is comma-separated, and it can only appear in the preamble.
+<code>\clearpage</code> (see <a href="#g_t_005cclearpage-_0026-_005ccleardoublepage">\clearpage & \cleardoublepage</a>), then it
+inputs the material from <samp><var>filename</var>.tex</samp> into the document,
+and then it does another <code>\clearpage</code>. This command can only
+appear in the document body. The <code>\includeonly</code> command controls
+which files will be read by LaTeX under subsequent <code>\include</code>
+commands. Its list of filenames is comma-separated, and it can only
+appear in the preamble.
</p>
<p>This example root document, <samp>constitution.tex</samp>, brings in
three files, <samp>preamble.tex</samp>, <samp>articles.tex</samp>, and
@@ -18303,7 +18422,7 @@
<tr><td></td><td valign="top"><a href="#index-float-package"><code>float</code> <span class="roman">package</span></a>:</td><td> </td><td valign="top"><a href="#Floats">Floats</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-float-page">float page</a>:</td><td> </td><td valign="top"><a href="#Floats">Floats</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-flush-left-equations">flush left equations</a>:</td><td> </td><td valign="top"><a href="#Document-class-options">Document class options</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-flushing-floats-and-starting-a-page">flushing floats and starting a page</a>:</td><td> </td><td valign="top"><a href="#g_t_005cclearpage">\clearpage</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-flushing-floats-and-starting-a-page">flushing floats and starting a page</a>:</td><td> </td><td valign="top"><a href="#g_t_005cclearpage-_0026-_005ccleardoublepage">\clearpage & \cleardoublepage</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-font-catalogue">font catalogue</a>:</td><td> </td><td valign="top"><a href="#Low_002dlevel-font-commands">Low-level font commands</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-font-commands_002c-low_002dlevel">font commands, low-level</a>:</td><td> </td><td valign="top"><a href="#Low_002dlevel-font-commands">Low-level font commands</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-font-size">font size</a>:</td><td> </td><td valign="top"><a href="#Low_002dlevel-font-commands">Low-level font commands</a></td></tr>
@@ -18725,9 +18844,9 @@
<tr><td></td><td valign="top"><a href="#index-star_002dvariants_002c-commands">star-variants, commands</a>:</td><td> </td><td valign="top"><a href="#g_t_005c_0040ifstar">\@ifstar</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-starred-form_002c-defining-new-commands">starred form, defining new commands</a>:</td><td> </td><td valign="top"><a href="#g_t_005cnewcommand-_0026-_005crenewcommand">\newcommand & \renewcommand</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-starting-a-new-page">starting a new page</a>:</td><td> </td><td valign="top"><a href="#g_t_005cnewpage">\newpage</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-starting-a-new-page-and-clearing-floats">starting a new page and clearing floats</a>:</td><td> </td><td valign="top"><a href="#g_t_005cclearpage">\clearpage</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-starting-a-new-page-and-clearing-floats">starting a new page and clearing floats</a>:</td><td> </td><td valign="top"><a href="#g_t_005cclearpage-_0026-_005ccleardoublepage">\clearpage & \cleardoublepage</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-starting-and-ending">starting and ending</a>:</td><td> </td><td valign="top"><a href="#Starting-and-ending">Starting and ending</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-starting-on-a-right_002dhand-page">starting on a right-hand page</a>:</td><td> </td><td valign="top"><a href="#g_t_005ccleardoublepage">\cleardoublepage</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-starting-on-a-right_002dhand-page">starting on a right-hand page</a>:</td><td> </td><td valign="top"><a href="#g_t_005cclearpage-_0026-_005ccleardoublepage">\clearpage & \cleardoublepage</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-sterling-symbol">sterling symbol</a>:</td><td> </td><td valign="top"><a href="#Text-symbols">Text symbols</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-straight-double-quote_002c-base">straight double quote, base</a>:</td><td> </td><td valign="top"><a href="#Text-symbols">Text symbols</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-straight-quote_002c-base">straight quote, base</a>:</td><td> </td><td valign="top"><a href="#Text-symbols">Text symbols</a></td></tr>
@@ -19143,8 +19262,8 @@
<tr><td></td><td valign="top"><a href="#index-_005cClassInfoNoLine"><code>\ClassInfoNoLine</code></a>:</td><td> </td><td valign="top"><a href="#Class-and-package-commands">Class and package commands</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-_005cClassWarning"><code>\ClassWarning</code></a>:</td><td> </td><td valign="top"><a href="#Class-and-package-commands">Class and package commands</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-_005cClassWarningNoLine"><code>\ClassWarningNoLine</code></a>:</td><td> </td><td valign="top"><a href="#Class-and-package-commands">Class and package commands</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-_005ccleardoublepage"><code>\cleardoublepage</code></a>:</td><td> </td><td valign="top"><a href="#g_t_005ccleardoublepage">\cleardoublepage</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-_005cclearpage"><code>\clearpage</code></a>:</td><td> </td><td valign="top"><a href="#g_t_005cclearpage">\clearpage</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-_005ccleardoublepage"><code>\cleardoublepage</code></a>:</td><td> </td><td valign="top"><a href="#g_t_005cclearpage-_0026-_005ccleardoublepage">\clearpage & \cleardoublepage</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-_005cclearpage"><code>\clearpage</code></a>:</td><td> </td><td valign="top"><a href="#g_t_005cclearpage-_0026-_005ccleardoublepage">\clearpage & \cleardoublepage</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-_005ccline"><code>\cline</code></a>:</td><td> </td><td valign="top"><a href="#g_t_005ccline">\cline</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-_005cclosing"><code>\closing</code></a>:</td><td> </td><td valign="top"><a href="#g_t_005cclosing">\closing</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-_005cclubsuit"><code>\clubsuit</code></a>:</td><td> </td><td valign="top"><a href="#Math-symbols">Math symbols</a></td></tr>
Modified: trunk/latex2e.info
===================================================================
--- trunk/latex2e.info 2018-06-01 23:40:15 UTC (rev 637)
+++ trunk/latex2e.info 2018-06-02 14:23:19 UTC (rev 638)
@@ -5640,9 +5640,9 @@
Encourage or discourage a line break. The optional ZERO-TO-FOUR is
an integer that converts the command from a demand to a request. The
-higher the number, the more insistent the request. The default is 4, to
-entirely force or prevent the break. Both commands are fragile (*note
-\protect::).
+higher the number, the more insistent the request. The default is 4, so
+that without the optional argument these commands entirely force or
+prevent the break. Both commands are fragile (*note \protect::).
Here we tell LaTeX that a good place to put a linebreak is after the
standard legal text.
@@ -5661,87 +5661,191 @@
10 Page breaking
****************
-LaTeX starts new pages asynchronously, when enough material has
-accumulated to fill up a page. Usually this happens automatically, but
-sometimes you may want to influence the breaks.
+Ordinarily LaTeX automatically takes care of breaking output into pages
+with its usual aplomb. But if you are writing commands, or tweaking the
+final version of a document, then you may need to understand how to
+influence its actions.
+ LaTeX's algorithm for splitting a document into pages is more complex
+than just waiting until there is enough material to fill a page and
+outputting the result. Instead, LaTeX typesets more material than would
+fit on the page and then chooses a break that is optimal in some way (it
+has the smallest badness). An example of the advantage of this approach
+is that if the page has some vertical space that can be stretched or
+shrunk, such as with rubber lengths between paragraphs, then LaTeX can
+use that to avoid widow lines (where a new page starts with the last
+line of a paragraph; LaTeX can squeeze the extra line onto the first
+page) and orphans (where the first line of paragraph is at the end of a
+page; LaTeX can stretch the material of the first page so the extra line
+falls on the second page). Another example is where LaTeX uses
+available vertical shrinkage to fit on a page not just the header for a
+new section but also the first two lines of that section.
+
+ But LaTeX does not optimize over the entire document's set of page
+breaks. So it can happen that the first page break is great but the
+second one is lousy; to break the current page LaTeX doesn't look as far
+ahead as the next page break. So occasionally you may want to influence
+page breaks while preparing a final version of a document.
+
+ *Note Layout:: for more material that is relevant to page breaking.
+
* Menu:
-* \cleardoublepage:: Start a new right-hand page.
-* \clearpage:: Start a new page.
-* \newpage:: Start a new page.
-* \enlargethispage:: Enlarge the current page a bit.
-* \pagebreak & \nopagebreak:: Forcing & avoiding page breaks.
+* \clearpage & \cleardoublepage:: Start a new page; eject floats.
+* \newpage:: Start a new page.
+* \enlargethispage:: Enlarge the current page a bit.
+* \pagebreak & \nopagebreak:: Forcing & avoiding page breaks.
-File: latex2e.info, Node: \cleardoublepage, Next: \clearpage, Up: Page breaking
+File: latex2e.info, Node: \clearpage & \cleardoublepage, Next: \newpage, Up: Page breaking
-10.1 '\cleardoublepage'
-=======================
+10.1 '\clearpage' & '\cleardoublepage'
+======================================
-The '\cleardoublepage' command ends the current page and causes all the
-pending floating figures and tables that have so far appeared in the
-input to be printed. In a two-sided printing style, it also makes the
-next page a right-hand (odd-numbered) page, producing a blank page if
-necessary.
+Synopsis:
-
-File: latex2e.info, Node: \clearpage, Next: \newpage, Prev: \cleardoublepage, Up: Page breaking
+ \clearpage
-10.2 '\clearpage'
-=================
+ or:
-The '\clearpage' command ends the current page and causes all the
-pending floating figures and tables that have so far appeared in the
-input to be printed.
+ \cleardoublepage
+ End the current page and output all of the pending floating figures
+and tables (*note Floats::). If there are too many floats to fit on the
+page then LaTeX will put in extra pages containing only floats. The
+'\clearpage' command is robust while '\cleardoublepage' is fragile
+(*note \protect::).
+
+ In two-sided printing, '\cleardoublepage' also makes the next page a
+right-hand page, an odd-numbered page.
+
+ LaTeX's page breaks are optimized so ordinarily you only use this
+command in a document body to polish the final version, or inside
+commands.
+
+ The '\cleardoublepage' command will put in a blank page, but it will
+have the running headers and footers. To get a really blank page, use
+this command.
+
+ \let\origdoublepage\cleardoublepage
+ \newcommand{\clearemptydoublepage}{%
+ \clearpage
+ {\pagestyle{empty}\origdoublepage}%
+ }
+
+ If you want LaTeX's standard '\chapter' command to do this then add
+the line '\let\cleardoublepage\clearemptydoublepage'.
+
+ The command '\newpage' (*note \newpage::) also ends the current page,
+but without clearing pending floats. And, if LaTeX is in two-column
+mode then '\newpage' ends the current column while '\clearpage' and
+'\cleardoublepage' end the current page.
+
-File: latex2e.info, Node: \newpage, Next: \enlargethispage, Prev: \clearpage, Up: Page breaking
+File: latex2e.info, Node: \newpage, Next: \enlargethispage, Prev: \clearpage & \cleardoublepage, Up: Page breaking
-10.3 '\newpage'
+10.2 '\newpage'
===============
-The '\newpage' command ends the current page, but does not clear floats
-(*note \clearpage::).
+Synopsis:
+ \newpage
+
+ End the current page. This command is robust (*note \protect::).
+
+ LaTeX's page breaks are optimized so ordinarily you only use this
+command in a document body to polish the final version, or inside
+commands.
+
+ While the commands '\clearpage' and '\cleardoublepage' also end the
+current page, in addition they clear pending floats (*note \clearpage &
+\cleardoublepage::). And, if LaTeX is in two-column mode then
+'\clearpage' and '\cleardoublepage' end the current page, possibly
+leaving an empty column, while '\newpage' only ends the current column.
+
+ In contrast with '\pagebreak' (*note \pagebreak & \nopagebreak::),
+the '\newpage' command will cause the new page to start right where
+requested. This
+
+ Four score and seven years ago our fathers brought forth on this continent,
+ \newpage
+ \noindent a new nation, conceived in Liberty, and dedicated to the proposition
+ that all men are created equal.
+
+makes a new page start after 'continent,' and the cut-off line is not
+right justified. In addition, '\newpage' does not vertically stretch
+out the page, as '\pagebreak' does.
+
File: latex2e.info, Node: \enlargethispage, Next: \pagebreak & \nopagebreak, Prev: \newpage, Up: Page breaking
-10.4 '\enlargethispage'
+10.3 '\enlargethispage'
=======================
-'\enlargethispage{size}'
+Synopsis, one of:
- '\enlargethispage*{size}'
+ \enlargethispage{size}
+ \enlargethispage*{size}
- Enlarge the '\textheight' for the current page by the specified
-amount; e.g., '\enlargethispage{\baselineskip}' will allow one
-additional line.
+ Enlarge the '\textheight' for the current page. The required
+argument SIZE must be a rigid length (*note Lengths::). It may be
+positive or negative. This command is fragile (*note \protect::).
- The starred form tries to squeeze the material together on the page
-as much as possible. This is normally used together with an explicit
-'\pagebreak'.
+ A common strategy is to wait until you have the final text of a
+document, and then pass through it tweaking line and page breaks. This
+command allows you some page size leeway.
+ This will allow one extra line on the current page.
+
+ \enlargethispage{\baselineskip}
+
+ The starred form '\enlargesthispage*' tries to squeeze the material
+together on the page as much as possible, for the common use case of
+geting one more line on the page. This is often used together with an
+explicit '\pagebreak'.
+
File: latex2e.info, Node: \pagebreak & \nopagebreak, Prev: \enlargethispage, Up: Page breaking
-10.5 '\pagebreak' & '\nopagebreak'
+10.4 '\pagebreak' & '\nopagebreak'
==================================
Synopses:
- \pagebreak[PRIORITY]
- \nopagebreak[PRIORITY]
+ \pagebreak
+ \pagebreak[ZERO-TO-FOUR]
- By default, the '\pagebreak' ('\nopagebreak') command forces
-(prevents) a page break at the current position. With '\pagebreak', the
-vertical space on the page is stretched out where possible so that it
-extends to the normal bottom margin.
+ or:
- With the optional argument PRIORITY, you can convert the '\pagebreak'
-command from a demand to a request. The number must be a number from 0
-to 4. The higher the number, the more insistent the request is.
+ \nopagebreak
+ \nopagebreak[ZERO-TO-FOUR]
+ Encourage or discourage a page break. The optional ZERO-TO-FOUR is
+an integer that converts the command from a demand to a request. The
+higher the number, the more insistent the request. The default is 4, so
+that without the optional argument these commands entirely force or
+prevent the break. Both commands are fragile (*note \protect::).
+
+ LaTeX's page endings are optimized so ordinarily you only use this
+command in a document body to polish the final version, or inside
+commands.
+
+ If you use these inside a paragraph, they apply to the point
+following the line in which they appear. So this
+
+ Four score and seven years ago our fathers brought forth on this continent,
+ \pagebreak
+ a new nation, conceived in Liberty, and dedicated to the proposition
+ that all men are created equal.
+
+does not give a page break at 'continent,' but instead at 'nation,'
+since that is where LaTeX breaks that line. In addition, with
+'\pagebreak' the vertical space on the page is stretched out where
+possible so that it extends to the normal bottom margin. This can look
+wierd, and if '\flushbottom' is in effect this can cause you to get
+'Underfull \vbox (badness 10000) has occurred while \output is active'.
+*Note \newpage:: for a command that does not have these effects.
+
File: latex2e.info, Node: Footnotes, Next: Definitions, Prev: Page breaking, Up: Top
@@ -11018,12 +11122,12 @@
document.
The '\include' command does three things: it executes '\clearpage'
-(*note \clearpage::), then it inputs the material from 'FILENAME.tex'
-into the document, and then it does another '\clearpage'. This command
-can only appear in the document body. The '\includeonly' command
-controls which files will be read by LaTeX under subsequent '\include'
-commands. Its list of filenames is comma-separated, and it can only
-appear in the preamble.
+(*note \clearpage & \cleardoublepage::), then it inputs the material
+from 'FILENAME.tex' into the document, and then it does another
+'\clearpage'. This command can only appear in the document body. The
+'\includeonly' command controls which files will be read by LaTeX under
+subsequent '\include' commands. Its list of filenames is
+comma-separated, and it can only appear in the preamble.
This example root document, 'constitution.tex', brings in three
files, 'preamble.tex', 'articles.tex', and 'amendments.tex'.
@@ -12173,7 +12277,8 @@
* float page: Floats. (line 58)
* flush left equations: Document class options.
(line 57)
-* flushing floats and starting a page: \clearpage. (line 6)
+* flushing floats and starting a page: \clearpage & \cleardoublepage.
+ (line 6)
* font catalogue: Low-level font commands.
(line 21)
* font commands, low-level: Low-level font commands.
@@ -12657,9 +12762,11 @@
* starred form, defining new commands: \newcommand & \renewcommand.
(line 25)
* starting a new page: \newpage. (line 6)
-* starting a new page and clearing floats: \clearpage. (line 6)
+* starting a new page and clearing floats: \clearpage & \cleardoublepage.
+ (line 6)
* starting and ending: Starting and ending. (line 6)
-* starting on a right-hand page: \cleardoublepage. (line 6)
+* starting on a right-hand page: \clearpage & \cleardoublepage.
+ (line 6)
* sterling symbol: Text symbols. (line 48)
* straight double quote, base: Text symbols. (line 160)
* straight quote, base: Text symbols. (line 160)
@@ -12971,8 +13078,10 @@
(line 41)
* \ClassWarningNoLine: Class and package commands.
(line 41)
-* \cleardoublepage: \cleardoublepage. (line 6)
-* \clearpage: \clearpage. (line 6)
+* \cleardoublepage: \clearpage & \cleardoublepage.
+ (line 6)
+* \clearpage: \clearpage & \cleardoublepage.
+ (line 6)
* \cline: \cline. (line 6)
* \closing: \closing. (line 6)
* \clubsuit: Math symbols. (line 132)
@@ -14115,152 +14224,151 @@
Node: sloppypar212081
Node: \hyphenation213220
Node: \linebreak & \nolinebreak213806
-Node: Page breaking214824
-Node: \cleardoublepage215432
-Node: \clearpage215861
-Node: \newpage216158
-Node: \enlargethispage216389
-Node: \pagebreak & \nopagebreak216916
-Node: Footnotes217610
-Node: \footnote218756
-Node: \footnotemark221704
-Node: \footnotetext224049
-Node: Footnotes in section headings224650
-Node: Footnotes in a table225477
-Node: Footnotes of footnotes228355
-Node: Definitions229059
-Node: \newcommand & \renewcommand229936
-Node: \providecommand235147
-Node: \newcounter236296
-Node: \newlength238041
-Node: \newsavebox238901
-Node: \newenvironment & \renewenvironment239845
-Node: \newtheorem244955
-Node: \newfont248484
-Node: \protect249780
-Node: \ignorespaces & \ignorespacesafterend252166
-Node: Counters254915
-Node: \alph \Alph \arabic \roman \Roman \fnsymbol256588
-Node: \usecounter259417
-Node: \value260280
-Node: \setcounter261209
-Node: \addtocounter261811
-Node: \refstepcounter262276
-Node: \stepcounter262934
-Node: \day \month \year263276
-Node: Lengths263821
-Node: Units of length265611
-Node: \setlength267105
-Node: \addtolength267882
-Node: \settodepth268856
-Node: \settoheight269611
-Node: \settowidth270370
-Node: Predefined lengths271153
-Node: Making paragraphs271668
-Node: \indent272240
-Node: \noindent272702
-Node: \parskip273211
-Node: Marginal notes273469
-Node: Math formulas275281
-Node: Subscripts & superscripts277065
-Node: Math symbols278403
-Node: Math functions303732
-Node: Math accents304675
-Node: Spacing in math mode305647
-Node: Math miscellany307114
-Node: Modes309664
-Node: \ensuremath311504
-Node: Page styles312420
-Node: \maketitle312914
-Node: \pagenumbering313984
-Node: \pagestyle314480
-Node: \thispagestyle315621
-Node: Spaces315927
-Node: \hspace316797
-Node: \hfill317752
-Node: \spacefactor318144
-Node: \(SPACE) and \@320856
-Ref: \AT320999
-Node: \frenchspacing322476
-Node: \normalsfcodes323092
-Node: \(SPACE) after control sequence323281
-Node: \thinspace324192
-Node: \/324512
-Node: \hrulefill \dotfill325694
-Node: \addvspace326687
-Node: \bigskip \medskip \smallskip327733
-Node: \vfill328625
-Node: \vspace329494
-Node: Boxes330487
-Node: \mbox331199
-Node: \fbox and \framebox331486
-Node: lrbox332290
-Node: \makebox332648
-Node: \parbox333368
-Node: \raisebox335479
-Node: \savebox336092
-Node: \sbox336507
-Node: \usebox336956
-Node: Color337217
-Node: Color package options338061
-Node: Color models339707
-Node: Commands for color342016
-Node: Define colors342431
-Node: Colored text343146
-Node: Colored boxes345521
-Node: Colored pages346960
-Node: Graphics347653
-Node: Graphics package options349780
-Node: Graphics package configuration352536
-Node: \graphicspath353338
-Node: \DeclareGraphicsExtensions356261
-Node: \DeclareGraphicsRule358058
-Node: Commands for graphics361247
-Node: \includegraphics361752
-Node: \rotatebox374721
-Node: \scalebox377516
-Node: \resizebox378568
-Node: Special insertions379760
-Node: Reserved characters380564
-Node: Upper and lower case381765
-Node: Symbols by font position383680
-Node: Text symbols384300
-Node: Accents387748
-Node: Additional Latin letters390290
-Ref: Non-English characters390461
-Node: \rule391478
-Node: \today391907
-Node: Splitting the input392661
-Node: \endinput394038
-Node: \include & \includeonly395305
-Node: \input399322
-Node: Front/back matter400030
-Node: Tables of contents400235
-Node: \addcontentsline401296
-Node: \addtocontents402314
-Node: Glossaries402847
-Node: Indexes403366
-Node: Letters404999
-Node: \address408665
-Node: \cc409476
-Node: \closing409894
-Node: \encl410171
-Node: \location410586
-Node: \makelabels410850
-Node: \name413002
-Node: \opening413243
-Node: \ps413524
-Node: \signature413813
-Node: \telephone415030
-Node: Terminal input/output415395
-Node: \typein415660
-Node: \typeout416245
-Node: Command line416868
-Node: Document templates417820
-Node: beamer template418227
-Node: book template418878
-Node: tugboat template419246
-Node: Concept Index421610
-Node: Command Index486387
+Node: Page breaking214874
+Node: \clearpage & \cleardoublepage216903
+Node: \newpage218385
+Node: \enlargethispage219678
+Node: \pagebreak & \nopagebreak220633
+Node: Footnotes222218
+Node: \footnote223364
+Node: \footnotemark226312
+Node: \footnotetext228657
+Node: Footnotes in section headings229258
+Node: Footnotes in a table230085
+Node: Footnotes of footnotes232963
+Node: Definitions233667
+Node: \newcommand & \renewcommand234544
+Node: \providecommand239755
+Node: \newcounter240904
+Node: \newlength242649
+Node: \newsavebox243509
+Node: \newenvironment & \renewenvironment244453
+Node: \newtheorem249563
+Node: \newfont253092
+Node: \protect254388
+Node: \ignorespaces & \ignorespacesafterend256774
+Node: Counters259523
+Node: \alph \Alph \arabic \roman \Roman \fnsymbol261196
+Node: \usecounter264025
+Node: \value264888
+Node: \setcounter265817
+Node: \addtocounter266419
+Node: \refstepcounter266884
+Node: \stepcounter267542
+Node: \day \month \year267884
+Node: Lengths268429
+Node: Units of length270219
+Node: \setlength271713
+Node: \addtolength272490
+Node: \settodepth273464
+Node: \settoheight274219
+Node: \settowidth274978
+Node: Predefined lengths275761
+Node: Making paragraphs276276
+Node: \indent276848
+Node: \noindent277310
+Node: \parskip277819
+Node: Marginal notes278077
+Node: Math formulas279889
+Node: Subscripts & superscripts281673
+Node: Math symbols283011
+Node: Math functions308340
+Node: Math accents309283
+Node: Spacing in math mode310255
+Node: Math miscellany311722
+Node: Modes314272
+Node: \ensuremath316112
+Node: Page styles317028
+Node: \maketitle317522
+Node: \pagenumbering318592
+Node: \pagestyle319088
+Node: \thispagestyle320229
+Node: Spaces320535
+Node: \hspace321405
+Node: \hfill322360
+Node: \spacefactor322752
+Node: \(SPACE) and \@325464
+Ref: \AT325607
+Node: \frenchspacing327084
+Node: \normalsfcodes327700
+Node: \(SPACE) after control sequence327889
+Node: \thinspace328800
+Node: \/329120
+Node: \hrulefill \dotfill330302
+Node: \addvspace331295
+Node: \bigskip \medskip \smallskip332341
+Node: \vfill333233
+Node: \vspace334102
+Node: Boxes335095
+Node: \mbox335807
+Node: \fbox and \framebox336094
+Node: lrbox336898
+Node: \makebox337256
+Node: \parbox337976
+Node: \raisebox340087
+Node: \savebox340700
+Node: \sbox341115
+Node: \usebox341564
+Node: Color341825
+Node: Color package options342669
+Node: Color models344315
+Node: Commands for color346624
+Node: Define colors347039
+Node: Colored text347754
+Node: Colored boxes350129
+Node: Colored pages351568
+Node: Graphics352261
+Node: Graphics package options354388
+Node: Graphics package configuration357144
+Node: \graphicspath357946
+Node: \DeclareGraphicsExtensions360869
+Node: \DeclareGraphicsRule362666
+Node: Commands for graphics365855
+Node: \includegraphics366360
+Node: \rotatebox379329
+Node: \scalebox382124
+Node: \resizebox383176
+Node: Special insertions384368
+Node: Reserved characters385172
+Node: Upper and lower case386373
+Node: Symbols by font position388288
+Node: Text symbols388908
+Node: Accents392356
+Node: Additional Latin letters394898
+Ref: Non-English characters395069
+Node: \rule396086
+Node: \today396515
+Node: Splitting the input397269
+Node: \endinput398646
+Node: \include & \includeonly399913
+Node: \input403949
+Node: Front/back matter404657
+Node: Tables of contents404862
+Node: \addcontentsline405923
+Node: \addtocontents406941
+Node: Glossaries407474
+Node: Indexes407993
+Node: Letters409626
+Node: \address413292
+Node: \cc414103
+Node: \closing414521
+Node: \encl414798
+Node: \location415213
+Node: \makelabels415477
+Node: \name417629
+Node: \opening417870
+Node: \ps418151
+Node: \signature418440
+Node: \telephone419657
+Node: Terminal input/output420022
+Node: \typein420287
+Node: \typeout420872
+Node: Command line421495
+Node: Document templates422447
+Node: beamer template422854
+Node: book template423505
+Node: tugboat template423873
+Node: Concept Index426237
+Node: Command Index491232
End Tag Table
Modified: trunk/latex2e.pdf
===================================================================
(Binary files differ)
Modified: trunk/latex2e.texi
===================================================================
--- trunk/latex2e.texi 2018-06-01 23:40:15 UTC (rev 637)
+++ trunk/latex2e.texi 2018-06-02 14:23:19 UTC (rev 638)
@@ -6954,9 +6954,9 @@
Encourage or discourage a line break. The optional @var{zero-to-four}
is an integer that converts the command from a demand to a request. The
-higher the number, the more insistent the request. The default is 4, to
-entirely force or prevent the break. Both commands are fragile
-(@pxref{\protect}).
+higher the number, the more insistent the request. The default is 4, so
+that without the optional argument these commands entirely force or
+prevent the break. Both commands are fragile (@pxref{\protect}).
Here we tell @LaTeX{} that a good place to put a linebreak is after the
standard legal text.
@@ -6979,44 +6979,101 @@
@cindex page breaking
@cindex breaking pages
- at LaTeX{} starts new pages asynchronously, when enough material has
-accumulated to fill up a page. Usually this happens automatically,
-but sometimes you may want to influence the breaks.
+Ordinarily @LaTeX{} automatically takes care of breaking output into
+pages with its usual aplomb. But if you are writing commands, or
+tweaking the final version of a document, then you may need to
+understand how to influence its actions.
+ at c gredit: H Vogt https://tex.stackexchange.com/a/115563
+ at LaTeX{}'s algorithm for splitting a document into pages is more complex
+than just waiting until there is enough material to fill a page and
+outputting the result. Instead, @LaTeX{} typesets more material than
+would fit on the page and then chooses a break that is optimal in some
+way (it has the smallest badness). An example of the advantage of this
+approach is that if the page has some vertical space that can be
+stretched or shrunk, such as with rubber lengths between paragraphs,
+then @LaTeX{} can use that to avoid widow lines (where a new page starts
+with the last line of a paragraph; @LaTeX{} can squeeze the extra line
+onto the first page) and orphans (where the first line of paragraph is
+at the end of a page; @LaTeX{} can stretch the material of the first
+page so the extra line falls on the second page). Another example is
+where @LaTeX{} uses available vertical shrinkage to fit on a page not
+just the header for a new section but also the first two lines of that
+section.
+
+But @LaTeX{} does not optimize over the entire document's set of page
+breaks. So it can happen that the first page break is great but the
+second one is lousy; to break the current page @LaTeX{} doesn't look as
+far ahead as the next page break. So occasionally you may want to
+influence page breaks while preparing a final version of a document.
+
+ at xref{Layout} for more material that is relevant to page breaking.
+
@menu
-* \cleardoublepage:: Start a new right-hand page.
-* \clearpage:: Start a new page.
-* \newpage:: Start a new page.
-* \enlargethispage:: Enlarge the current page a bit.
-* \pagebreak & \nopagebreak:: Forcing & avoiding page breaks.
+* \clearpage & \cleardoublepage:: Start a new page; eject floats.
+* \newpage:: Start a new page.
+* \enlargethispage:: Enlarge the current page a bit.
+* \pagebreak & \nopagebreak:: Forcing & avoiding page breaks.
@end menu
- at node \cleardoublepage
- at section @code{\cleardoublepage}
+ at node \clearpage & \cleardoublepage
+ at section @code{\clearpage} & @code{\cleardoublepage}
+ at findex \clearpage
+ at cindex flushing floats and starting a page
+ at cindex starting a new page and clearing floats
@findex \cleardoublepage
@cindex starting on a right-hand page
-The @code{\cleardoublepage} command ends the current page and causes all
-the pending floating figures and tables that have so far appeared in the
-input to be printed. In a two-sided printing style, it also makes the
-next page a right-hand (odd-numbered) page, producing a blank page if
-necessary.
+Synopsis:
+ at example
+\clearpage
+ at end example
- at node \clearpage
- at section @code{\clearpage}
+or:
- at findex \clearpage
- at cindex flushing floats and starting a page
- at cindex starting a new page and clearing floats
+ at example
+\cleardoublepage
+ at end example
-The @code{\clearpage} command ends the current page and causes all the
-pending floating figures and tables that have so far appeared in the
-input to be printed.
+End the current page and output all of the pending floating figures and
+tables (@pxref{Floats}). If there are too many floats to fit on the
+page then @LaTeX{} will put in extra pages containing only floats. The
+ at code{\clearpage} command is robust while @code{\cleardoublepage} is
+fragile (@pxref{\protect}).
+In two-sided printing, @code{\cleardoublepage} also makes the next page
+a right-hand page, an odd-numbered page.
+ at LaTeX{}'s page breaks are optimized so ordinarily you only use this
+command in a document body to polish the final version, or inside
+commands.
+
+ at c Credit: https://www.tex.ac.uk/FAQ-reallyblank.html
+The @code{\cleardoublepage} command will put in a blank page, but it
+will have the running headers and footers. To get a really blank
+page, use this command.
+
+ at example
+\let\origdoublepage\cleardoublepage
+\newcommand@{\clearemptydoublepage@}@{%
+ \clearpage
+ @{\pagestyle@{empty@}\origdoublepage@}%
+@}
+ at end example
+
+If you want @LaTeX{}'s standard @code{\chapter} command to do this then
+add the line @code{\let\cleardoublepage\clearemptydoublepage}.
+
+The command @code{\newpage} (@pxref{\newpage}) also ends the current
+page, but without clearing pending floats. And, if @LaTeX{} is in
+two-column mode then @code{\newpage} ends the current column while
+ at code{\clearpage} and @code{\cleardoublepage} end the current page.
+
+
+
@node \newpage
@section @code{\newpage}
@@ -7024,29 +7081,74 @@
@cindex new page, starting
@cindex starting a new page
-The @code{\newpage} command ends the current page, but does not clear
-floats (@pxref{\clearpage}).
+Synopsis:
+ at example
+\newpage
+ at end example
+End the current page. This command is robust (@pxref{\protect}).
+
+ at LaTeX{}'s page breaks are optimized so ordinarily you only use this
+command in a document body to polish the final version, or inside
+commands.
+
+While the commands @code{\clearpage} and @code{\cleardoublepage} also
+end the current page, in addition they clear pending floats
+(@pxref{\clearpage & \cleardoublepage}). And, if @LaTeX{} is in
+two-column mode then @code{\clearpage} and @code{\cleardoublepage} end
+the current page, possibly leaving an empty column, while
+ at code{\newpage} only ends the current column.
+
+In contrast with @code{\pagebreak} (@pxref{\pagebreak & \nopagebreak}),
+the @code{\newpage} command will cause the new page to start right where
+requested. This
+
+ at example
+Four score and seven years ago our fathers brought forth on this continent,
+\newpage
+\noindent a new nation, conceived in Liberty, and dedicated to the proposition
+that all men are created equal.
+ at end example
+
+ at noindent makes a new page start after @samp{continent,} and the cut-off line
+is not right justified. In addition, @code{\newpage} does not
+vertically stretch out the page, as @code{\pagebreak} does.
+
+
@node \enlargethispage
@section @code{\enlargethispage}
@findex \enlargethispage
@cindex enlarge current page
- at code{\enlargethispage@{size@}}
+Synopsis, one of:
- at code{\enlargethispage*@{size@}}
+ at example
+\enlargethispage@{size@}
+\enlargethispage*@{size@}
+ at end example
-Enlarge the @code{\textheight} for the current page by the specified
-amount; e.g., @code{\enlargethispage@{\baselineskip@}} will allow one
-additional line.
+Enlarge the @code{\textheight} for the current page. The required
+argument @var{size} must be a rigid length (@pxref{Lengths}). It may be
+positive or negative. This command is fragile (@pxref{\protect}).
-The starred form tries to squeeze the material together on the page as
-much as possible. This is normally used together with an explicit
- at code{\pagebreak}.
+A common strategy is to wait until you have the final text of a
+document, and then pass through it tweaking line and page breaks. This
+command allows you some page size leeway.
+This will allow one extra line on the current page.
+ at example
+\enlargethispage@{\baselineskip@}
+ at end example
+
+The starred form @code{\enlargesthispage*} tries to squeeze the material
+together on the page as much as possible, for the common use case of
+geting one more line on the page. This is often used together with an
+explicit @code{\pagebreak}.
+
+
@node \pagebreak & \nopagebreak
@section @code{\pagebreak} & @code{\nopagebreak}
@@ -7058,21 +7160,47 @@
Synopses:
@example
-\pagebreak[@var{priority}]
-\nopagebreak[@var{priority}]
+\pagebreak
+\pagebreak[@var{zero-to-four}]
@end example
-By default, the @code{\pagebreak} (@code{\nopagebreak}) command forces
-(prevents) a page break at the current position. With
- at code{\pagebreak}, the vertical space on the page is stretched out
-where possible so that it extends to the normal bottom margin.
+or:
-With the optional argument @var{priority}, you can convert the
- at code{\pagebreak} command from a demand to a request. The number must
-be a number from 0 to at tie{}4. The higher the number, the more
-insistent the request is.
+ at example
+\nopagebreak
+\nopagebreak[@var{zero-to-four}]
+ at end example
+Encourage or discourage a page break. The optional @var{zero-to-four}
+is an integer that converts the command from a demand to a request. The
+higher the number, the more insistent the request. The default is 4, so
+that without the optional argument these commands entirely force or
+prevent the break. Both commands are fragile (@pxref{\protect}).
+ at LaTeX{}'s page endings are optimized so ordinarily you only use this
+command in a document body to polish the final version, or inside
+commands.
+
+If you use these inside a paragraph, they apply to the point following
+the line in which they appear. So this
+
+ at example
+Four score and seven years ago our fathers brought forth on this continent,
+\pagebreak
+a new nation, conceived in Liberty, and dedicated to the proposition
+that all men are created equal.
+ at end example
+
+ at noindent does not give a page break at @samp{continent,} but instead at
+ at samp{nation,} since that is where @LaTeX{} breaks that line. In
+addition, with @code{\pagebreak} the vertical space on the page is
+stretched out where possible so that it extends to the normal bottom
+margin. This can look wierd, and if @code{\flushbottom} is in effect
+this can cause you to get @samp{Underfull \vbox (badness 10000) has
+occurred while \output is active}. @xref{\newpage} for a command that
+does not have these effects.
+
+
@node Footnotes
@chapter Footnotes
@@ -13421,12 +13549,13 @@
@LaTeX{} document.
The @code{\include} command does three things: it executes
- at code{\clearpage} (@pxref{\clearpage}), then it inputs the material from
- at file{@var{filename}.tex} into the document, and then it does another
- at code{\clearpage}. This command can only appear in the document body.
-The @code{\includeonly} command controls which files will be read by
- at LaTeX{} under subsequent @code{\include} commands. Its list of
-filenames is comma-separated, and it can only appear in the preamble.
+ at code{\clearpage} (@pxref{\clearpage & \cleardoublepage}), then it
+inputs the material from @file{@var{filename}.tex} into the document,
+and then it does another @code{\clearpage}. This command can only
+appear in the document body. The @code{\includeonly} command controls
+which files will be read by @LaTeX{} under subsequent @code{\include}
+commands. Its list of filenames is comma-separated, and it can only
+appear in the preamble.
This example root document, @file{constitution.tex}, brings in
three files, @file{preamble.tex}, @file{articles.tex}, and
More information about the latexrefman-commits
mailing list