[latexrefman-commits] [SCM] latexrefman updated: r1083 - trunk

Karl Berry INVALID.NOREPLY at gnu.org.ua
Fri May 13 17:44:52 CEST 2022


Author: karl
Date: 2022-05-13 15:44:52 +0000 (Fri, 13 May 2022)
New Revision: 1083

Modified:
   trunk/ChangeLog
   trunk/latex2e.html
   trunk/latex2e.info
   trunk/latex2e.pdf
   trunk/latex2e.texi
Log:
\(re)newcommand optional arguments description

Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog	2022-01-26 23:01:41 UTC (rev 1082)
+++ trunk/ChangeLog	2022-05-13 15:44:52 UTC (rev 1083)
@@ -1,3 +1,10 @@
+2022-05-13  Karl Berry  <karl at freefriends.org>
+
+	* latex2e.texi (\newcommand & \renewcommand): had an extra
+	[@var{nargs}] in synopsis. Report from Vladimir Ivanovic,
+	11 May 2022. Also correct and (hopefully) clarify optional
+	argument description.
+
 2022-01-26  Karl Berry  <karl at freefriends.org>
 
 	* latex2e-es.xml: remove bogus CR characters. CTAN complained.

Modified: trunk/latex2e.html
===================================================================
--- trunk/latex2e.html	2022-01-26 23:01:41 UTC (rev 1082)
+++ trunk/latex2e.html	2022-05-13 15:44:52 UTC (rev 1083)
@@ -3328,7 +3328,8 @@
 (see <a href="#g_t_005cenlargethispage"><code>\enlargethispage</code></a>).
 </p>
 <p>The <code>\flushbottom</code> state is the default only if you select the
-<code>twoside</code> document class option (see <a href="#Document-class-options">Document class options</a>).
+<code>twocolumn</code> document class option (see <a href="#Document-class-options">Document class options</a>),
+and for indexes made using <code>makeidx</code>.
 </p>
 
 <hr>
@@ -10796,9 +10797,10 @@
 <span id="index-commands_002c-defining-new-ones"></span>
 <span id="index-commands_002c-redefining"></span>
 <span id="index-defining-a-new-command"></span>
+<span id="index-redefining-a-command"></span>
 <span id="index-new-commands_002c-defining"></span>
 
-<p>Synopses, one of:
+<p>Synopses, one of (three regular forms, three starred forms):
 </p>
 <div class="example">
 <pre class="example">\newcommand{\<var>cmd</var>}{<var>defn</var>}
@@ -10809,10 +10811,11 @@
 \newcommand*{\<var>cmd</var>}[<var>nargs</var>][<var>optargdefault</var>]{<var>defn</var>}
 </pre></div>
 
-<p>or one of these.
+<p>or all the same possibilities with <code>\renewcommand</code> instead of
+<code>\newcommand</code>:
 </p>
 <div class="example">
-<pre class="example">\renewcommand{\<var>cmd</var>}[<var>nargs</var>]{<var>defn</var>}
+<pre class="example">\renewcommand{\<var>cmd</var>}{<var>defn</var>}
 \renewcommand{\<var>cmd</var>}[<var>nargs</var>]{<var>defn</var>}
 \renewcommand{\<var>cmd</var>}[<var>nargs</var>][<var>optargdefault</var>]{<var>defn</var>}
 \renewcommand*{\<var>cmd</var>}{<var>defn</var>}
@@ -10820,26 +10823,26 @@
 \renewcommand*{\<var>cmd</var>}[<var>nargs</var>][<var>optargdefault</var>]{<var>defn</var>}
 </pre></div>
 
-<p>Define or redefine a command (see also the discussion of
-<code>\DeclareRobustCommand</code> in <a href="#Class-and-package-commands">Class and package commands</a>).
+
+<p>Define or redefine a command (see also <code>\DeclareRobustCommand</code> in
+<a href="#Class-and-package-commands">Class and package commands</a>).
 </p>
 <span id="index-starred-form_002c-defining-new-commands"></span>
 <span id="index-_002a_002dform_002c-defining-new-commands"></span>
 <span id="index-_005clong"></span>
 <p>The starred form of these two forbids the arguments from containing
-multiple paragraphs of text (in plain TeX terms, the commands
+multiple paragraphs of text (in plain TeX terms: the commands
 are not <code>\long</code>).  With the default form, arguments can be
 multiple paragraphs.
 </p>
-<p>These are the parameters:
+<p>These are the parameters (examples follow):
 </p>
 <dl compact="compact">
 <dt><span><var>cmd</var></span></dt>
-<dd>
-<p>Required; <code>\<var>cmd</var></code> is the command name.  It must begin with a backslash, <code>\</code>,
-and must not begin with the four character string <code>\end</code>.  For
-<code>\newcommand</code>, it must not be already defined.  For
-<code>\renewcommand</code>, this name must already be defined.
+<dd><p>Required; <code>\<var>cmd</var></code> is the command name.  It must begin with a
+backslash, <code>\</code>, and must not begin with the four character string
+<code>\end</code>.  For <code>\newcommand</code>, it must not be already defined.
+For <code>\renewcommand</code>, this name must already be defined.
 </p>
 </dd>
 <dt><span><var>nargs</var></span></dt>
@@ -10850,41 +10853,55 @@
 different number of arguments than the old version.
 </p>
 </dd>
-<dt><span><var>optargdefault</var></span></dt>
-<dd><p>Optional; if this argument is present then the first argument of
+<dt id='index-optional-arguments_002c-defining-and-using'><span><var>optargdefault</var><a href='#index-optional-arguments_002c-defining-and-using' class='copiable-anchor'> ¶</a></span></dt>
+<dd><span id="index-arguments_002c-optional_002c-defining-and-using"></span>
+<p>Optional; if this argument is present then the first argument of
 <code>\<var>cmd</var></code> is optional, with default value <var>optargdefault</var>
-(which may be the empty string).  If <var>optargsdefault</var> is not present
+(which may be the empty string).  If <var>optargdefault</var> is not present
 then <code>\<var>cmd</var></code> does not take an optional argument.
 </p>
-<span id="index-positional-parameter"></span>
-<p>That is, if <code>\<var>cmd</var></code> is used with square brackets, as in
-<code>\<var>cmd</var>[<var>optval</var>]{...}...</code>, then within <var>defn</var> the
-parameter <code>#1</code> is set to the value of <var>optval</var>.  On the
-other hand, if <code>\<var>cmd</var></code> is called without the square brackets
-then within <var>defn</var> the parameter <code>#1</code> is set to the value of
-<var>optargdefault</var>.  In either case, the required arguments start with
-<code>#2</code>.
+<p>That is, if <code>\<var>cmd</var></code> is called with a following argument in
+square brackets, as in <code>\<var>cmd</var>[<var>optval</var>]{...}...</code>, then
+within <var>defn</var> the parameter <code>#1</code> is set to <var>optval</var>.
+On the other hand, if <code>\<var>cmd</var></code> is called without following
+square brackets then within <var>defn</var> the parameter <code>#1</code> is set
+to <var>optargdefault</var>.  In either case, the required arguments start
+with <code>#2</code>.
 </p>
-<p>Omitting <code>[<var>optargdefault</var>]</code> is different from having the
-square brackets with no contents, as in <code>[]</code>.  The former sets
-<code>#1</code> to the value of <var>optargdefault</var>; the latter sets <code>#1</code>
-to the empty string.
+<p>Omitting <code>[<var>optargdefault</var>]</code> from the definition is entirely
+different from giving the square brackets with empty contents, as in
+<code>[]</code>.  The former says the command being defined takes no
+optional argument, so <code>#1</code> is the first required argument (if
+<em class='math'><var>nargs</var> ≥ 1</em>); the latter sets the optional argument
+<code>#1</code> to the empty string as the default, if no optional argument
+was given in the call.
 </p>
+<p>Similarly, omitting <code>[<var>optval</var>]</code> from a call is also entirely
+different from giving the square brackets with empty contents.  The
+former sets <code>#1</code> to the value of <var>optval</var> (assuming the
+command was defined to take an optional argument); the latter sets
+<code>#1</code> to the empty string, just as with any other value.
+</p>
+<p>If a command is not defined to take an optional argument, but is
+called with an optional argument, the results are unpredictable: there
+may be a LaTeX error, there may be incorrect typeset output, or both.
+</p>
 </dd>
-<dt><span><var>defn</var></span></dt>
+<dt id='index-parameters_002c-substituting'><span><var>defn</var><a href='#index-parameters_002c-substituting' class='copiable-anchor'> ¶</a></span></dt>
 <dd><p>Required; the text to be substituted for every occurrence of
 <code>\<var>cmd</var></code>. The parameters <code>#1</code>, <code>#2</code>,
-... <code>#<var>nargs</var></code> are replaced by the values that you supply when
-you call the command (or by the default value if there is an optional
-argument and you don’t exercise the option).
+…, <code>#<var>nargs</var></code> are replaced by the values supplied when
+the command is called (or by <var>optargdefault</var> in the case of an
+optional argument not specified in the call, as just explained).
 </p>
 </dd>
 </dl>
 
+<span id="index-blanks_002c-after-control-sequences"></span>
 <p>TeX ignores blanks in the source following a control word
-(see <a href="#Control-sequences">Control sequence, control word and control symbol</a>), as in ‘<samp>\cmd </samp>’.  If you actually want a
-space there, one solution is to type <code>{}</code> after the command
-(‘<samp>\cmd{} </samp>’, and another solution is to use an explicit control
+(see <a href="#Control-sequences">Control sequence, control word and control symbol</a>), as in ‘<samp>\cmd </samp>’.  If you want a space
+there, one solution is to type <code>{}</code> after the command
+(‘<samp>\cmd{} </samp>’), and another solution is to use an explicit control
 space (‘<samp>\cmd\ </samp>’).
 </p>
 <p>A simple example of defining a new command:
@@ -10892,14 +10909,15 @@
 replaced by the longer text.  Redefining an existing command is similar:
 <code>\renewcommand{\qedsymbol}{{\small QED}}</code>.
 </p>
-<p>If you try to define a command and the name has already been used then
-you get something like ‘<samp>LaTeX Error: Command \fred already
-defined. Or name \end... illegal, see p.192 of the manual</samp>’.  If you try
-to redefine a command and the name has not yet been used then you get
-something like ‘<samp>LaTeX Error: \hank undefined</samp>’.
+<p>If you use <code>\newcommand</code> and the command name has already been
+used then you get something like ‘<samp>LaTeX Error: Command \fred
+already defined. Or name \end... illegal, see p.192 of the manual</samp>’.
+Similarly, If you use <code>\renewcommand</code> and the command name has
+not been defined then you get something like ‘<samp>LaTeX Error: \hank
+undefined</samp>’.
 </p>
 <p>Here the first definition creates a command with no arguments, and the
-second, one with one required argument.
+second, a command with one required argument:
 </p>
 <div class="example">
 <pre class="example">\newcommand{\student}{Ms~O'Leary}
@@ -10932,12 +10950,12 @@
 I employ \lawyers[Howe]{Dewey}{Cheatem}.
 </pre></div>
 
-<p>The output is ‘<samp>I employ Dewey, Cheatem, and Howe</samp>’.  The optional
-argument, the <code>Howe</code>, is associated with <code>#1</code>, while
+<p>The output is ‘<samp>I employ Dewey, Cheatem, and Howe.</samp>’.  The optional
+argument, <code>Howe</code>, is associated with <code>#1</code>, while
 <code>Dewey</code> and <code>Cheatem</code> are associated with <code>#2</code>
 and <code>#3</code>.  Because of the optional argument,
-<code>\lawyers{Dewey}{Cheatem}</code> will give the output ‘<samp>I employ
-Dewey, Cheatem, and company</samp>’.
+<code>\lawyers{Dewey}{Cheatem}</code> will give the output ‘<samp>I
+employ Dewey, Cheatem, and company.</samp>’.
 </p>
 <p>The braces around <var>defn</var> do not define a group, that is, they do not
 delimit the scope of the result of expanding <var>defn</var>.  For example,
@@ -10947,9 +10965,9 @@
 <pre class="example">The \shipname{Monitor} met the \shipname{Merrimac}.
 </pre></div>
 
-<p>the words ‘<samp>met the</samp>’ would incorrectly be in italics.  The solution
-is to put another pair of braces inside the definition:
-<code>\newcommand{\shipname}[1]{{\it #1}}</code>.
+<p>the words ‘<samp>met the</samp>’, and the period, would incorrectly be in
+italics.  The solution is to put another pair of braces inside the
+definition: <code>\newcommand{\shipname}[1]{{\it #1}}</code>.
 </p>
 
 <ul class="section-toc">
@@ -10963,28 +10981,35 @@
 </div>
 <span id="Control-sequence_002c-control-word-and-control-symbol"></span><h4 class="subsection">12.1.1 Control sequence, control word and control symbol</h4>
 
-<p>When reading input TeX converts the sequences of read characters into
-a sequence of <em>tokens</em>. When TeX sees a backslash <code>\</code>, it
-will handle the following characters in a special way in order to make a
-<em>control sequence</em> token.
+<span id="index-control-sequences"></span>
+
+<p>When reading input TeX converts sequences of read characters into a
+sequence of <em>tokens</em>. When TeX sees a backslash <code>\</code>, it
+will handle the following characters in a special way in order to make
+a <em>control sequence</em> token.
 </p>
 <p>The control sequences fall into two categories:
 </p>
 <ul>
-<li> <em>control word</em>, when the control sequence is gathered from a
-<code>\</code> followed by at least one ASCII letter, followed by at least one
-blank. The sequence of at least one ASCII letter is called the
-<em>control sequence name</em>.
-</li><li> <em>control symbol</em>, when the control sequence is gathered from a
+<li> <span id="index-control-word_002c-defined"></span>
+<em>control word</em>, when the control sequence is gathered from a
+<code>\</code> followed by at least one ASCII letter (<code>A-Z</code> and
+<code>a-z</code>), followed by at least one non-letter.
+
+</li><li> <span id="index-control-symbol_002c-defined"></span>
+<em>control symbol</em>, when the control sequence is gathered from a
 <code>\</code> followed by one non-letter character.
 </li></ul>
 
+<p>The sequence of characters so found after the <code>\</code> is also called
+the <em>control sequence name</em>.
+</p>
 <p>Blanks after a control word are ignored and do not produce any
 whitespace in the output (see <a href="#g_t_005cnewcommand-_0026-_005crenewcommand"><code>\newcommand</code> & <code>\renewcommand</code></a> and
 <a href="#g_t_005c_0028SPACE_0029">Backslash-space, <code>\ </code></a>).
 </p>
-<p>Just as the <code>\relax</code> command does nothing, the following will print
-‘<samp>Hello!</samp>’:
+<p>Just as the <code>\relax</code> command does nothing, the following input
+will simply print ‘<samp>Hello!</samp>’ :
 </p>
 <div class="example">
 <pre class="example">Hel\relax <!-- /@w --> <!-- /@w --> <!-- /@w -->
@@ -10991,7 +11016,7 @@
  <!-- /@w --> <!-- /@w --> <!-- /@w -->lo!
 </pre></div>
 
-<p>This is because blanks after <code>\relax</code>, including the newline are
+<p>This is because blanks after <code>\relax</code>, including the newline, are
 ignored, and blanks at the beginning of a line are also ignored
 (see <a href="#Leading-blanks">Leading blanks</a>).
 </p>
@@ -11036,10 +11061,10 @@
 From \myaffiliation.
 </pre></div>
 
-<p>outputs ‘<samp>From Saint Michael's College</samp>’.  Unlike <code>\newcommand</code>,
-the repeated use of <code>\providecommand</code> does not give an error.
+<p>outputs ‘<samp>From Saint Michael's College.</samp>’.  Unlike
+<code>\newcommand</code>, the repeated use of <code>\providecommand</code> to (try
+to) define <code>\myaffiliation</code> does not give an error.
 </p>
-
 <hr>
 </div>
 <div class="section" id="g_t_005cmakeatletter-_0026-_005cmakeatother">
@@ -25734,6 +25759,7 @@
 <tr><td></td><td valign="top"><a href="#index-appendices">appendices</a>:</td><td> </td><td valign="top"><a href="#g_t_005cappendix">\appendix</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-appendix">appendix</a>:</td><td> </td><td valign="top"><a href="#g_t_005cappendix">\appendix</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-appendix-package"><code>appendix</code> <span class="roman">package</span></a>:</td><td> </td><td valign="top"><a href="#g_t_005cappendix">\appendix</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-arguments_002c-optional_002c-defining-and-using">arguments, optional, defining and using</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-aring">aring</a>:</td><td> </td><td valign="top"><a href="#Additional-Latin-letters">Additional Latin letters</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-array-environment"><code><code>array</code> <span class="roman">environment</span></code></a>:</td><td> </td><td valign="top"><a href="#array">array</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-array-package"><code>array</code> <span class="roman">package</span></a>:</td><td> </td><td valign="top"><a href="#array">array</a></td></tr>
@@ -25786,6 +25812,7 @@
 <tr><td></td><td valign="top"><a href="#index-bigfoot-package"><code>bigfoot</code> <span class="roman">package</span></a>:</td><td> </td><td valign="top"><a href="#Footnotes-of-footnotes">Footnotes of footnotes</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-black-boxes_002c-omitting">black boxes, omitting</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-blackboard-bold">blackboard bold</a>:</td><td> </td><td valign="top"><a href="#Blackboard-bold">Blackboard bold</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-blanks_002c-after-control-sequences">blanks, after control sequences</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-bm-package"><code>bm</code> <span class="roman">package</span></a>:</td><td> </td><td valign="top"><a href="#g_t_005cboldmath-_0026-_005cunboldmath">\boldmath & \unboldmath</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-bold-font">bold font</a>:</td><td> </td><td valign="top"><a href="#Font-styles">Font styles</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-bold-math">bold math</a>:</td><td> </td><td valign="top"><a href="#Font-styles">Font styles</a></td></tr>
@@ -25913,6 +25940,9 @@
 <tr><td></td><td valign="top"><a href="#index-computer-programs_002c-typesetting">computer programs, typesetting</a>:</td><td> </td><td valign="top"><a href="#verbatim">verbatim</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-configuration_002c-graphics-package">configuration, graphics package</a>:</td><td> </td><td valign="top"><a href="#Graphics-package-configuration">Graphics package configuration</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-contents-file">contents file</a>:</td><td> </td><td valign="top"><a href="#Output-files">Output files</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-control-sequences">control sequences</a>:</td><td> </td><td valign="top"><a href="#Control-sequences">Control sequences</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-control-symbol_002c-defined">control symbol, defined</a>:</td><td> </td><td valign="top"><a href="#Control-sequences">Control sequences</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-control-word_002c-defined">control word, defined</a>:</td><td> </td><td valign="top"><a href="#Control-sequences">Control sequences</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-copyright-symbol">copyright 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-counters_002c-a-list-of">counters, a list of</a>:</td><td> </td><td valign="top"><a href="#Counters">Counters</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-counters_002c-defining-new">counters, defining new</a>:</td><td> </td><td valign="top"><a href="#g_t_005cnewcounter">\newcounter</a></td></tr>
@@ -26524,6 +26554,7 @@
 <tr><td></td><td valign="top"><a href="#index-openright-option"><code>openright <span class="roman">option</span></code></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-OpenType-fonts">OpenType fonts</a>:</td><td> </td><td valign="top"><a href="#TeX-engines">TeX engines</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-operating-system-information">operating system information</a>:</td><td> </td><td valign="top"><a href="#g_t_005cwrite18">\write18</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-optional-arguments_002c-defining-and-using">optional arguments, defining and using</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-options_002c-class">options, class</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-options_002c-color-package">options, color package</a>:</td><td> </td><td valign="top"><a href="#Color-package-options">Color package options</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-options_002c-command-line">options, command line</a>:</td><td> </td><td valign="top"><a href="#Command-line-options">Command line options</a></td></tr>
@@ -26715,6 +26746,7 @@
 <tr><td></td><td valign="top"><a href="#index-paragraphs">paragraphs</a>:</td><td> </td><td valign="top"><a href="#Making-paragraphs">Making paragraphs</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-parameters_002c-for-footnotes">parameters, for footnotes</a>:</td><td> </td><td valign="top"><a href="#g_t_005cfootnote">\footnote</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-parameters_002c-page-layout">parameters, page layout</a>:</td><td> </td><td valign="top"><a href="#Page-layout-parameters">Page layout parameters</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-parameters_002c-substituting">parameters, substituting</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-parent-directories_002c-cannot-write-to">parent directories, cannot write to</a>:</td><td> </td><td valign="top"><a href="#g_t_005cwrite-and-security">\write and security</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-parentheses">parentheses</a>:</td><td> </td><td valign="top"><a href="#Delimiters">Delimiters</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-part">part</a>:</td><td> </td><td valign="top"><a href="#Sectioning">Sectioning</a></td></tr>
@@ -26751,7 +26783,6 @@
 <tr><td></td><td valign="top"><a href="#index-polyglossia-package-3"><code>polyglossia</code> <span class="roman">package</span></a>:</td><td> </td><td valign="top"><a href="#g_t_005cindex">\index</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-portrait-orientation">portrait orientation</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-position_002c-in-picture">position, in picture</a>:</td><td> </td><td valign="top"><a href="#picture">picture</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-positional-parameter">positional parameter</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-postamble"><code>postamble</code></a>:</td><td> </td><td valign="top"><a href="#makeindex">makeindex</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-PostScript-point">PostScript point</a>:</td><td> </td><td valign="top"><a href="#Units-of-length">Units of length</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-postscript_002c-in-letters">postscript, in letters</a>:</td><td> </td><td valign="top"><a href="#g_t_005cps">\ps</a></td></tr>
@@ -26782,6 +26813,7 @@
 <tr><td></td><td valign="top"><a href="#index-ragged-right-text">ragged right text</a>:</td><td> </td><td valign="top"><a href="#g_t_005craggedright">\raggedright</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-ragged-right-text_002c-environment-for">ragged right text, environment for</a>:</td><td> </td><td valign="top"><a href="#flushleft">flushleft</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-read-a-file">read a file</a>:</td><td> </td><td valign="top"><a href="#g_t_005cread">\read</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-redefining-a-command">redefining a command</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-redefining-environments">redefining environments</a>:</td><td> </td><td valign="top"><a href="#g_t_005cnewenvironment-_0026-_005crenewenvironment">\newenvironment & \renewenvironment</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-reference_002c-forward">reference, forward</a>:</td><td> </td><td valign="top"><a href="#Cross-references">Cross references</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-references_002c-resolving-forward">references, resolving forward</a>:</td><td> </td><td valign="top"><a href="#Output-files">Output files</a></td></tr>

Modified: trunk/latex2e.info
===================================================================
--- trunk/latex2e.info	2022-01-26 23:01:41 UTC (rev 1082)
+++ trunk/latex2e.info	2022-05-13 15:44:52 UTC (rev 1083)
@@ -2042,7 +2042,8 @@
 \enlargethispage::).
 
    The '\flushbottom' state is the default only if you select the
-'twoside' document class option (*note Document class options::).
+'twocolumn' document class option (*note Document class options::), and
+for indexes made using 'makeidx'.
 
 
 File: latex2e.info,  Node: \raggedbottom,  Next: Page layout parameters,  Prev: \flushbottom,  Up: Layout
@@ -2053,7 +2054,7 @@
 Make all later pages the natural height of the material on that page; no
 rubber vertical lengths will be stretched.  Thus, in a two-sided
 document the facing pages may be different heights.  This command can go
-at any point in the document body.  See *note \flushbottom::.
+at any point in the document body.  *Note \flushbottom::.
 
    This is the default unless you select the 'twoside' document class
 option (*note Document class options::).
@@ -7582,7 +7583,7 @@
 12.1 '\newcommand' & '\renewcommand'
 ====================================
 
-Synopses, one of:
+Synopses, one of (three regular forms, three starred forms):
 
      \newcommand{\CMD}{DEFN}
      \newcommand{\CMD}[NARGS]{DEFN}
@@ -7591,26 +7592,26 @@
      \newcommand*{\CMD}[NARGS]{DEFN}
      \newcommand*{\CMD}[NARGS][OPTARGDEFAULT]{DEFN}
 
-or one of these.
+or all the same possibilities with '\renewcommand' instead of
+'\newcommand':
 
+     \renewcommand{\CMD}{DEFN}
      \renewcommand{\CMD}[NARGS]{DEFN}
-     \renewcommand{\CMD}[NARGS]{DEFN}
      \renewcommand{\CMD}[NARGS][OPTARGDEFAULT]{DEFN}
      \renewcommand*{\CMD}{DEFN}
      \renewcommand*{\CMD}[NARGS]{DEFN}
      \renewcommand*{\CMD}[NARGS][OPTARGDEFAULT]{DEFN}
 
-   Define or redefine a command (see also the discussion of
-'\DeclareRobustCommand' in *note Class and package commands::).
+   Define or redefine a command (see also '\DeclareRobustCommand' in
+*note Class and package commands::).
 
    The starred form of these two forbids the arguments from containing
-multiple paragraphs of text (in plain TeX terms, the commands are not
+multiple paragraphs of text (in plain TeX terms: the commands are not
 '\long').  With the default form, arguments can be multiple paragraphs.
 
-   These are the parameters:
+   These are the parameters (examples follow):
 
 CMD
-
      Required; '\CMD' is the command name.  It must begin with a
      backslash, '\', and must not begin with the four character string
      '\end'.  For '\newcommand', it must not be already defined.  For
@@ -7627,31 +7628,46 @@
 OPTARGDEFAULT
      Optional; if this argument is present then the first argument of
      '\CMD' is optional, with default value OPTARGDEFAULT (which may be
-     the empty string).  If OPTARGSDEFAULT is not present then '\CMD'
+     the empty string).  If OPTARGDEFAULT is not present then '\CMD'
      does not take an optional argument.
 
-     That is, if '\CMD' is used with square brackets, as in
-     '\CMD[OPTVAL]{...}...', then within DEFN the parameter '#1' is set
-     to the value of OPTVAL.  On the other hand, if '\CMD' is called
-     without the square brackets then within DEFN the parameter '#1' is
-     set to the value of OPTARGDEFAULT.  In either case, the required
-     arguments start with '#2'.
+     That is, if '\CMD' is called with a following argument in square
+     brackets, as in '\CMD[OPTVAL]{...}...', then within DEFN the
+     parameter '#1' is set to OPTVAL.  On the other hand, if '\CMD' is
+     called without following square brackets then within DEFN the
+     parameter '#1' is set to OPTARGDEFAULT.  In either case, the
+     required arguments start with '#2'.
 
-     Omitting '[OPTARGDEFAULT]' is different from having the square
-     brackets with no contents, as in '[]'.  The former sets '#1' to the
-     value of OPTARGDEFAULT; the latter sets '#1' to the empty string.
+     Omitting '[OPTARGDEFAULT]' from the definition is entirely
+     different from giving the square brackets with empty contents, as
+     in '[]'.  The former says the command being defined takes no
+     optional argument, so '#1' is the first required argument (if NARGS
+     ≥ 1); the latter sets the optional argument '#1' to the empty
+     string as the default, if no optional argument was given in the
+     call.
 
+     Similarly, omitting '[OPTVAL]' from a call is also entirely
+     different from giving the square brackets with empty contents.  The
+     former sets '#1' to the value of OPTVAL (assuming the command was
+     defined to take an optional argument); the latter sets '#1' to the
+     empty string, just as with any other value.
+
+     If a command is not defined to take an optional argument, but is
+     called with an optional argument, the results are unpredictable:
+     there may be a LaTeX error, there may be incorrect typeset output,
+     or both.
+
 DEFN
      Required; the text to be substituted for every occurrence of
-     '\CMD'.  The parameters '#1', '#2', ...  '#NARGS' are replaced by
-     the values that you supply when you call the command (or by the
-     default value if there is an optional argument and you don't
-     exercise the option).
+     '\CMD'.  The parameters '#1', '#2', ..., '#NARGS' are replaced by
+     the values supplied when the command is called (or by OPTARGDEFAULT
+     in the case of an optional argument not specified in the call, as
+     just explained).
 
    TeX ignores blanks in the source following a control word (*note
-Control sequences::), as in '\cmd '.  If you actually want a space
-there, one solution is to type '{}' after the command ('\cmd{} ', and
-another solution is to use an explicit control space ('\cmd\ ').
+Control sequences::), as in '\cmd '.  If you want a space there, one
+solution is to type '{}' after the command ('\cmd{} '), and another
+solution is to use an explicit control space ('\cmd\ ').
 
    A simple example of defining a new command: '\newcommand{\RS}{Robin
 Smith}' results in '\RS' being replaced by the longer text.  Redefining
@@ -7658,14 +7674,14 @@
 an existing command is similar: '\renewcommand{\qedsymbol}{{\small
 QED}}'.
 
-   If you try to define a command and the name has already been used
+   If you use '\newcommand' and the command name has already been used
 then you get something like 'LaTeX Error: Command \fred already defined.
-Or name \end... illegal, see p.192 of the manual'.  If you try to
-redefine a command and the name has not yet been used then you get
-something like 'LaTeX Error: \hank undefined'.
+Or name \end... illegal, see p.192 of the manual'.  Similarly, If you
+use '\renewcommand' and the command name has not been defined then you
+get something like 'LaTeX Error: \hank undefined'.
 
    Here the first definition creates a command with no arguments, and
-the second, one with one required argument.
+the second, a command with one required argument:
 
      \newcommand{\student}{Ms~O'Leary}
      \newcommand{\defref}[1]{Definition~\ref{#1}}
@@ -7690,11 +7706,11 @@
      \newcommand{\lawyers}[3][company]{#2, #3, and~#1}
      I employ \lawyers[Howe]{Dewey}{Cheatem}.
 
-The output is 'I employ Dewey, Cheatem, and Howe'.  The optional
-argument, the 'Howe', is associated with '#1', while 'Dewey' and
-'Cheatem' are associated with '#2' and '#3'.  Because of the optional
-argument, '\lawyers{Dewey}{Cheatem}' will give the output 'I employ
-Dewey, Cheatem, and company'.
+The output is 'I employ Dewey, Cheatem, and Howe.'.  The optional
+argument, 'Howe', is associated with '#1', while 'Dewey' and 'Cheatem'
+are associated with '#2' and '#3'.  Because of the optional argument,
+'\lawyers{Dewey}{Cheatem}' will give the output 'I employ Dewey,
+Cheatem, and company.'.
 
    The braces around DEFN do not define a group, that is, they do not
 delimit the scope of the result of expanding DEFN.  For example, with
@@ -7702,8 +7718,8 @@
 
      The \shipname{Monitor} met the \shipname{Merrimac}.
 
-the words 'met the' would incorrectly be in italics.  The solution is to
-put another pair of braces inside the definition:
+the words 'met the', and the period, would incorrectly be in italics.
+The solution is to put another pair of braces inside the definition:
 '\newcommand{\shipname}[1]{{\it #1}}'.
 
 * Menu:
@@ -7716,7 +7732,7 @@
 12.1.1 Control sequence, control word and control symbol
 --------------------------------------------------------
 
-When reading input TeX converts the sequences of read characters into a
+When reading input TeX converts sequences of read characters into a
 sequence of "tokens".  When TeX sees a backslash '\', it will handle the
 following characters in a special way in order to make a "control
 sequence" token.
@@ -7724,24 +7740,27 @@
    The control sequences fall into two categories:
 
    * "control word", when the control sequence is gathered from a '\'
-     followed by at least one ASCII letter, followed by at least one
-     blank.  The sequence of at least one ASCII letter is called the
-     "control sequence name".
+     followed by at least one ASCII letter ('A-Z' and 'a-z'), followed
+     by at least one non-letter.
+
    * "control symbol", when the control sequence is gathered from a '\'
      followed by one non-letter character.
 
+   The sequence of characters so found after the '\' is also called the
+"control sequence name".
+
    Blanks after a control word are ignored and do not produce any
 whitespace in the output (*note \newcommand & \renewcommand:: and *note
 \(SPACE)::).
 
-   Just as the '\relax' command does nothing, the following will print
-'Hello!'--if you use the Emacs info viewer, turn on the whitespace-mode
-minor mode to see the trailing spaces:
+   Just as the '\relax' command does nothing, the following input will
+simply print 'Hello!' (if you use the Emacs info viewer, turn on the
+whitespace-mode minor mode to see the trailing spaces):
 
      Hel\relax   
         lo!
 
-This is because blanks after '\relax', including the newline are
+This is because blanks after '\relax', including the newline, are
 ignored, and blanks at the beginning of a line are also ignored (*note
 Leading blanks::).
 
@@ -7773,8 +7792,9 @@
      \providecommand{\myaffiliation}{Lyc\'ee Henri IV}
      From \myaffiliation.
 
-outputs 'From Saint Michael's College'.  Unlike '\newcommand', the
-repeated use of '\providecommand' does not give an error.
+outputs 'From Saint Michael's College.'.  Unlike '\newcommand', the
+repeated use of '\providecommand' to (try to) define '\myaffiliation'
+does not give an error.
 
 
 File: latex2e.info,  Node: \makeatletter & \makeatother,  Next: \@ifstar,  Prev: \providecommand,  Up: Definitions
@@ -17612,7 +17632,7 @@
                                                               (line  27)
 * *-form of sectioning commands:         Sectioning.          (line  31)
 * *-form, defining new commands:         \newcommand & \renewcommand.
-                                                              (line  27)
+                                                              (line  28)
 * --disable-write18 command-line option: Command line options.
                                                               (line  61)
 * --enable-write18 command-line option:  Command line options.
@@ -18270,7 +18290,7 @@
 * \location:                             \location.           (line   6)
 * \log:                                  Math functions.      (line  78)
 * \long:                                 \newcommand & \renewcommand.
-                                                              (line  27)
+                                                              (line  28)
 * \longleftarrow:                        Math symbols.        (line 352)
 * \longleftrightarrow:                   Math symbols.        (line 356)
 * \longmapsto:                           Math symbols.        (line 360)
@@ -18980,6 +19000,8 @@
 * appendices:                            \appendix.           (line   6)
 * appendix:                              \appendix.           (line   6)
 * appendix package:                      \appendix.           (line  29)
+* arguments, optional, defining and using: \newcommand & \renewcommand.
+                                                              (line  49)
 * aring:                                 Additional Latin letters.
                                                               (line  12)
 * array environment:                     array.               (line   6)
@@ -19039,6 +19061,8 @@
 * black boxes, omitting:                 Document class options.
                                                               (line  53)
 * blackboard bold:                       Blackboard bold.     (line   6)
+* blanks, after control sequences:       \newcommand & \renewcommand.
+                                                              (line  87)
 * bm package:                            \boldmath & \unboldmath.
                                                               (line  32)
 * bold font:                             Font styles.         (line  76)
@@ -19199,6 +19223,9 @@
 * configuration, graphics package:       Graphics package configuration.
                                                               (line   6)
 * contents file:                         Output files.        (line  43)
+* control sequences:                     Control sequences.   (line   6)
+* control symbol, defined:               Control sequences.   (line  17)
+* control word, defined:                 Control sequences.   (line  13)
 * copyright symbol:                      Text symbols.        (line  15)
 * counters, a list of:                   Counters.            (line   6)
 * counters, defining new:                \newcounter.         (line   6)
@@ -19887,6 +19914,8 @@
                                                               (line  78)
 * OpenType fonts:                        TeX engines.         (line   6)
 * operating system information:          \write18.            (line  65)
+* optional arguments, defining and using: \newcommand & \renewcommand.
+                                                              (line  49)
 * options, class:                        Class and package commands.
                                                               (line  66)
 * options, color package:                Color package options.
@@ -20126,6 +20155,8 @@
 * parameters, for footnotes:             \footnote.           (line  34)
 * parameters, page layout:               Page layout parameters.
                                                               (line   6)
+* parameters, substituting:              \newcommand & \renewcommand.
+                                                              (line  81)
 * parent directories, cannot write to:   \write and security. (line  22)
 * parentheses:                           Delimiters.          (line   6)
 * part:                                  Sectioning.          (line   6)
@@ -20165,8 +20196,6 @@
 * portrait orientation:                  Document class options.
                                                               (line  60)
 * position, in picture:                  picture.             (line  64)
-* positional parameter:                  \newcommand & \renewcommand.
-                                                              (line  54)
 * postamble:                             makeindex.           (line  54)
 * PostScript point:                      Units of length.     (line  20)
 * postscript, in letters:                \ps.                 (line   6)
@@ -20197,6 +20226,8 @@
 * ragged right text:                     \raggedright.        (line   6)
 * ragged right text, environment for:    flushleft.           (line   6)
 * read a file:                           \read.               (line   6)
+* redefining a command:                  \newcommand & \renewcommand.
+                                                              (line   6)
 * redefining environments:               \newenvironment & \renewenvironment.
                                                               (line   6)
 * reference, forward:                    Cross references.    (line  27)
@@ -20334,7 +20365,7 @@
 * stack math:                            \stackrel.           (line   6)
 * star-variants, commands:               \@ifstar.            (line   6)
 * starred form, defining new commands:   \newcommand & \renewcommand.
-                                                              (line  27)
+                                                              (line  28)
 * starting a new page:                   \newpage.            (line   6)
 * starting a new page and clearing floats: \clearpage & \cleardoublepage.
                                                               (line   6)
@@ -20633,484 +20664,484 @@
 Ref: twocolumn dbltextfloatsep80380
 Ref: twocolumn dbltopnumber80560
 Node: \flushbottom81509
-Node: \raggedbottom82609
-Node: Page layout parameters83145
-Ref: page layout parameters columnsep83374
-Ref: page layout parameters columnseprule83374
-Ref: page layout parameters columnwidth83374
-Ref: page layout parameters headheight83628
-Ref: page layout parameters headsep83795
-Ref: page layout parameters footskip84107
-Ref: page layout parameters linewidth84441
-Ref: page layout parameters marginparpush84794
-Ref: page layout parameters marginsep84794
-Ref: page layout parameters marginparwidth84794
-Ref: page layout parameters oddsidemargin85834
-Ref: page layout parameters evensidemargin85834
-Ref: page layout parameters paperheight86379
-Ref: page layout parameters paperwidth86605
-Ref: page layout parameters textheight86829
-Ref: page layout parameters textwidth87218
-Ref: page layout parameters hsize88156
-Ref: page layout parameters topmargin88353
-Ref: page layout parameters topskip88657
-Node: \baselineskip & \baselinestretch88873
-Node: Floats94043
-Ref: floats bottomfraction98381
-Ref: floats floatpagefraction98508
-Ref: floats textfraction98619
-Ref: floats topfraction98821
-Ref: floats floatsep99073
-Ref: floats intextsep99183
-Ref: floats textfloatsep99398
-Ref: floats bottomnumber99662
-Ref: floats dbltopnumber99770
-Ref: floats topnumber99889
-Ref: floats totalnumber99993
-Node: \caption100610
-Node: Sectioning103336
-Ref: sectioning secnumdepth106445
-Ref: Sectioning/secnumdepth106445
-Ref: sectioning tocdepth107071
-Ref: Sectioning/tocdepth107071
-Node: \part108111
-Node: \chapter110283
-Node: \section114056
-Node: \subsection117323
-Node: \subsubsection & \paragraph & \subparagraph120037
-Node: \appendix122694
-Node: \frontmatter & \mainmatter & \backmatter123987
-Node: \@startsection125396
-Ref: startsection name126885
-Ref: \@startsection/name126885
-Ref: startsection level127339
-Ref: \@startsection/level127339
-Ref: startsection indent128220
-Ref: \@startsection/indent128220
-Ref: startsection beforeskip128483
-Ref: \@startsection/beforeskip128483
-Ref: startsection afterskip130004
-Ref: \@startsection/afterskip130004
-Ref: startsection style131315
-Ref: \@startsection/style131315
-Node: Cross references135016
-Node: \label137165
-Node: \pageref138985
-Node: \ref139775
-Node: xr package140770
-Node: Environments142591
-Node: abstract144593
-Node: array146182
-Node: center149095
-Node: \centering150848
-Node: description152345
-Node: displaymath154562
-Node: document156258
-Node: \AtBeginDocument156688
-Node: \AtEndDocument157312
-Node: enumerate157956
-Ref: enumerate enumi159819
-Ref: enumerate enumii159819
-Ref: enumerate enumiii159819
-Ref: enumerate enumiv159819
-Ref: enumerate labelenumi160217
-Ref: enumerate labelenumii160217
-Ref: enumerate labelenumiii160217
-Ref: enumerate labelenumiv160217
-Node: eqnarray160756
-Node: equation162752
-Node: figure163420
-Node: filecontents165593
-Node: flushleft167502
-Node: \raggedright168529
-Node: flushright169727
-Node: \raggedleft170551
-Node: itemize171422
-Ref: itemize labelitemi172970
-Ref: itemize labelitemii172970
-Ref: itemize labelitemiii172970
-Ref: itemize labelitemiv172970
-Ref: itemize leftmargin173629
-Ref: itemize leftmargini173629
-Ref: itemize leftmarginii173629
-Ref: itemize leftmarginiii173629
-Ref: itemize leftmarginiv173629
-Ref: itemize leftmarginv173629
-Ref: itemize leftmarginvi173629
-Node: letter175111
-Node: list175349
-Ref: list makelabel177796
-Ref: list itemindent179181
-Ref: list itemsep179318
-Ref: list labelsep179971
-Ref: list labelwidth180134
-Ref: list leftmargin181145
-Ref: list listparindent181998
-Ref: list parsep182229
-Ref: list partopsep182697
-Ref: list rightmargin183495
-Ref: list topsep183680
-Ref: list beginparpenalty187256
-Ref: list itempenalty187355
-Ref: list endparpenalty187459
-Node: \item188330
-Node: trivlist189576
-Node: math191104
-Node: minipage191410
-Node: picture197007
-Node: \put203237
-Node: \multiput203802
-Node: \qbezier204541
-Node: \graphpaper206014
-Node: \line206808
-Node: \linethickness208782
-Node: \thinlines209247
-Node: \thicklines209658
-Node: \circle210043
-Node: \oval210585
-Node: \shortstack211600
-Node: \vector213298
-Node: \makebox (picture)214212
-Node: \framebox (picture)215394
-Node: \frame216867
-Node: \dashbox217307
-Node: quotation & quote218442
-Node: tabbing219338
-Node: table225241
-Node: tabular227324
-Ref: tabular arrayrulewidth233661
-Ref: tabular arraystrech233901
-Ref: tabular doublerulesep234122
-Ref: tabular tabcolsep234258
-Node: \multicolumn234779
-Node: \vline238656
-Node: \cline240047
-Node: \hline240757
-Node: thebibliography241439
-Node: \bibitem243922
-Node: \cite246224
-Node: \nocite248092
-Node: Using BibTeX248600
-Node: BibTeX error messages250980
-Node: theorem251885
-Node: titlepage252807
-Node: verbatim254090
-Node: \verb255903
-Node: verse257996
-Node: Line breaking259223
-Node: \\260589
-Node: \obeycr & \restorecr263019
-Node: \newline263830
-Node: \- (hyphenation)264871
-Node: \discretionary266511
-Node: \fussy & \sloppy267402
-Node: sloppypar268217
-Node: \hyphenation269363
-Node: \linebreak & \nolinebreak269983
-Node: Page breaking271163
-Node: \clearpage & \cleardoublepage273193
-Node: \newpage274713
-Node: \enlargethispage276011
-Node: \pagebreak & \nopagebreak276967
-Node: Footnotes278938
-Node: \footnote280084
-Ref: footnote footnoterule281352
-Ref: footnote footnotesep281963
-Node: \footnotemark283029
-Node: \footnotetext285386
-Node: Footnotes in section headings285988
-Node: Footnotes in a table286821
-Node: Footnotes of footnotes289752
-Node: Definitions290450
-Node: \newcommand & \renewcommand291497
-Node: Control sequences296932
-Node: \providecommand298286
-Node: \makeatletter & \makeatother299449
-Node: \@ifstar301551
-Node: \newcounter305036
-Node: \newlength306756
-Node: \newsavebox307679
-Node: \newenvironment & \renewenvironment308658
-Node: \newtheorem313982
-Node: \newfont317554
-Node: \protect318787
-Node: \ignorespaces & \ignorespacesafterend321175
-Node: xspace package323925
-Node: Counters326124
-Node: \alph \Alph \arabic \roman \Roman \fnsymbol327825
-Node: \usecounter330460
-Node: \value331319
-Node: \setcounter332372
-Node: \addtocounter332968
-Node: \refstepcounter333422
-Node: \stepcounter334091
-Node: \day & \month & \year334644
-Node: Lengths335553
-Node: Units of length340131
-Ref: units of length pt340334
-Ref: units of length pc340451
-Ref: units of length in340474
-Ref: units of length bp340500
-Ref: units of length mm340631
-Ref: units of length cm340663
-Ref: units of length dd340692
-Ref: units of length cc340724
-Ref: units of length sp340749
-Ref: Lengths/ex340891
-Ref: units of length ex340891
-Ref: Lengths/em341034
-Ref: units of length em341034
-Ref: units of length mu341375
-Node: \setlength341904
-Node: \addtolength343016
-Node: \settodepth344439
-Node: \settoheight345427
-Node: \settowidth346425
-Node: \stretch347430
-Node: Expressions348632
-Node: Making paragraphs353446
-Node: \par355761
-Node: \indent & \noindent357807
-Node: \parindent & \parskip359342
-Node: Marginal notes360671
-Ref: marginal notes marginparpush362067
-Ref: marginal notes marginparsep362241
-Ref: marginal notes marginparwidth362373
-Node: Math formulas362722
-Node: Subscripts & superscripts365770
-Node: Math symbols367931
-Node: Arrows391702
-Node: \boldmath & \unboldmath392890
-Node: Blackboard bold394409
-Node: Calligraphic395211
-Node: Delimiters395742
-Node: \left & \right397929
-Node: \bigl & \bigr etc.401966
-Node: Dots404736
-Ref: ellipses cdots405167
-Ref: ellipses ddots405312
-Ref: ellipses ldots405393
-Ref: ellipses vdots405810
-Node: Greek letters406994
-Node: Math functions408673
-Node: Math accents410317
-Node: Over- and Underlining411216
-Node: Spacing in math mode413043
-Ref: spacing in math mode thickspace413974
-Ref: spacing in math mode medspace414425
-Ref: Spacing in math mode/\thinspace414881
-Ref: spacing in math mode thinspace414881
-Ref: spacing in math mode negthinspace415362
-Ref: spacing in math mode quad415735
-Ref: spacing in math mode qquad415991
-Node: \smash416329
-Node: \phantom & \vphantom & \hphantom418546
-Node: \mathstrut421120
-Node: Math styles422082
-Node: Math miscellany424816
-Node: Colon character & \colon425313
-Node: \*426006
-Node: \frac426586
-Node: \sqrt426957
-Node: \stackrel427543
-Node: Modes427816
-Ref: modes paragraph mode428266
-Ref: modes lr mode428578
-Ref: modes math mode429184
-Ref: modes vertical mode429519
-Ref: modes internal vertical mode429737
-Ref: modes inner paragraph mode430260
-Ref: modes outer paragraph mode430260
-Node: \ensuremath430674
-Node: Page styles431379
-Node: \maketitle432142
-Node: \pagenumbering435160
-Node: \pagestyle437147
-Node: \thispagestyle440655
-Node: Spaces441609
-Node: \enspace & \quad & \qquad442929
-Node: \hspace443844
-Node: \hfill445701
-Node: \hss446765
-Node: \spacefactor447459
-Node: \@450866
-Ref: \AT450986
-Node: \frenchspacing & \nonfrenchspacing452926
-Ref: \frenchspacing453044
-Node: \normalsfcodes453846
-Node: \(SPACE)454114
-Ref: Leading blanks456054
-Node: ~456367
-Node: \thinspace & \negthinspace459177
-Node: \/460375
-Node: \hrulefill & \dotfill462333
-Node: \bigskip & \medskip & \smallskip463693
-Ref: bigskip464511
-Ref: medskip464715
-Ref: smallskip464924
-Node: \bigbreak & \medbreak & \smallbreak465585
-Node: \strut466571
-Node: \vspace469808
-Node: \vfill471369
-Node: \addvspace472297
-Node: Boxes474343
-Node: \mbox & \makebox475049
-Ref: mbox makebox depth476317
-Ref: mbox makebox height476317
-Ref: mbox makebox width476317
-Ref: mbox makebox totalheight476317
-Node: \fbox & \framebox478412
-Ref: fbox framebox fboxrule479719
-Ref: fbox framebox fboxsep479909
-Node: \parbox481011
-Node: \raisebox483317
-Ref: raisebox depth484290
-Ref: raisebox height484290
-Ref: raisebox width484290
-Ref: raisebox totalheight484290
-Node: \sbox & \savebox484991
-Node: lrbox488077
-Node: \usebox488963
-Node: Color489402
-Node: Color package options490201
-Node: Color models491847
-Ref: color models cmyk492644
-Ref: color models gray493007
-Ref: color models rgb493156
-Ref: color models RGB493493
-Ref: color models named493868
-Node: Commands for color494156
-Node: Define colors494571
-Node: Colored text495296
-Node: Colored boxes497693
-Node: Colored pages499082
-Node: Graphics499775
-Node: Graphics package options501901
-Node: Graphics package configuration504654
-Node: \graphicspath505456
-Node: \DeclareGraphicsExtensions508414
-Node: \DeclareGraphicsRule510232
-Node: Commands for graphics513411
-Node: \includegraphics513916
-Ref: includegraphics width518979
-Ref: includegraphics height519512
-Ref: includegraphics totalheight519918
-Ref: includegraphics keepaspectratio520182
-Ref: includegraphics viewport521868
-Ref: includegraphics trim522263
-Ref: includegraphics clip522719
-Ref: includegraphics page522979
-Ref: includegraphics pagebox523070
-Ref: includegraphics interpolate523935
-Ref: includegraphics quiet524140
-Ref: includegraphics draft524301
-Ref: includegraphics bb525106
-Ref: includegraphics bbllx525504
-Ref: includegraphics bblly525504
-Ref: includegraphics bburx525504
-Ref: includegraphics bbury525504
-Ref: includegraphics natwidth525646
-Ref: includegraphics natheight525646
-Ref: includegraphics hiresbb525832
-Ref: includegraphics type526594
-Ref: includegraphics ext526634
-Ref: includegraphics read526737
-Ref: includegraphics command526854
-Node: \rotatebox527100
-Node: \scalebox529954
-Node: \resizebox531034
-Node: Special insertions532228
-Node: Reserved characters533096
-Node: Upper and lower case534356
-Node: Symbols by font position536742
-Node: Text symbols537421
-Node: Accents542405
-Node: \accent544690
-Node: Additional Latin letters546516
-Ref: Non-English characters546698
-Node: inputenc package547717
-Ref: \inputencoding549933
-Node: \rule550269
-Node: \today551457
-Node: Splitting the input552393
-Node: \endinput554135
-Node: \include & \includeonly555438
-Node: \input559735
-Node: Front/back matter560950
-Node: Table of contents etc.561283
-Node: \@dottedtocline567044
-Node: \addcontentsline568631
-Node: \addtocontents571694
-Node: \contentsline573911
-Node: \nofiles575689
-Node: \numberline576440
-Node: Indexes577604
-Node: Produce the index manually580398
-Node: \index581562
-Node: makeindex586773
-Ref: makeindex preamble588441
-Ref: makeindex postamble588587
-Ref: makeindex group skip588683
-Ref: makeindex letheadflag589023
-Ref: makeindex lethead prefix589484
-Ref: makeindex lethead suffix589636
-Ref: makeindex item 0589784
-Ref: makeindex item 1589864
-Ref: makeindex item 2589939
-Ref: makeindex item 01590017
-Ref: makeindex item x1590122
-Ref: makeindex item 12590327
-Ref: makeindex item x2590435
-Ref: makeindex delim 0590595
-Ref: makeindex delim 1590725
-Ref: makeindex delim 2590855
-Ref: makeindex delim n590981
-Ref: makeindex delim r591116
-Ref: makeindex line max591224
-Ref: makeindex indent space591359
-Ref: makeindex indent length591454
-Ref: makeindex page precedence591639
-Node: \printindex592676
-Node: Glossaries593149
-Node: \newglossaryentry595116
-Node: \gls596583
-Node: Letters597377
-Node: \address600995
-Node: \cc601806
-Node: \closing602248
-Node: \encl602562
-Node: \location602976
-Node: \makelabels603240
-Node: \name605557
-Node: \opening605798
-Node: \ps606079
-Node: \signature606368
-Node: \telephone607596
-Node: Input/output607961
-Node: \openin & \openout608691
-Node: \read611451
-Node: \typein612638
-Node: \typeout613898
-Node: \write614938
-Node: \write and security619665
-Node: \message620609
-Node: \wlog622438
-Node: \write18622939
-Node: Command line interface626430
-Ref: Command line626594
-Node: Command line options628747
-Ref: interaction modes629750
-Ref: output directory630704
-Node: Command line input632403
-Node: Jobname634520
-Node: Recovering from errors637763
-Node: Document templates639191
-Node: beamer template639625
-Node: article template640267
-Node: book template640730
-Node: Larger book template641209
-Node: Index642751
-Ref: Command Index642837
+Node: \raggedbottom82649
+Node: Page layout parameters83181
+Ref: page layout parameters columnsep83410
+Ref: page layout parameters columnseprule83410
+Ref: page layout parameters columnwidth83410
+Ref: page layout parameters headheight83664
+Ref: page layout parameters headsep83831
+Ref: page layout parameters footskip84143
+Ref: page layout parameters linewidth84477
+Ref: page layout parameters marginparpush84830
+Ref: page layout parameters marginsep84830
+Ref: page layout parameters marginparwidth84830
+Ref: page layout parameters oddsidemargin85870
+Ref: page layout parameters evensidemargin85870
+Ref: page layout parameters paperheight86415
+Ref: page layout parameters paperwidth86641
+Ref: page layout parameters textheight86865
+Ref: page layout parameters textwidth87254
+Ref: page layout parameters hsize88192
+Ref: page layout parameters topmargin88389
+Ref: page layout parameters topskip88693
+Node: \baselineskip & \baselinestretch88909
+Node: Floats94079
+Ref: floats bottomfraction98417
+Ref: floats floatpagefraction98544
+Ref: floats textfraction98655
+Ref: floats topfraction98857
+Ref: floats floatsep99109
+Ref: floats intextsep99219
+Ref: floats textfloatsep99434
+Ref: floats bottomnumber99698
+Ref: floats dbltopnumber99806
+Ref: floats topnumber99925
+Ref: floats totalnumber100029
+Node: \caption100646
+Node: Sectioning103372
+Ref: sectioning secnumdepth106481
+Ref: Sectioning/secnumdepth106481
+Ref: sectioning tocdepth107107
+Ref: Sectioning/tocdepth107107
+Node: \part108147
+Node: \chapter110319
+Node: \section114092
+Node: \subsection117359
+Node: \subsubsection & \paragraph & \subparagraph120073
+Node: \appendix122730
+Node: \frontmatter & \mainmatter & \backmatter124023
+Node: \@startsection125432
+Ref: startsection name126921
+Ref: \@startsection/name126921
+Ref: startsection level127375
+Ref: \@startsection/level127375
+Ref: startsection indent128256
+Ref: \@startsection/indent128256
+Ref: startsection beforeskip128519
+Ref: \@startsection/beforeskip128519
+Ref: startsection afterskip130040
+Ref: \@startsection/afterskip130040
+Ref: startsection style131351
+Ref: \@startsection/style131351
+Node: Cross references135052
+Node: \label137201
+Node: \pageref139021
+Node: \ref139811
+Node: xr package140806
+Node: Environments142627
+Node: abstract144629
+Node: array146218
+Node: center149131
+Node: \centering150884
+Node: description152381
+Node: displaymath154598
+Node: document156294
+Node: \AtBeginDocument156724
+Node: \AtEndDocument157348
+Node: enumerate157992
+Ref: enumerate enumi159855
+Ref: enumerate enumii159855
+Ref: enumerate enumiii159855
+Ref: enumerate enumiv159855
+Ref: enumerate labelenumi160253
+Ref: enumerate labelenumii160253
+Ref: enumerate labelenumiii160253
+Ref: enumerate labelenumiv160253
+Node: eqnarray160792
+Node: equation162788
+Node: figure163456
+Node: filecontents165629
+Node: flushleft167538
+Node: \raggedright168565
+Node: flushright169763
+Node: \raggedleft170587
+Node: itemize171458
+Ref: itemize labelitemi173006
+Ref: itemize labelitemii173006
+Ref: itemize labelitemiii173006
+Ref: itemize labelitemiv173006
+Ref: itemize leftmargin173665
+Ref: itemize leftmargini173665
+Ref: itemize leftmarginii173665
+Ref: itemize leftmarginiii173665
+Ref: itemize leftmarginiv173665
+Ref: itemize leftmarginv173665
+Ref: itemize leftmarginvi173665
+Node: letter175147
+Node: list175385
+Ref: list makelabel177832
+Ref: list itemindent179217
+Ref: list itemsep179354
+Ref: list labelsep180007
+Ref: list labelwidth180170
+Ref: list leftmargin181181
+Ref: list listparindent182034
+Ref: list parsep182265
+Ref: list partopsep182733
+Ref: list rightmargin183531
+Ref: list topsep183716
+Ref: list beginparpenalty187292
+Ref: list itempenalty187391
+Ref: list endparpenalty187495
+Node: \item188366
+Node: trivlist189612
+Node: math191140
+Node: minipage191446
+Node: picture197043
+Node: \put203273
+Node: \multiput203838
+Node: \qbezier204577
+Node: \graphpaper206050
+Node: \line206844
+Node: \linethickness208818
+Node: \thinlines209283
+Node: \thicklines209694
+Node: \circle210079
+Node: \oval210621
+Node: \shortstack211636
+Node: \vector213334
+Node: \makebox (picture)214248
+Node: \framebox (picture)215430
+Node: \frame216903
+Node: \dashbox217343
+Node: quotation & quote218478
+Node: tabbing219374
+Node: table225277
+Node: tabular227360
+Ref: tabular arrayrulewidth233697
+Ref: tabular arraystrech233937
+Ref: tabular doublerulesep234158
+Ref: tabular tabcolsep234294
+Node: \multicolumn234815
+Node: \vline238692
+Node: \cline240083
+Node: \hline240793
+Node: thebibliography241475
+Node: \bibitem243958
+Node: \cite246260
+Node: \nocite248128
+Node: Using BibTeX248636
+Node: BibTeX error messages251016
+Node: theorem251921
+Node: titlepage252843
+Node: verbatim254126
+Node: \verb255939
+Node: verse258032
+Node: Line breaking259259
+Node: \\260625
+Node: \obeycr & \restorecr263055
+Node: \newline263866
+Node: \- (hyphenation)264907
+Node: \discretionary266547
+Node: \fussy & \sloppy267438
+Node: sloppypar268253
+Node: \hyphenation269399
+Node: \linebreak & \nolinebreak270019
+Node: Page breaking271199
+Node: \clearpage & \cleardoublepage273229
+Node: \newpage274749
+Node: \enlargethispage276047
+Node: \pagebreak & \nopagebreak277003
+Node: Footnotes278974
+Node: \footnote280120
+Ref: footnote footnoterule281388
+Ref: footnote footnotesep281999
+Node: \footnotemark283065
+Node: \footnotetext285422
+Node: Footnotes in section headings286024
+Node: Footnotes in a table286857
+Node: Footnotes of footnotes289788
+Node: Definitions290486
+Node: \newcommand & \renewcommand291533
+Node: Control sequences297867
+Node: \providecommand299267
+Node: \makeatletter & \makeatother300467
+Node: \@ifstar302569
+Node: \newcounter306054
+Node: \newlength307774
+Node: \newsavebox308697
+Node: \newenvironment & \renewenvironment309676
+Node: \newtheorem315000
+Node: \newfont318572
+Node: \protect319805
+Node: \ignorespaces & \ignorespacesafterend322193
+Node: xspace package324943
+Node: Counters327142
+Node: \alph \Alph \arabic \roman \Roman \fnsymbol328843
+Node: \usecounter331478
+Node: \value332337
+Node: \setcounter333390
+Node: \addtocounter333986
+Node: \refstepcounter334440
+Node: \stepcounter335109
+Node: \day & \month & \year335662
+Node: Lengths336571
+Node: Units of length341149
+Ref: units of length pt341352
+Ref: units of length pc341469
+Ref: units of length in341492
+Ref: units of length bp341518
+Ref: units of length mm341649
+Ref: units of length cm341681
+Ref: units of length dd341710
+Ref: units of length cc341742
+Ref: units of length sp341767
+Ref: Lengths/ex341909
+Ref: units of length ex341909
+Ref: Lengths/em342052
+Ref: units of length em342052
+Ref: units of length mu342393
+Node: \setlength342922
+Node: \addtolength344034
+Node: \settodepth345457
+Node: \settoheight346445
+Node: \settowidth347443
+Node: \stretch348448
+Node: Expressions349650
+Node: Making paragraphs354464
+Node: \par356779
+Node: \indent & \noindent358825
+Node: \parindent & \parskip360360
+Node: Marginal notes361689
+Ref: marginal notes marginparpush363085
+Ref: marginal notes marginparsep363259
+Ref: marginal notes marginparwidth363391
+Node: Math formulas363740
+Node: Subscripts & superscripts366788
+Node: Math symbols368949
+Node: Arrows392720
+Node: \boldmath & \unboldmath393908
+Node: Blackboard bold395427
+Node: Calligraphic396229
+Node: Delimiters396760
+Node: \left & \right398947
+Node: \bigl & \bigr etc.402984
+Node: Dots405754
+Ref: ellipses cdots406185
+Ref: ellipses ddots406330
+Ref: ellipses ldots406411
+Ref: ellipses vdots406828
+Node: Greek letters408012
+Node: Math functions409691
+Node: Math accents411335
+Node: Over- and Underlining412234
+Node: Spacing in math mode414061
+Ref: spacing in math mode thickspace414992
+Ref: spacing in math mode medspace415443
+Ref: Spacing in math mode/\thinspace415899
+Ref: spacing in math mode thinspace415899
+Ref: spacing in math mode negthinspace416380
+Ref: spacing in math mode quad416753
+Ref: spacing in math mode qquad417009
+Node: \smash417347
+Node: \phantom & \vphantom & \hphantom419564
+Node: \mathstrut422138
+Node: Math styles423100
+Node: Math miscellany425834
+Node: Colon character & \colon426331
+Node: \*427024
+Node: \frac427604
+Node: \sqrt427975
+Node: \stackrel428561
+Node: Modes428834
+Ref: modes paragraph mode429284
+Ref: modes lr mode429596
+Ref: modes math mode430202
+Ref: modes vertical mode430537
+Ref: modes internal vertical mode430755
+Ref: modes inner paragraph mode431278
+Ref: modes outer paragraph mode431278
+Node: \ensuremath431692
+Node: Page styles432397
+Node: \maketitle433160
+Node: \pagenumbering436178
+Node: \pagestyle438165
+Node: \thispagestyle441673
+Node: Spaces442627
+Node: \enspace & \quad & \qquad443947
+Node: \hspace444862
+Node: \hfill446719
+Node: \hss447783
+Node: \spacefactor448477
+Node: \@451884
+Ref: \AT452004
+Node: \frenchspacing & \nonfrenchspacing453944
+Ref: \frenchspacing454062
+Node: \normalsfcodes454864
+Node: \(SPACE)455132
+Ref: Leading blanks457072
+Node: ~457385
+Node: \thinspace & \negthinspace460195
+Node: \/461393
+Node: \hrulefill & \dotfill463351
+Node: \bigskip & \medskip & \smallskip464711
+Ref: bigskip465529
+Ref: medskip465733
+Ref: smallskip465942
+Node: \bigbreak & \medbreak & \smallbreak466603
+Node: \strut467589
+Node: \vspace470826
+Node: \vfill472387
+Node: \addvspace473315
+Node: Boxes475361
+Node: \mbox & \makebox476067
+Ref: mbox makebox depth477335
+Ref: mbox makebox height477335
+Ref: mbox makebox width477335
+Ref: mbox makebox totalheight477335
+Node: \fbox & \framebox479430
+Ref: fbox framebox fboxrule480737
+Ref: fbox framebox fboxsep480927
+Node: \parbox482029
+Node: \raisebox484335
+Ref: raisebox depth485308
+Ref: raisebox height485308
+Ref: raisebox width485308
+Ref: raisebox totalheight485308
+Node: \sbox & \savebox486009
+Node: lrbox489095
+Node: \usebox489981
+Node: Color490420
+Node: Color package options491219
+Node: Color models492865
+Ref: color models cmyk493662
+Ref: color models gray494025
+Ref: color models rgb494174
+Ref: color models RGB494511
+Ref: color models named494886
+Node: Commands for color495174
+Node: Define colors495589
+Node: Colored text496314
+Node: Colored boxes498711
+Node: Colored pages500100
+Node: Graphics500793
+Node: Graphics package options502919
+Node: Graphics package configuration505672
+Node: \graphicspath506474
+Node: \DeclareGraphicsExtensions509432
+Node: \DeclareGraphicsRule511250
+Node: Commands for graphics514429
+Node: \includegraphics514934
+Ref: includegraphics width519997
+Ref: includegraphics height520530
+Ref: includegraphics totalheight520936
+Ref: includegraphics keepaspectratio521200
+Ref: includegraphics viewport522886
+Ref: includegraphics trim523281
+Ref: includegraphics clip523737
+Ref: includegraphics page523997
+Ref: includegraphics pagebox524088
+Ref: includegraphics interpolate524953
+Ref: includegraphics quiet525158
+Ref: includegraphics draft525319
+Ref: includegraphics bb526124
+Ref: includegraphics bbllx526522
+Ref: includegraphics bblly526522
+Ref: includegraphics bburx526522
+Ref: includegraphics bbury526522
+Ref: includegraphics natwidth526664
+Ref: includegraphics natheight526664
+Ref: includegraphics hiresbb526850
+Ref: includegraphics type527612
+Ref: includegraphics ext527652
+Ref: includegraphics read527755
+Ref: includegraphics command527872
+Node: \rotatebox528118
+Node: \scalebox530972
+Node: \resizebox532052
+Node: Special insertions533246
+Node: Reserved characters534114
+Node: Upper and lower case535374
+Node: Symbols by font position537760
+Node: Text symbols538439
+Node: Accents543423
+Node: \accent545708
+Node: Additional Latin letters547534
+Ref: Non-English characters547716
+Node: inputenc package548735
+Ref: \inputencoding550951
+Node: \rule551287
+Node: \today552475
+Node: Splitting the input553411
+Node: \endinput555153
+Node: \include & \includeonly556456
+Node: \input560753
+Node: Front/back matter561968
+Node: Table of contents etc.562301
+Node: \@dottedtocline568062
+Node: \addcontentsline569649
+Node: \addtocontents572712
+Node: \contentsline574929
+Node: \nofiles576707
+Node: \numberline577458
+Node: Indexes578622
+Node: Produce the index manually581416
+Node: \index582580
+Node: makeindex587791
+Ref: makeindex preamble589459
+Ref: makeindex postamble589605
+Ref: makeindex group skip589701
+Ref: makeindex letheadflag590041
+Ref: makeindex lethead prefix590502
+Ref: makeindex lethead suffix590654
+Ref: makeindex item 0590802
+Ref: makeindex item 1590882
+Ref: makeindex item 2590957
+Ref: makeindex item 01591035
+Ref: makeindex item x1591140
+Ref: makeindex item 12591345
+Ref: makeindex item x2591453
+Ref: makeindex delim 0591613
+Ref: makeindex delim 1591743
+Ref: makeindex delim 2591873
+Ref: makeindex delim n591999
+Ref: makeindex delim r592134
+Ref: makeindex line max592242
+Ref: makeindex indent space592377
+Ref: makeindex indent length592472
+Ref: makeindex page precedence592657
+Node: \printindex593694
+Node: Glossaries594167
+Node: \newglossaryentry596134
+Node: \gls597601
+Node: Letters598395
+Node: \address602013
+Node: \cc602824
+Node: \closing603266
+Node: \encl603580
+Node: \location603994
+Node: \makelabels604258
+Node: \name606575
+Node: \opening606816
+Node: \ps607097
+Node: \signature607386
+Node: \telephone608614
+Node: Input/output608979
+Node: \openin & \openout609709
+Node: \read612469
+Node: \typein613656
+Node: \typeout614916
+Node: \write615956
+Node: \write and security620683
+Node: \message621627
+Node: \wlog623456
+Node: \write18623957
+Node: Command line interface627448
+Ref: Command line627612
+Node: Command line options629765
+Ref: interaction modes630768
+Ref: output directory631722
+Node: Command line input633421
+Node: Jobname635538
+Node: Recovering from errors638781
+Node: Document templates640209
+Node: beamer template640643
+Node: article template641285
+Node: book template641748
+Node: Larger book template642227
+Node: Index643769
+Ref: Command Index643855
 
 End Tag Table
 

Modified: trunk/latex2e.pdf
===================================================================
(Binary files differ)

Modified: trunk/latex2e.texi
===================================================================
--- trunk/latex2e.texi	2022-01-26 23:01:41 UTC (rev 1082)
+++ trunk/latex2e.texi	2022-05-13 15:44:52 UTC (rev 1083)
@@ -2791,7 +2791,8 @@
 (@pxref{\enlargethispage}).
 
 The @code{\flushbottom} state is the default only if you select the
- at code{twoside} document class option (@pxref{Document class options}).
+ at code{twocolumn} document class option (@pxref{Document class options}),
+and for indexes made using @code{makeidx}.
 
 
 @node \raggedbottom
@@ -2803,7 +2804,7 @@
 Make all later pages the natural height of the material on that page; no
 rubber vertical lengths will be stretched.  Thus, in a two-sided
 document the facing pages may be different heights.  This command can go
-at any point in the document body.  See @ref{\flushbottom}.
+at any point in the document body.  @xref{\flushbottom}.
 
 This is the default unless you select the @code{twoside} document class
 option (@pxref{Document class options}).
@@ -9617,9 +9618,10 @@
 @cindex commands, defining new ones
 @cindex commands, redefining
 @cindex defining a new command
+ at cindex redefining a command
 @cindex new commands, defining
 
-Synopses, one of:
+Synopses, one of (three regular forms, three starred forms):
 
 @example
 \newcommand@{\@var{cmd}@}@{@var{defn}@}
@@ -9631,11 +9633,12 @@
 @end example
 
 @noindent
-or one of these.
+or all the same possibilities with @code{\renewcommand} instead of
+ at code{\newcommand}:
 
 @example
+\renewcommand@{\@var{cmd}@}@{@var{defn}@}
 \renewcommand@{\@var{cmd}@}[@var{nargs}]@{@var{defn}@}
-\renewcommand@{\@var{cmd}@}[@var{nargs}]@{@var{defn}@}
 \renewcommand@{\@var{cmd}@}[@var{nargs}][@var{optargdefault}]@{@var{defn}@}
 \renewcommand*@{\@var{cmd}@}@{@var{defn}@}
 \renewcommand*@{\@var{cmd}@}[@var{nargs}]@{@var{defn}@}
@@ -9642,27 +9645,27 @@
 \renewcommand*@{\@var{cmd}@}[@var{nargs}][@var{optargdefault}]@{@var{defn}@}
 @end example
 
-Define or redefine a command (see also the discussion of
- at code{\DeclareRobustCommand} in @ref{Class and package commands}).
 
+Define or redefine a command (see also @code{\DeclareRobustCommand} in
+ at ref{Class and package commands}).
+
 @cindex starred form, defining new commands
 @cindex *-form, defining new commands
 @findex \long
 The starred form of these two forbids the arguments from containing
-multiple paragraphs of text (in plain @TeX{} terms, the commands
+multiple paragraphs of text (in plain @TeX{} terms: the commands
 are not @code{\long}).  With the default form, arguments can be
 multiple paragraphs.
 
-These are the parameters:
+These are the parameters (examples follow):
 
 @table @var
 @item cmd
+Required; @code{\@var{cmd}} is the command name.  It must begin with a
+backslash, @code{\}, and must not begin with the four character string
+ at code{\end}.  For @code{\newcommand}, it must not be already defined.
+For @code{\renewcommand}, this name must already be defined.
 
-Required; @code{\@var{cmd}} is the command name.  It must begin with a backslash, @code{\},
-and must not begin with the four character string @code{\end}.  For
- at code{\newcommand}, it must not be already defined.  For
- at code{\renewcommand}, this name must already be defined.
-
 @item nargs
 Optional; an integer from 0 to 9, specifying the number of arguments
 that the command takes, including any optional argument.  Omitting this
@@ -9671,38 +9674,54 @@
 different number of arguments than the old version.
 
 @item optargdefault
+ at cindex optional arguments, defining and using
+ at cindex arguments, optional, defining and using
 Optional; if this argument is present then the first argument of
 @code{\@var{cmd}} is optional, with default value @var{optargdefault}
-(which may be the empty string).  If @var{optargsdefault} is not present
+(which may be the empty string).  If @var{optargdefault} is not present
 then @code{\@var{cmd}} does not take an optional argument.
 
- at cindex positional parameter
-That is, if @code{\@var{cmd}} is used with square brackets, as in
- at code{\@var{cmd}[@var{optval}]@{...@}...}, then within @var{defn} the
-parameter at tie{}@code{#1} is set to the value of @var{optval}.  On the
-other hand, if @code{\@var{cmd}} is called without the square brackets
-then within @var{defn} the parameter @code{#1} is set to the value of
- at var{optargdefault}.  In either case, the required arguments start with
- at code{#2}.
+That is, if @code{\@var{cmd}} is called with a following argument in
+square brackets, as in @code{\@var{cmd}[@var{optval}]@{...@}...}, then
+within @var{defn} the parameter at tie{}@code{#1} is set to @var{optval}.
+On the other hand, if @code{\@var{cmd}} is called without following
+square brackets then within @var{defn} the parameter @code{#1} is set
+to @var{optargdefault}.  In either case, the required arguments start
+with @code{#2}.
 
-Omitting @code{[@var{optargdefault}]} is different from having the
-square brackets with no contents, as in @code{[]}.  The former sets
- at code{#1} to the value of @var{optargdefault}; the latter sets @code{#1}
-to the empty string.
+Omitting @code{[@var{optargdefault}]} from the definition is entirely
+different from giving the square brackets with empty contents, as in
+ at code{[]}.  The former says the command being defined takes no
+optional argument, so @code{#1} is the first required argument (if
+ at math{@var{nargs} @geq{} 1}); the latter sets the optional argument
+ at code{#1} to the empty string as the default, if no optional argument
+was given in the call.
 
+Similarly, omitting @code{[@var{optval}]} from a call is also entirely
+different from giving the square brackets with empty contents.  The
+former sets @code{#1} to the value of @var{optval} (assuming the
+command was defined to take an optional argument); the latter sets
+ at code{#1} to the empty string, just as with any other value.
+
+If a command is not defined to take an optional argument, but is
+called with an optional argument, the results are unpredictable: there
+may be a @LaTeX{} error, there may be incorrect typeset output, or both.
+
 @item defn
+ at cindex parameters, substituting
 Required; the text to be substituted for every occurrence of
 @code{\@var{cmd}}. The parameters @code{#1}, @code{#2},
-... @code{#@var{nargs}} are replaced by the values that you supply when
-you call the command (or by the default value if there is an optional
-argument and you don't exercise the option).
+ at dots{}, @code{#@var{nargs}} are replaced by the values supplied when
+the command is called (or by @var{optargdefault} in the case of an
+optional argument not specified in the call, as just explained).
 
 @end table
 
+ at cindex blanks, after control sequences
 @TeX{} ignores blanks in the source following a control word
-(@pxref{Control sequences}), as in @samp{\cmd }.  If you actually want a
-space there, one solution is to type @code{@{@}} after the command
-(@samp{\cmd@{@} }, and another solution is to use an explicit control
+(@pxref{Control sequences}), as in @samp{\cmd }.  If you want a space
+there, one solution is to type @code{@{@}} after the command
+(@samp{\cmd@{@} }), and another solution is to use an explicit control
 space (@samp{\cmd\ }).
 
 A simple example of defining a new command:
@@ -9710,14 +9729,15 @@
 replaced by the longer text.  Redefining an existing command is similar:
 @code{\renewcommand@{\qedsymbol@}@{@{\small QED@}@}}.
 
-If you try to define a command and the name has already been used then
-you get something like @samp{LaTeX Error: Command \fred already
-defined. Or name \end... illegal, see p.192 of the manual}.  If you try
-to redefine a command and the name has not yet been used then you get
-something like @samp{LaTeX Error: \hank undefined}.
+If you use @code{\newcommand} and the command name has already been
+used then you get something like @samp{LaTeX Error: Command \fred
+already defined. Or name \end... illegal, see p.192 of the manual}.
+Similarly, If you use @code{\renewcommand} and the command name has
+not been defined then you get something like @samp{LaTeX Error: \hank
+undefined}.
 
 Here the first definition creates a command with no arguments, and the
-second, one with one required argument.
+second, a command with one required argument:
 
 @example
 \newcommand@{\student@}@{Ms~O'Leary@}
@@ -9753,12 +9773,12 @@
 @end example
 
 @noindent
-The output is @samp{I employ Dewey, Cheatem, and Howe}.  The optional
-argument, the @code{Howe}, is associated with @code{#1}, while
+The output is @samp{I employ Dewey, Cheatem, and Howe.}.  The optional
+argument, @code{Howe}, is associated with @code{#1}, while
 @code{Dewey} and @code{Cheatem} are associated with @code{#2}
 and at tie{}@code{#3}.  Because of the optional argument,
- at code{\lawyers@{Dewey@}@{Cheatem@}} will give the output @samp{I employ
-Dewey, Cheatem, and company}.
+ at code{\lawyers@{Dewey@}@{Cheatem@}} will give the output @samp{I
+employ Dewey, Cheatem, and company.}.
 
 The braces around @var{defn} do not define a group, that is, they do not
 delimit the scope of the result of expanding @var{defn}.  For example,
@@ -9769,9 +9789,9 @@
 @end example
 
 @noindent
-the words @samp{met the} would incorrectly be in italics.  The solution
-is to put another pair of braces inside the definition:
- at code{\newcommand@{\shipname@}[1]@{@{\it #1@}@}}.
+the words @samp{met the}, and the period, would incorrectly be in
+italics.  The solution is to put another pair of braces inside the
+definition: @code{\newcommand@{\shipname@}[1]@{@{\it #1@}@}}.
 
 @menu
 * Control sequences:: Control sequence, control word and control symbol.
@@ -9780,33 +9800,40 @@
 @node Control sequences
 @subsection Control sequence, control word and control symbol
 
-When reading input @TeX{} converts the sequences of read characters into
-a sequence of @dfn{tokens}. When @TeX{} sees a backslash @code{\}, it
-will handle the following characters in a special way in order to make a
- at dfn{control sequence} token.
+ at cindex control sequences
 
+When reading input @TeX{} converts sequences of read characters into a
+sequence of @dfn{tokens}. When @TeX{} sees a backslash @code{\}, it
+will handle the following characters in a special way in order to make
+a @dfn{control sequence} token.
+
 The control sequences fall into two categories:
 
 @itemize
 @item
+ at cindex control word, defined
 @dfn{control word}, when the control sequence is gathered from a
- at code{\} followed by at least one ASCII letter, followed by at least one
-blank. The sequence of at least one ASCII letter is called the
- at dfn{control sequence name}.
+ at code{\} followed by at least one ASCII letter (@code{A-Z} and
+ at code{a-z}), followed by at least one non-letter.
+
 @item
+ at cindex control symbol, defined
 @dfn{control symbol}, when the control sequence is gathered from a
 @code{\} followed by one non-letter character.
 @end itemize
 
+The sequence of characters so found after the @code{\} is also called
+the @dfn{control sequence name}.
+
 Blanks after a control word are ignored and do not produce any
 whitespace in the output (@pxref{\newcommand & \renewcommand} and
 @ref{\(SPACE)}).
 
-Just as the @code{\relax} command does nothing, the following will print
- at samp{Hello!}@inlinefmt{tex,---where we used visible spaces
- at samp{@visiblespace{}} instead of blanks,}@inlinefmt{info,---if you use
-the Emacs info viewer at comma{} turn on the whitespace-mode minor mode to
-see the trailing spaces}:
+Just as the @code{\relax} command does nothing, the following input
+will simply print @samp{Hello!} @inlinefmt{tex,We use visible
+spaces @samp{@visiblespace{}} instead of blanks}@inlinefmt{info, (if
+you use the Emacs info viewer at comma{} turn on the whitespace-mode
+minor mode to see the trailing spaces)}:
 
 @example
 Hel\relax at visiblespace{}@visiblespace{}@visiblespace{}
@@ -9814,7 +9841,7 @@
 @end example
 
 @noindent
-This is because blanks after @code{\relax}, including the newline are
+This is because blanks after @code{\relax}, including the newline, are
 ignored, and blanks at the beginning of a line are also ignored
 (@pxref{Leading blanks}).
 
@@ -9853,10 +9880,10 @@
 @end example
 
 @noindent
-outputs @samp{From Saint Michael's College}.  Unlike @code{\newcommand},
-the repeated use of @code{\providecommand} does not give an error.
+outputs @samp{From Saint Michael's College.}.  Unlike
+ at code{\newcommand}, the repeated use of @code{\providecommand} to (try
+to) define @code{\myaffiliation} does not give an error.
 
-
 @node \makeatletter & \makeatother
 @section @code{\makeatletter} & @code{\makeatother}
 



More information about the latexrefman-commits mailing list.