diff options
Diffstat (limited to 'Master/texmf-dist/doc/info/latex2e.info')
-rw-r--r-- | Master/texmf-dist/doc/info/latex2e.info | 13771 |
1 files changed, 9377 insertions, 4394 deletions
diff --git a/Master/texmf-dist/doc/info/latex2e.info b/Master/texmf-dist/doc/info/latex2e.info index c41980e2072..36a89bb59e9 100644 --- a/Master/texmf-dist/doc/info/latex2e.info +++ b/Master/texmf-dist/doc/info/latex2e.info @@ -2,7 +2,7 @@ This is latex2e.info, produced by makeinfo version 6.5 from latex2e.texi. This document is an unofficial reference manual for LaTeX, a document -preparation system, version of March 2018. +preparation system, version of July 2018. This manual was originally translated from 'LATEX.HLP' v1.0a in the VMS Help Library. The pre-translation version was written by George D. @@ -42,7 +42,7 @@ File: latex2e.info, Node: Top, Next: About this document, Up: (dir) LaTeX2e: An unofficial reference manual *************************************** -This document is an unofficial reference manual (version of March 2018) +This document is an unofficial reference manual (version of July 2018) for LaTeX2e, a document preparation system. * Menu: @@ -52,7 +52,7 @@ for LaTeX2e, a document preparation system. * Document classes:: Some of the various classes available. * Fonts:: Italic, bold, typewriter, etc. * Layout:: Controlling the page layout. -* Sectioning:: How to section properly. +* Sectioning:: Parts, Chapters, Sections, etc. * Cross references:: Automatic referencing. * Environments:: Such as enumerate & itemize. * Line breaking:: Influencing line breaks. @@ -76,8 +76,7 @@ for LaTeX2e, a document preparation system. * Terminal input/output:: User interaction. * Command line:: System-independent command-line behavior. * Document templates:: Starter templates for various document classes. -* Concept Index:: General index. -* Command Index:: Alphabetical list of LaTeX commands. +* Index:: General index. File: latex2e.info, Node: About this document, Next: Overview, Prev: Top, Up: Top @@ -88,9 +87,9 @@ File: latex2e.info, Node: About this document, Next: Overview, Prev: Top, Up This is an unofficial reference manual for the LaTeX2e document preparation system, which is a macro package for the TeX typesetting program (*note Overview::). This document's home page is -<http://puszcza.gnu.org.ua/software/latexrefman/>. That page has links -to the current output in various formats, sources, mailing list archives -and subscriptions, and other infrastructure. +<puszcza.gnu.org.ua/software/latexrefman>. That page has links to the +current output in various formats, sources, mailing list archives and +subscriptions, and other infrastructure. In this document, we will mostly just use 'LaTeX' rather than 'LaTeX2e', since the previous version of LaTeX (2.09) was frozen decades @@ -156,10 +155,11 @@ plain text, write it as 'LaTeX'. * Menu: -* Starting and ending:: The standard beginning and end of a document. -* Output files:: Files produced. +* Starting and ending:: The standard beginning and end of a document. +* Output files:: Files produced. * TeX engines:: Programs that can compile TeX and LaTeX. * LaTeX command syntax:: General syntax of LaTeX commands. +* CTAN:: Our repository. File: latex2e.info, Node: Starting and ending, Next: Output files, Up: Overview @@ -168,26 +168,30 @@ File: latex2e.info, Node: Starting and ending, Next: Output files, Up: Overvi ======================= LaTeX files have a simple global structure, with a standard beginning -and ending. Here is a "hello, world" example: +and ending. This is a small example. \documentclass{article} \begin{document} Hello, \LaTeX\ world. \end{document} -Here, the 'article' is the so-called "document class", implemented in a -file 'article.cls'. Any document class can be used. A few document -classes are defined by LaTeX itself, and vast array of others are widely -available. *Note Document classes::. +Every LaTeX document has a '\begin{document}' line and an +'\end{document}' line. + +Here, the 'article' is the "document class". It is implemented in a +file 'article.cls'. You can use any document class on your system. A +few document classes are defined by LaTeX itself, and vast array of +others are widely available. *Note Document classes::. You can include other LaTeX commands between the '\documentclass' and the '\begin{document}' commands. This area is called the "preamble". - The '\begin{document} ... \end{document}' is a so-called + The '\begin{document}', '\end{document}' pair defines an "environment"; the 'document' environment (and no others) is required in -all LaTeX documents (*note document::). LaTeX provides many -environments itself, and many more are defined separately. *Note -Environments::. +all LaTeX documents (*note document::). LaTeX make available to you +many environments that are documented here (*note Environments::). Many +more are available to you from external packages, most importantly those +available at CTAN (*note CTAN::). The following sections discuss how to produce PDF or other output from a LaTeX input file. @@ -198,7 +202,7 @@ File: latex2e.info, Node: Output files, Next: TeX engines, Prev: Starting and 2.2 Output files ================ -LaTeX produces a main output file and at least two accessory files. The +LaTeX produces a main output file and at least two auxiliary files. The main output file's name ends in either '.dvi' or '.pdf'. '.dvi' @@ -238,8 +242,8 @@ main output file's name ends in either '.dvi' or '.pdf'. LaTeX may produce yet more files, characterized by the filename ending. These include a '.lof' file that is used to make a list of figures, a '.lot' file used to make a list of tables, and a '.toc' file -used to make a table of contents. A particular class may create others; -the list is open-ended. +used to make a table of contents (*note Table of contents etc.::). A +particular class may create others; the list is open-ended. File: latex2e.info, Node: TeX engines, Next: LaTeX command syntax, Prev: Output files, Up: Overview @@ -249,7 +253,7 @@ File: latex2e.info, Node: TeX engines, Next: LaTeX command syntax, Prev: Outp LaTeX is defined to be a set of commands that are run by a TeX implementation (*note Overview::). This section gives a terse overview -of the main programs. +of the main programs (see also *note Command line::). 'latex' 'pdflatex' @@ -296,7 +300,7 @@ support for Japanese and other languages ([u]pTeX, <http://ctan.org/pkg/ptex>, <http://ctan.org/pkg/uptex>). -File: latex2e.info, Node: LaTeX command syntax, Prev: TeX engines, Up: Overview +File: latex2e.info, Node: LaTeX command syntax, Next: CTAN, Prev: TeX engines, Up: Overview 2.4 LaTeX command syntax ======================== @@ -334,7 +338,7 @@ commands it covers (barring unintentional omissions, a.k.a. bugs). * Environment:: Area of the source with distinct behavior. * Declaration:: Change the value or meaning of a command. -* \makeatletter and \makeatother:: Change the status of the at-sign character. +* \makeatletter & \makeatother:: Change the status of the at-sign character. File: latex2e.info, Node: Environment, Next: Declaration, Up: LaTeX command syntax @@ -357,7 +361,7 @@ behavior. For instance, for poetry in LaTeX put the lines between ... \end{verse} - See *note Environments:: for a list of environments. + *Note Environments:: for a list of environments. The ENVIRONMENT NAME at the beginning must exactly match that at the end. This includes the case where ENVIRONMENT NAME ends in a @@ -373,7 +377,7 @@ required (it specifies the formatting of columns). \end{tabular} -File: latex2e.info, Node: Declaration, Next: \makeatletter and \makeatother, Prev: Environment, Up: LaTeX command syntax +File: latex2e.info, Node: Declaration, Next: \makeatletter & \makeatother, Prev: Environment, Up: LaTeX command syntax 2.4.2 Command declarations -------------------------- @@ -383,10 +387,10 @@ command or parameter. For instance, the '\mainmatter' command changes the setting of page numbers from roman numerals to arabic. -File: latex2e.info, Node: \makeatletter and \makeatother, Prev: Declaration, Up: LaTeX command syntax +File: latex2e.info, Node: \makeatletter & \makeatother, Prev: Declaration, Up: LaTeX command syntax -2.4.3 '\makeatletter' and '\makeatother' ----------------------------------------- +2.4.3 '\makeatletter' & '\makeatother' +-------------------------------------- Synopsis: @@ -423,10 +427,9 @@ a letter. <http://ctan.org/pkg/macros2e>. These macros are mainly intended to package or class authors. - The example below is typical. In the user's class file is a command -'\thesis@universityname'. The user wants to change the definition. -These three lines should go in the preamble, before the -'\begin{document}'. + In this example the class file has a command '\thesis@universityname' +that the user wants to change. These three lines should go in the +preamble, before the '\begin{document}'. \makeatletter \renewcommand{\thesis@universityname}{Saint Michael's College} @@ -437,7 +440,7 @@ These three lines should go in the preamble, before the * \@ifstar:: Define your own commands with *-variants. -File: latex2e.info, Node: \@ifstar, Up: \makeatletter and \makeatother +File: latex2e.info, Node: \@ifstar, Up: \makeatletter & \makeatother 2.4.3.1 '\@ifstar' .................. @@ -445,8 +448,8 @@ File: latex2e.info, Node: \@ifstar, Up: \makeatletter and \makeatother Synopsis: \newcommand{\mycmd}{\@ifstar{\mycmd@star}{\mycmd@nostar}} - \newcommand{\mycmd@nostar}[NON-STARRED COMMAND NUMBER OF ARGS]{BODY OF NON-STARRED COMMAND} - \newcommand{\mycmd@star}[STARRED COMMAND NUMBER OF ARGS]{BODY OF STARRED COMMAND} + \newcommand{\mycmd@nostar}[NOSTAR-NUM-ARGS]{NOSTAR-BODY} + \newcommand{\mycmd@star}[STAR-NUM-ARGS]{STAR-BODY} Many standard LaTeX environments or commands have a variant with the same name but ending with a star character '*', an asterisk. Examples @@ -465,7 +468,7 @@ the synopsis these two are '\mycmd@nostar' and '\mycmd@star'. They could take the same number of arguments or a different number, or no arguments at all. As always, in a LaTeX document a command using at-sign '@' must be enclosed inside a '\makeatletter ... \makeatother' -block (*note \makeatletter and \makeatother::). +block (*note \makeatletter & \makeatother::). This example of '\@ifstar' defines the command '\ciel' and a variant '\ciel*'. Both have one required argument. A call to '\ciel{night}' @@ -477,14 +480,15 @@ not blue sky". \newcommand*{\ciel}{\@ifstar{\ciel@starred}{\ciel@unstarred}} In the next example, the starred variant takes a different number of -arguments than does the unstarred one. With this definition, Agent -007's '``My name is \agentsecret*{Bond}, \agentsecret{James}{Bond}.''' -is equivalent to '``My name is \textsc{Bond}, \textit{James} -textsc{Bond}.''' +arguments than the unstarred one. With this definition, Agent 007's +'``My name is \agentsecret*{Bond}, \agentsecret{James}{Bond}.''' is +equivalent to entering the commands '``My name is \textsc{Bond}, +\textit{James} textsc{Bond}.''' \newcommand*{\agentsecret@unstarred}[2]{\textit{#1} \textsc{#2}} \newcommand*{\agentsecret@starred}[1]{\textsc{#1}} - \newcommand*{\agentsecret}{\@ifstar{\agentsecret@starred}{\agentsecret@unstarred}} + \newcommand*{\agentsecret}{% + \@ifstar{\agentsecret@starred}{\agentsecret@unstarred}} There are two sometimes more convenient ways to accomplish the work of '\@ifstar'. The 'suffix' package allows the construct @@ -498,6 +502,35 @@ the 'xparse' package that allows this code. } +File: latex2e.info, Node: CTAN, Prev: LaTeX command syntax, Up: Overview + +2.5 CTAN: Comprehensive TeX Archive Network +=========================================== + +The Comprehensive TeX Archive Network, CTAN, is the TeX and LaTeX +community's repository of free material. It is a set of Internet sites +around the world that offer material related to LaTeX for download. +Visit CTAN on the web at <https://ctan.org>. + + This material is organized into packages, discrete bundles that +typically offer some coherent functionality and are maintained by one +person or a small number of people. For instance, many publishers have +a package that allows authors to format papers to that publisher's +specifications. + + In addition to the massive holdings, the web site offers features +such as search by name or by functionality. + + CTAN is not a single site, but instead is a set of sites. One of the +sites is the core. This site actively manages the material, for +instance, by accepting uploads of new or updated packages. It is hosted +by the German TeX group DANTE e.V. Other sites around the world help out +by mirroring, that is, automatically syncing their collections with the +core site and then in turn making their copies publicly available. This +gives users close to their location better access and relieves the load +on the core site. The list of mirrors is at <https://ctan.org/mirrors>. + + File: latex2e.info, Node: Document classes, Next: Fonts, Prev: Overview, Up: Top 3 Document classes @@ -546,9 +579,9 @@ File: latex2e.info, Node: Document class options, Next: Additional packages, 3.1 Document class options ========================== -You can specify so-called "global options" or "class options" to the +You can specify "global options" or "class options" to the '\documentclass' command by enclosing them in square brackets. To -specify more than one OPTION, separate them with a comma, as in: +specify more than one OPTION, separate them with a comma. \documentclass[OPTION1,OPTION2,...]{CLASS} @@ -681,11 +714,11 @@ SMC Math Department' is for a class. Inside of a class or package file you can use the at-sign '@' as a character in command names without having to surround the code containing that command with '\makeatletter' and '\makeatother'. *Note -\makeatletter and \makeatother::. This allow you to create commands -that users will not accidentally redefine. Another technique is to -preface class- or package-specific commands with some string to prevent -your class or package from interfering with others. For instance, the -class 'smcmemo' might have commands '\smc@tolist', '\smc@fromlist', etc. +\makeatletter & \makeatother::. This allow you to create commands that +users will not accidentally redefine. Another technique is to preface +class- or package-specific commands with some string to prevent your +class or package from interfering with others. For instance, the class +'smcmemo' might have commands '\smc@tolist', '\smc@fromlist', etc. * Menu: @@ -729,7 +762,7 @@ file. \ProcessOptions\relax \LoadClass{article} - It identifies itself, handles the class options via the default of +It identifies itself, handles the class options via the default of passing them all to the 'article' class, and then loads the 'article' class to provide the basis for this class's code. @@ -805,11 +838,11 @@ These are the commands designed to help writers of classes or packages. '\DeclareOption{OPTION}{CODE}' '\DeclareOption*{CODE}' - Make an option available to a user, for invoking in their + Make an option available to a user to invoke in their '\documentclass' command. For example, the 'smcmemo' class could - have an option allowing users to put the institutional logo on the - first page with '\documentclass[logo]{smcmemo}'. The class file - must contain '\DeclareOption{logo}{CODE}' (and later, + have an option '\documentclass[logo]{smcmemo}' allowing users to + put the institutional logo on the first page. The class file must + contain '\DeclareOption{logo}{CODE}' (and later, '\ProcessOptions'). If you request an option that has not been declared, by default @@ -849,10 +882,11 @@ These are the commands designed to help writers of classes or packages. and the command is used within a moving argument, use '\newcommand'. - The 'etoolbox' package offers commands '\newrobustcmd', - '\newrobustcmd*', '\renewrobustcmd', '\renewrobustcmd*', - '\providerobustcmd', and '\providerobustcmd*' which are similar to - '\newcommand', '\newcommand*', '\renewcommand', '\renewcommand*', + The 'etoolbox' package offers the commands '\newrobustcmd', + '\newrobustcmd*', as well as the commands '\renewrobustcmd', + '\renewrobustcmd*', and the commands '\providerobustcmd', and + '\providerobustcmd*'. These are similar to '\newcommand', + '\newcommand*', '\renewcommand', '\renewcommand*', '\providecommand', and '\providecommand*', but define a robust CMD with two advantages as compared to '\DeclareRobustCommand': 1. They use the low-level e-TeX protection mechanism rather than @@ -866,12 +900,15 @@ These are the commands designed to help writers of classes or packages. '\IfFileExists{FILE NAME}{TRUE CODE}{FALSE CODE}' '\InputIfFileExists{FILE NAME}{TRUE CODE}{FALSE CODE}' - Execute TRUE CODE if LaTeX can find the file 'FILE NAME' and FALSE - CODE otherwise. In the second case it inputs the file immediately - after executing TRUE CODE. Thus - '\IfFileExists{img.pdf}{\includegraphics{img.pdf}}{\typeout{WARNING: - img.pdf not found}}' will include the graphic 'img.pdf' if it is - found but otherwise just give a warning. + Execute TRUE CODE if LaTeX finds the file 'FILE NAME' or FALSE CODE + otherwise. In the first case it executing TRUE CODE and then + inputs the file. Thus the command + + \IfFileExists{img.pdf}{% + \includegraphics{img.pdf}}{\typeout{!! img.pdf not found} + + will include the graphic 'img.pdf' if it is found and otherwise + give a warning. This command looks for the file in all search paths that LaTeX uses, not only in the current directory. To look only in the @@ -893,9 +930,11 @@ These are the commands designed to help writers of classes or packages. If you request a RELEASE DATE and the date of the package installed on your system is earlier, then you get a warning on the screen and - in the log like 'You have requested, on input line 4, version - `2038/01/19' of document class article, but only version - `2014/09/29 v1.4h Standard LaTeX document class' is available.' + in the log like this. + + You have requested, on input line 4, version `2038/01/19' of + document class article, but only version `2014/09/29 v1.4h + Standard LaTeX document class' is available. The command version '\LoadClassWithOptions' uses the list of options for the current class. This means it ignores any options @@ -927,8 +966,10 @@ These are the commands designed to help writers of classes or packages. features, include the optional FORMAT DATE on which those features were implemented. If present it must be in the form 'YYYY/MM/DD'. If the format version installed on your system is earlier than - FORMAT DATE then you get a warning like 'You have requested release - `2038/01/20' of LaTeX, but only release `2016/02/01' is available.' + FORMAT DATE then you get a warning like this. + + You have requested release `2038/01/20' of LaTeX, but only + release `2016/02/01' is available. '\OptionNotUsed' Adds the current option to the list of unused options. Can only be @@ -950,17 +991,20 @@ These are the commands designed to help writers of classes or packages. If your own code is bringing in a package twice then you can collapse that to once, for example replacing the two - '\RequirePackage[landscape]{geometry}\RequirePackage[margins=1in]{geometry}' - with the single '\RequirePackage[landscape,margins=1in]{geometry}'. - But if you are loading a package that in turn loads another package - then you need to queue up the options you desire for this other - package. For instance, suppose the package 'foo' loads the package - 'geometry'. Instead of - '\RequirePackage{foo}\RequirePackage[draft]{graphics}' you must - write '\PassOptionsToPackage{draft}{graphics} - \RequirePackage{foo}'. (If 'foo.sty' loads an option in conflict - with what you want then you may have to look into altering its - source.) + '\RequirePackage[landscape]{geometry}' and + '\RequirePackage[margins=1in]{geometry}' with the single command + '\RequirePackage[landscape,margins=1in]{geometry}'. + + However, imagine that you are loading 'firstpkg' and inside that + package it loads 'secondpkg', and you need the second package to be + loaded with option 'draft'. Then before doing the first package + you must queue up the options for the second package, like this. + + \PassOptionsToPackage{draft}{secondpkg} + \RequirePackage{firstpkg} + + (If 'firstpkg.sty' loads an option in conflict with what you want + then you may have to alter its source.) These commands are useful for general users as well as class and package writers. For instance, suppose a user wants to load the @@ -1012,31 +1056,33 @@ These are the commands designed to help writers of classes or packages. Identifies the class or package, printing a message to the screen and the log file. - When a user writes '\documentclass{smcmemo}' then LaTeX loads the - file 'smcmemo.cls'. Similarly, a user writing '\usepackage{test}' - prompts LaTeX to load the file 'test.sty'. If the name of the file - does not match the declared class or package name then you get a - warning. Thus, if you invoke '\documentclass{smcmemo}', and the - file 'smcmemo.cls' has the statement '\ProvidesClass{xxx}' then you - get a warning like 'You have requested document class `smcmemo', - but the document class provides 'xxx'.' This warning does not - prevent LaTeX from processing the rest of the class file normally. - - If you include the optional argument, then you must include the - date, before the first space if any, and it must have the form - 'YYYY/MM/DD'. The rest of the optional argument is free-form, - although it traditionally identifies the class, and is written to - the screen during compilation and to the log file. Thus, if your - file 'smcmemo.cls' contains the line - '\ProvidesClass{smcmemo}[2008/06/01 v1.0 SMC memo class]' and your - document's first line is '\documentclass{smcmemo}' then you will - see 'Document Class: smcmemo 2008/06/01 v1.0 SMC memo class'. + When you load a class or package, for example with + '\documentclass{smcmemo}' or '\usepackage{test}', LaTeX inputs a + file. If the name of the file does not match the class or package + name declared in it then you get a warning. Thus, if you invoke + '\documentclass{smcmemo}', and the file 'smcmemo.cls' has the + statement '\ProvidesClass{xxx}' then you get a warning like 'You + have requested document class `smcmemo', but the document class + provides 'xxx'.' This warning does not prevent LaTeX from + processing the rest of the class file normally. + + If you include the optional argument then you must include a date, + before any spaces, of the form 'YYYY/MM/DD'. The rest of the + optional argument is free-form, although it traditionally + identifies the class, and is written to the screen during + compilation and to the log file. Thus, if your file 'smcmemo.cls' + contains the line '\ProvidesClass{smcmemo}[2008/06/01 v1.0 SMC memo + class]' and your document's first line is '\documentclass{smcmemo}' + then you will see 'Document Class: smcmemo 2008/06/01 v1.0 SMC memo + class'. The date in the optional argument allows class and package users to - ask to be warned if the version of the class or package installed - on their system is earlier than RELEASE DATE, by using the optional - arguments such as '\documentclass{smcmemo}[2018/10/12]' or - '\usepackage{foo}[[2017/07/07]]'. (Note that package users only + ask to be warned if the version of the class or package is earlier + than RELEASE DATE. For instance, a user could enter + '\documentclass{smcmemo}[2018/10/12]' or + '\usepackage{foo}[[2017/07/07]]' to require a class or package with + certain features by specifying that it must be released no earlier + than the given date. (Although, in practice package users only rarely include a date, and class users almost never do.) '\ProvidesFile{FILE NAME}[ADDITIONAL INFORMATION]' @@ -1049,11 +1095,10 @@ These are the commands designed to help writers of classes or packages. '\RequirePackage[OPTION LIST]{PACKAGE NAME}[RELEASE DATE]' '\RequirePackageWithOptions{PACKAGE NAME}[RELEASE DATE]' - Load a package, like the document author command '\usepackage'. - *Note Additional packages::. An example is - '\RequirePackage[landscape,margin=1in]{geometry}'. Note that the - LaTeX development team strongly recommends use of these commands - over Plain TeX's '\input'; see the Class Guide. + Load a package, like the command '\usepackage' (*note Additional + packages::). The LaTeX development team strongly recommends use of + these commands over Plain TeX's '\input'; see the Class Guide. An + example is '\RequirePackage[landscape,margin=1in]{geometry}'. The OPTION LIST, if present, is a comma-separated list. The RELEASE DATE, if present, must have the form YYYY/MM/DD. If the @@ -1098,26 +1143,26 @@ File: latex2e.info, Node: Font styles, Next: Font sizes, Up: Fonts The following type style commands are supported by LaTeX. - This first group of commands is typically used with an argument, as -in '\textit{TEXT}'. In the table below, the corresponding command in -parenthesis is the "declaration form", which takes no arguments, as in -'{\itshape TEXT}'. The scope of the declaration form lasts until the -next type style command or the end of the current group. + In the table below the listed commands, the '\text...' commands, is +used with an argument, as in '\textit{TEXT}'. This is the preferred +form. But shown after it, in parenthesis, is the corresponding +declaration form, which is sometimes useful. This form takes no +arguments, as in '{\itshape TEXT}'. The scope of the declaration form +lasts until the next type style command or the end of the current group. +In addition, each has an environment form such as +'\begin{itshape}...\end{itshape}'. These commands, in both the argument form and the declaration form, -are cumulative; e.g., you can say either '\sffamily\bfseries' or -'\bfseries\sffamily' to get bold sans serif. - - You can alternatively use an environment form of the declarations; -for instance, '\begin{ttfamily}...\end{ttfamily}'. +are cumulative; for instance you can get bold sans serif by saying +either of '\sffamily\bfseries' or '\bfseries\sffamily'. - These font-switching commands automatically insert italic corrections -if needed. (*Note \/::, for the details of italic corrections.) -Specifically, they insert the italic correction unless the following -character is in the list '\nocorrlist', which by default consists of a -period and a comma. To suppress the automatic insertion of italic -correction, use '\nocorr' at the start or end of the command argument, -such as '\textit{\nocorr text}' or '\textsc{text \nocorr}'. + One advantage of these commands is that they automatically insert +italic corrections if needed (*note \/::). Specifically, they insert +the italic correction unless the following character is in the list +'\nocorrlist', which by default consists of a period and a comma. To +suppress the automatic insertion of italic correction, use '\nocorr' at +the start or end of the command argument, such as '\textit{\nocorr +text}' or '\textsc{text \nocorr}'. '\textrm (\rmfamily)' Roman. @@ -1156,9 +1201,13 @@ TEXT} END TEXT}' will result in the START TEXT and END TEXT in italics, but MIDDLE TEXT will be in roman. LaTeX also provides the following commands, which unconditionally -switch to the given style, that is, are _not_ cumulative. Also, they -are used differently than the above commands: '{\CMD...}' instead of -'\CMD{...}'. These are two unrelated constructs. +switch to the given style, that is, are _not_ cumulative. They are used +as declarations: '{\CMD...}' instead of '\CMD{...}'. + + (The unconditional commands below are an older version of font +switching. The earlier commands are an improvement in most +circumstances. But sometimes an unconditional font switch is precisely +what you want.) '\bf' Switch to bold face. @@ -1186,12 +1235,6 @@ are used differently than the above commands: '{\CMD...}' instead of The '\em' command is the unconditional version of '\emph'. - (Some people consider the unconditional font-switching commands, such -as '\tt', obsolete and that only the cumulative commands ('\texttt') -should be used. Others think that both sets of commands have their -place and sometimes an unconditional font switch is precisely what you -want; for one example, *note 'description': description.) - The following commands are for use in math mode. They are not cumulative, so '\mathbf{\mathit{SYMBOL}}' does not create a boldface and italic SYMBOL; instead, it will just be in italics. This is because @@ -1246,23 +1289,32 @@ table shows the command name and the corresponding actual font size used (in points) with the '10pt', '11pt', and '12pt' document size options, respectively (*note Document class options::). -Command '10pt' '11pt' '12pt' --------------------------------------------------- -'\tiny' 5 6 6 -'\scriptsize' 7 8 8 -'\footnotesize' 8 9 10 -'\small' 9 10 10.95 -'\normalsize' (default) 10 10.95 12 -'\large' 12 12 14.4 -'\Large' 14.4 14.4 17.28 -'\LARGE' 17.28 17.28 20.74 -'\huge' 20.74 20.74 24.88 -'\Huge' 24.88 24.88 24.88 - - The commands as listed here are "declaration forms". The scope of -the declaration form lasts until the next type style command or the end -of the current group. You can also use the environment form of these -commands; for instance, '\begin{tiny}...\end{tiny}'. +Command '10pt' '11pt' '12pt' +-------------------------------------------------------- +'\tiny' 5 6 6 +'\scriptsize' 7 8 8 +'\footnotesize' 8 9 10 +'\small' 9 10 10.95 +'\normalsize' (default) 10 10.95 12 +'\large' 12 12 14.4 +'\Large' 14.4 14.4 17.28 +'\LARGE' 17.28 17.28 20.74 +'\huge' 20.74 20.74 24.88 +'\Huge' 24.88 24.88 24.88 + + The commands are listed here in declaration forms. You use them by +declaring them, as with this example. + + \begin{quotation} \small + The Tao that can be named is not the eternal Tao. + \end{quotation} + +The scope of the '\small' lasts until the end of the 'quotation' +environment. It would also end at the next type style command or the +end of the current group, so you could enclose it in extra curly braces +'{\small We are here, we are here, we are here!}'. You can instead use +the environment form of these commands; for instance, +'\begin{tiny}...\end{tiny}'. File: latex2e.info, Node: Low-level font commands, Prev: Font sizes, Up: Fonts @@ -1288,7 +1340,7 @@ ones. Select the font family. The web page <http://www.tug.dk/FontCatalogue/> provides one way to browse through many of the fonts easily used with LaTeX. Here are - examples of some common families: + examples of some common families. 'pag' Avant Garde 'fvs' Bitstream Vera Sans @@ -1432,11 +1484,14 @@ File: latex2e.info, Node: \onecolumn, Next: \twocolumn, Up: Layout 5.1 '\onecolumn' ================ -Start a new page and produce single-column output. If the document is -given the class option 'onecolumn' then this is the default behavior -(*note Document class options::). +Synopsis: + + \onecolumn - This command is fragile (*note \protect::). + Start a new page and produce single-column output. If the document +is given the class option 'onecolumn' then this is the default behavior +(*note Document class options::). This command is fragile (*note +\protect::). File: latex2e.info, Node: \twocolumn, Next: \flushbottom, Prev: \onecolumn, Up: Layout @@ -1451,13 +1506,11 @@ Synopses: Start a new page and produce two-column output. If the document is given the class option 'twocolumn' then this is the default (*note -Document class options::). +Document class options::). This command is fragile (*note \protect::). If the optional PRELIM ONE COLUMN TEXT argument is present, it is typeset in one-column mode before the two-column typesetting starts. - This command is fragile (*note \protect::). - These parameters control typesetting in two-column output: '\columnsep' @@ -1504,8 +1557,7 @@ following parameters control float behavior of two-column output. * Increase the value of '\dbltopfraction' to a suitably large number, to avoid going to float pages so soon. - You can redefine it, for instance with - '\renewcommand{\dbltopfraction}{0.9}'. + You can redefine it, as with '\renewcommand{\dbltopfraction}{0.9}'. '\dblfloatpagefraction' For a float page of two-column wide floats, this is the minimum @@ -1670,13 +1722,13 @@ File: latex2e.info, Node: Page layout parameters, Next: Floats, Prev: \ragged '\paperheight' The height of the paper, as distinct from the height of the print - area. It is normally set with a document class option, as in + area. Normally set with a document class option, as in '\documentclass[a4paper]{article}' (*note Document class options::). '\paperwidth' The width of the paper, as distinct from the width of the print - area. It is normally set with a document class option, as in + area. Normally set with a document class option, as in '\documentclass[a4paper]{article}' (*note Document class options::). @@ -1708,6 +1760,7 @@ File: latex2e.info, Node: Page layout parameters, Next: Floats, Prev: \ragged specified width, and revert to their normal values at the end of the 'minipage' or '\parbox'. +'\hsize' This entry is included for completeness: '\hsize' is the TeX primitive parameter used when text is broken into lines. It should not be used in normal LaTeX documents. @@ -1836,7 +1889,7 @@ BETWEEN 0 AND 1}'): floats; default '.7'. Parameters relating to vertical space around floats (change them with -'\setlength{PARAMETER}{LENGTH EXPRESSION}'): +a command of the form '\setlength{PARAMETER}{LENGTH EXPRESSION}'): '\floatsep' Space between floats at the top or bottom of a page; default '12pt @@ -1852,7 +1905,7 @@ BETWEEN 0 AND 1}'): default '20pt plus2pt minus4pt'. Counters relating to the number of floats on a page (change them with -'\setcounter{CTRNAME}{NATURAL NUMBER}'): +a command of the form '\setcounter{CTRNAME}{NATURAL NUMBER}'): 'bottomnumber' Maximum number of floats that can appear at the bottom of a text @@ -1883,64 +1936,533 @@ File: latex2e.info, Node: Sectioning, Next: Cross references, Prev: Layout, 6 Sectioning ************ -Sectioning commands provide the means to structure your text into units: +Structure your text into divisions: parts, chapters, sections, etc. All +sectioning commands have the same form, one of: + + SECTIONING-COMMAND{TITLE} + SECTIONING-COMMAND*{TITLE} + SECTIONING-COMMAND[TOC-TITLE]{TITLE} + +For instance, declare the start of a subsection as with +'\subsection{Motivation}'. + + The table has each SECTIONING-COMMAND in LaTeX. All are available in +all of LaTeX's standard document classes 'book', 'report', +and 'article', except that '\chapter' is not available in 'article'. + +Sectioning unit Command Level +-------------------------------------------------------------------- +Part '\part' -1 ('book', 'report'), 0 + ('article') +Chapter '\chapter' 0 +Section '\section' 1 +Subsection '\subsection' 2 +Subsubsection '\subsubsection' 3 +Paragraph '\paragraph' 4 +Subparagraph '\subparagraph' 5 + + All these commands have a '*'-form that prints TITLE as usual but is +not numbered and does not make an entry in the table of contents. An +example of using this is for an appendix in an 'article' . The input +'\appendix\section{Appendix}' gives the output 'A Appendix' (*note +\appendix::). You can lose the numbering 'A' by instead entering +'\section*{Appendix}' (articles often omit a table of contents and have +simple page headers so the other differences from the '\section' command +may not matter). + + The section title TITLE provides the heading in the main text, but it +may also appear in the table of contents and in the running head or foot +(*note Page styles::). You may not want the same text in these places +as in the main text. All of these commands have an optional argument +TOC-TITLE for these other places. + + The level number in the table above determines which sectional units +are numbered, and which appear in the table of contents. If the +sectioning command's LEVEL is less than or equal to the value of the +counter 'secnumdepth' then the titles for this sectioning command will +be numbered (*note Sectioning/secnumdepth::). And, if LEVEL is less +than or equal to the value of the counter 'tocdepth' then the table of +contents will have an entry for this sectioning unit (*note +Sectioning/tocdepth::). + + LaTeX expects that before you have a '\subsection' you will have a +'\section' and, in a book, that before a '\section' you will have a +'\chapter'. Otherwise you can get a something like a subsection +numbered '3.0.1'. + + Two counters relate to the appearance of sectioning commands. + +'secnumdepth' + Controls which sectioning commands are numbered. Suppress + numbering of sectioning at any depth greater than LEVEL + '\setcounter{secnumdepth}{LEVEL}' (*note \setcounter::). See the + above table for the level numbers. For instance, if the + 'secnumdepth' is 1 in an 'article' then a '\section{Introduction}' + command will produce output like '1 Introduction' while + '\subsection{Discussion}' will produce output like 'Discussion', + without the number. LaTeX's default 'secnumdepth' is 3 in + 'article' class and 2 in the 'book' and 'report' classes. + +'tocdepth' + Controls which sectioning units are listed in the table of + contents. The setting '\setcounter{tocdepth}{LEVEL}' makes the + sectioning units at LEVEL be the smallest ones listed (*note + \setcounter::). See the above table for the level numbers. For + instance, if 'tocdepth' is 1 then the table of contents will list + sections but not subsections. LaTeX's default 'secnumdepth' is 3 + in 'article' class and 2 in the 'book' and 'report' classes. + +* Menu: + +* \part:: Start a part. +* \chapter:: Start a chapter. +* \section:: Start a section. +* \subsection:: Start a subsection. +* \subsubsection & \paragraph & \subparagraph:: Lower divisions. +* \appendix:: Start appendices. +* \frontmatter & \mainmatter & \backmatter:: The three parts of a book. +* \@startsection:: Layout of sectional units. -'\part' -'\chapter' - ('report' and 'book' class only) -'\section' -'\subsection' -'\subsubsection' -'\paragraph' -'\subparagraph' + +File: latex2e.info, Node: \part, Next: \chapter, Up: Sectioning - All sectioning commands take the same general form, e.g., +6.1 '\part' +=========== - \chapter[TOCTITLE]{TITLE} +Synopsis, one of: - In addition to providing the heading TITLE in the main text, the -section title can appear in two other places: + \part{TITLE} + \part*{TITLE} + \part[TOC-TITLE]{TITLE} + + Start a document part. The standard LaTeX classes 'book', 'report', +and 'article', all have this command. + + This produces a document part, in a book. + + \part{VOLUME I \\ + PERSONAL MEMOIRS OF U.\ S.\ GRANT} + \chapter{ANCESTRY--BIRTH--BOYHOOD.} + My family is American, and has been for generations, + in all its branches, direct and collateral. + + In each standard class the '\part' command outputs a part number such +as 'Part I', alone on its line, in boldface, and in large type. Then +LaTeX outputs TITLE, also alone on its line, in bold and in even larger +type. In class 'book', the LaTeX default puts each part alone on its +own page. If the book is two-sided then LaTeX will skip a page if +needed to have the new part on an odd-numbered page. In 'report' it is +again alone on a page, but LaTeX won't force it onto an odd-numbered +page. In an 'article' LaTeX does not put it on a fresh page, but +instead outputs the part number and part title onto the main document +page. - 1. The table of contents. - 2. The running head at the top of the page. + The '*' form shows TITLE but it does not show the part number, does +not increment the 'part' counter, and produces no table of contents +entry. - You may not want the same text in these places as in the main text. -To handle this, the sectioning commands have an optional argument -TOCTITLE that, when given, specifies the text for these other places. + The optional argument TOC-TITLE will appear as the part title in the +table of contents (*note Table of contents etc.::) and in running +headers (*note Page styles::). If it is not present then TITLE will be +there. This example puts a line break in TITLE but leaves out the break +in the table of contents. - Also, all sectioning commands have '*'-forms that print TITLE as -usual, but do not include a number and do not make an entry in the table -of contents. For instance: + \part[Up from the bottom; my life]{Up from the bottom\\ my life} - \section*{Preamble} + For determining which sectional units are numbered and which appear +in the table of contents, the level number of a part is -1 (*note +Sectioning/secnumdepth:: and *note Sectioning/tocdepth::). - The '\appendix' command changes the way following sectional units are -numbered. The '\appendix' command itself generates no text and does not -affect the numbering of parts. The normal use of this command is -something like + In the class 'article', if a paragraph immediately follows the part +title then it is not indented. To get an indent you can use the package +'indentfirst'. + + One package to change the behavior of '\part' is 'titlesec'. See its +documentation on CTAN. + + +File: latex2e.info, Node: \chapter, Next: \section, Prev: \part, Up: Sectioning + +6.2 '\chapter' +============== + +Synopsis, one of: + + \chapter{TITLE} + \chapter*{TITLE} + \chapter[TOC-TITLE]{TITLE} + + Start a chapter. The standard LaTeX classes 'book' and 'report' have +this command but 'article' does not. + + This produces a chapter. + + \chapter{Loomings} + Call me Ishmael. + Some years ago---never mind how long precisely---having little or no + money in my purse, and nothing particular to interest me on shore, I + thought I would sail about a little and see the watery part of + the world. + + The LaTeX default starts each chapter on a fresh page, an +odd-numbered page if the document is two-sided. It produces a chapter +number such as 'Chapter 1' in large boldface type (the size is '\huge'). +It then puts TITLE on a fresh line, in boldface type that is still +larger (size '\Huge'). It also increments the 'chapter' counter, adds +an entry to the table of contents (*note Table of contents etc.::), and +sets the running header information (*note Page styles::). + + The '*' form shows TITLE on a fresh line, in boldface. But it does +not show the chapter number, does not increment the 'chapter' counter, +produces no table of contents entry, and does not affect the running +header. (If you use the page style 'headings' in a two-sided document +then the header will be from the prior chapter.) This example +illustrates. + + \chapter*{Preamble} + + The optional argument TOC-TITLE will appear as the chapter title in +the table of contents (*note Table of contents etc.::) and in running +headers (*note Page styles::). If it is not present then TITLE will be +there. This shows the full name in the chapter title, + + \chapter[Weyl]{Hermann Klaus Hugo (Peter) Weyl (1885--1955)} + +but only 'Weyl' on the contents page. This puts a line break in the +title but that doesn't work well with running headers so it omits the +break in the contents + + \chapter[Given it all\\ my story]{Given it all\\ my story} + + For determining which sectional units are numbered and which appear +in the table of contents, the level number of a chapter is 0 (*note +Sectioning/secnumdepth:: and *note Sectioning/tocdepth::). + + The paragraph that follows the chapter title is not indented, as is a +standard typographical practice. To get an indent use the package +'indentfirst'. + + You can change what is shown for the chapter number. To change it to +something like 'Lecture 1', put in the preamble either +'\renewcommand{\chaptername}{Lecture}' or this (*note \makeatletter & +\makeatother::). + + \makeatletter + \renewcommand{\@chapapp}{Lecture} + \makeatother + +To make this change because of the primary language for the document, +see the package 'babel'. + + In a two-sided document LaTeX puts a chapter on odd-numbered page, if +necessary leaving an even-numbered page that is blank except for any +running headers. To make that page completely blank, see *note +\clearpage & \cleardoublepage::. + + To change the behavior of the '\chapter' command, you can copy its +definition from the LaTeX format file and make adjustments. But there +are also many packages on CTAN that address this. One is 'titlesec'. +See its documentation, but the example below gives a sense of what it +can do. + + \usepackage{titlesec} % in preamble + \titleformat{\chapter} + {\Huge\bfseries} % format of title + {} % label, such as 1.2 for a subsection + {0pt} % length of separation between label and title + {} % before-code hook + +This omits the chapter number 'Chapter 1' from the page but unlike +'\chapter*' it keeps the chapter in the table of contents and the +running headers. + + +File: latex2e.info, Node: \section, Next: \subsection, Prev: \chapter, Up: Sectioning + +6.3 '\section' +============== + +Synopsis, one of: + + \section{TITLE} + \section*{TITLE} + \section[TOC-TITLE]{TITLE} + + Start a section. The standard LaTeX classes 'article', 'book', and +'report' all have this command. + + This produces a section. + + In this Part we tend to be more interested in the function, + in the input-output behavior, + than in the details of implementing that behavior. + + \section{Turing machines} + Despite this desire to downplay implementation, + we follow the approach of A~Turing that the + first step toward defining the set of computable functions + is to reflect on the details of what mechanisms can do. + + For the standard LaTeX classes 'book' and 'report' the default output +is like '1.2 TITLE' (for chapter 1, section 2), alone on its line and +flush left, in boldface and a larger type (the type size is '\Large'). +The same holds in 'article' except that there are no chapters in that +class so it looks like '2 TITLE'. + + The '*' form shows TITLE. But it does not show the section number, +does not increment the 'section' counter, produces no table of contents +entry, and does not affect the running header. (If you use the page +style 'headings' in a two-sided document then the header will be from +the prior section.) + + The optional argument TOC-TITLE will appear as the section title in +the table of contents (*note Table of contents etc.::) and in running +headers (*note Page styles::). If it is not present then TITLE will be +there. This shows the full name in the title of the section, + + \section[Elizabeth~II]{Elizabeth the Second, + by the Grace of God of the United Kingdom, + Canada and Her other Realms and Territories Queen, + Head of the Commonwealth, Defender of the Faith.} + +but only 'Elizabeth II' on the contents page and in the headers. This +has a line break in TITLE but that does not work with headers so it is +omitted from the contents and headers. + + \section[Truth is, I cheated; my life story]{Truth is, + I cheated\\my life story} + + For determining which sectional units are numbered and which appear +in the table of contents, the level number of a section is 1 (*note +Sectioning/secnumdepth:: and *note Sectioning/tocdepth::). + + The paragraph that follows the section title is not indented, as is a +standard typographical practice. One way to get an indent is to use the +package 'indentfirst'. + + In general, to change the behavior of the '\section' command, there +are a number of options. One is the '\@startsection' command (*note +\@startsection::). There are also many packages on CTAN that address +this, including 'titlesec'. See the documentation but the example below +gives a sense of what they can do. + + \usepackage{titlesec} % in preamble + \titleformat{\section} + {\normalfont\Large\bfseries} % format of title + {\makebox[1pc][r]{\thesection\hspace{1pc}}} % label + {0pt} % length of separation between label and title + {} % before-code hook + \titlespacing*{\section} + {-1pc}{18pt}{10pt}[10pc] + +That puts the section number in the margin. + + +File: latex2e.info, Node: \subsection, Next: \subsubsection & \paragraph & \subparagraph, Prev: \section, Up: Sectioning + +6.4 '\subsection' +================= + +Synopsis, one of: + + \subsection{TITLE} + \subsection*{TITLE} + \subsection[TOC-TITLE]{TITLE} + + Start a subsection. The standard LaTeX classes 'article', 'book', +and 'report' all have this command. + + This produces a subsection. + + We will show that there are more functions than Turing machines and that + therefore some functions have no associated machine. + + \subsection{Cardinality} We will begin with two paradoxes that + dramatize the challenge to our intuition posed by comparing the sizes of + infinite sets. + + For the standard LaTeX classes 'book' and 'report' the default output +is like '1.2.3 TITLE' (for chapter 1, section 2, subsection 3), alone on +its line and flush left, in boldface and a larger type (the type size is +'\large'). The same holds in 'article' except that there are no +chapters in that class so it looks like '2.3 TITLE'. + + The '*' form shows TITLE. But it does not show the section number, +does not increment the 'section' counter, and produces no table of +contents entry. + + The optional argument TOC-TITLE will appear as the section title in +the table of contents (*note Table of contents etc.::). If it is not +present then TITLE will be there. This shows the full name in the title +of the section, + + \subsection[$\alpha,\beta,\gamma$ paper]{\textit{The Origin of + Chemical Elements} by R.A.~Alpher, H.~Bethe, and G.~Gamow} + +but only 'U+03B1,U+03B2,U+03B3 paper' on the contents page. + + For determining which sectional units are numbered and which appear +in the table of contents, the level number of a subsection is 2 (*note +Sectioning/secnumdepth:: and *note Sectioning/tocdepth::). + + The paragraph that follows the subsection title is not indented, as +is a standard typographical practice. One way to get an indent is to +use the package 'indentfirst'. + + There are a number of ways to change the behavior of the +'\subsection' command. One is the '\@startsection' command (*note +\@startsection::). There are also many packages on CTAN that address +this, including 'titlesec'. See the documentation but the example below +gives a sense of what they can do. + + \usepackage{titlesec} % in preamble + \titleformat{\subsection}[runin] + {\normalfont\normalsize\bfseries} % format of the title + {\thesubsection} % label + {0.6em} % space between label and title + {} % before-code hook + +That puts the subsection number and TITLE in the first line of text. + + +File: latex2e.info, Node: \subsubsection & \paragraph & \subparagraph, Next: \appendix, Prev: \subsection, Up: Sectioning + +6.5 '\subsubsection', '\paragraph', '\subparagraph' +=================================================== + +Synopsis, one of: + + \subsubsection{TITLE} + \subsubsection*{TITLE} + \subsubsection[TOC-TITLE]{TITLE} + +or one of: + + \paragraph{TITLE} + \paragraph*{TITLE} + \paragraph[TOC-TITLE]{TITLE} + +or one of: + + \subparagraph{TITLE} + \subparagraph*{TITLE} + \subparagraph[TOC-TITLE]{TITLE} + + Start a subsubsection, paragraph, or subparagraph. The standard +LaTeX classes 'article', 'book', and 'report' all have these commands, +although they are not commonly used. + + This produces a subsubsection. + + \subsubsection{Piston ring compressors: structural performance} + Provide exterior/interior wall cladding assemblies + capable of withstanding the effects of load and stresses from + consumer-grade gasoline engine piston rings. + + The default output of each of the three does not change over the +standard LaTeX classes 'article', 'book', and 'report'. For +'\subsubsection' the TITLE is alone on its line, in boldface and normal +size type. For '\paragraph' the TITLE is inline with the text, not +indented, in boldface and normal size type. For '\subparagraph' the +TITLE is inline with the text, with a paragraph indent, in boldface and +normal size type (Because an 'article' has no chapters its +subsubsections are numbered and so it looks like '1.2.3 TITLE', for +section 1, subsection 2, and subsubsection 3. The other two divisions +are not numbered.) + + The '*' form shows TITLE. But it does not increment the associated +counter and produces no table of contents entry (and does not show the +number for '\subsubsection'). + + The optional argument TOC-TITLE will appear as the division title in +the table of contents (*note Table of contents etc.::). If it is not +present then TITLE will be there. + + For determining which sectional units are numbered and which appear +in the table of contents, the level number of a subsubsection is 3, of a +paragraph is 4, and of a subparagraph is 5 (*note +Sectioning/secnumdepth:: and *note Sectioning/tocdepth::). + + The paragraph that follows the subsubsection title is not indented, +as is a standard typographical practice. One way to get an indent is to +use the package 'indentfirst'. + + There are a number of ways to change the behavior of the these +commands. One is the '\@startsection' command (*note \@startsection::). +There are also many packages on CTAN that address this, including +'titlesec'. See the documentation on CTAN. + + +File: latex2e.info, Node: \appendix, Next: \frontmatter & \mainmatter & \backmatter, Prev: \subsubsection & \paragraph & \subparagraph, Up: Sectioning + +6.6 '\appendix' +=============== + +Synopsis: - \chapter{A Chapter} - ... \appendix - \chapter{The First Appendix} - The 'secnumdepth' counter controls printing of section numbers. The -setting + This does not directly produce any output. But in a book or report +it declares that subsequent '\chapter' commands start an appendix. In +an article it does the same, for '\section' commands. It also resets +the 'chapter' and 'section' counters to 0 in a book or report, and in an +article resets the 'section' and 'subsection' counters. + + In this book + + \chapter{One} ... + \chapter{Two} ... + ... + \appendix + \chapter{Three} ... + \chapter{Four} ... - \setcounter{secnumdepth}{LEVEL} +the first two will generate output numbered 'Chapter 1' and 'Chapter 2'. +After the '\appendix' the numbering will be 'Appendix A' and 'Appendix +B'. *Note Larger book template:: for another example. -suppresses heading numbers at any depth > LEVEL, where 'chapter' is -level zero. The default 'secnumdepth' is 3 in LaTeX's 'article' class -and 2 in the 'book' and 'report' classes. (*Note \setcounter::.) + The 'appendix' package adds the command '\appendixpage' to put a +separate 'Appendices' in the document body before the first appendix, +and the command '\addappheadtotoc' to do the same in the table of +contents. You can reset the name 'Appendix' with a command like +'\renewcommand{\appendixname}{Specification}', as well as a number of +other features. See the documentation on CTAN. -* Menu: + +File: latex2e.info, Node: \frontmatter & \mainmatter & \backmatter, Next: \@startsection, Prev: \appendix, Up: Sectioning + +6.7 '\frontmatter', '\mainmatter', '\backmatter' +================================================ + +Synopsis, one of: -* \@startsection:: Redefine layout of start of sections, subsections, etc. + \frontmatter + \mainmatter + \backmatter + + Format a 'book' class document differently according to which part of +the document is being produced. All three commands are optional. + + Traditionally, a book's front matter contains such things as the +title page, an abstract, a table of contents, a preface, a list of +notations, a list of figures, and a list of tables. (Some of these +front matter pages, such as the title page, are traditionally not +numbered.) The back matter may contain such things as a glossary, +notes, a bibliography, and an index. + + The '\frontmatter' declaration makes the pages numbered in lowercase +roman, and makes chapters not numbered, although each chapter's title +appears in the table of contents; if you use other sectioning commands +here, use the '*'-version (*note Sectioning::). The '\mainmatter' +changes the behavior back to the expected version, and resets the page +number. The '\backmatter' leaves the page numbering alone but switches +the chapters back to being not numbered. *Note Larger book template:: +for an example using the three. -File: latex2e.info, Node: \@startsection, Up: Sectioning +File: latex2e.info, Node: \@startsection, Prev: \frontmatter & \mainmatter & \backmatter, Up: Sectioning -6.1 '\@startsection' +6.8 '\@startsection' ==================== Synopsis: @@ -1958,9 +2480,23 @@ standard LaTeX 'book' and 'report' classes the commands '\chapter' and may want to use the '\secdef' command. Technically, '\@startsection' has the form - \@startsection{NAME}{LEVEL}{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE}*[TOCTITLE]{TITLE} -(the star '*' is optional), so that issuing - \renewcommand{\section}{\@startsection{NAME}{LEVEL}{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE}} + + \@startsection{NAME} + {LEVEL} + {INDENT} + {BEFORESKIP} + {AFTERSKIP} + {STYLE}*[TOCTITLE]{TITLE} + +so that issuing + + \renewcommand{\section}{\@startsection{NAME} + {LEVEL} + {INDENT} + {BEFORESKIP} + {AFTERSKIP} + {STYLE}} + redefines '\section' to have the form '\section*[TOCTITLE]{TITLE}' (here too, the star '*' is optional). *Note Sectioning::. This implies that when you write a command like '\renewcommand{section}{...}', the @@ -1970,33 +2506,30 @@ examples below. NAME Name of the counter used to number the sectioning header. This counter must be defined separately. Most commonly this is either - 'section', 'subsection', or 'paragraph'. Although in those three - cases the counter name is the same as the sectioning command - itself, using the same name is not required. + 'section', 'subsection', or 'paragraph'. Although in those cases + the counter name is the same as the sectioning command itself, you + don't have to use the same name. Then '\the'NAME displays the title number and '\'NAME'mark' is for the page headers. See the third example below. LEVEL - An integer giving the depth of the sectioning command: 0 for - 'chapter' (only applies to the standard 'book' and 'report' - classes), 1 for 'section', 2 for 'subsection', 3 for - 'subsubsection', 4 for 'paragraph', and 5 for 'subparagraph'. In - the 'book' and 'report' classes 'part' has level -1, while in the - 'article' class 'part' has level 0. - - If LEVEL is less than or equal to the value of 'secnumdepth' then - the titles for this sectioning command will be numbered. For - instance, in an 'article', if 'secnumdepth' is 1 then a - '\section{Introduction}' command will produce output like "1 - Introduction" while '\subsection{Discussion}' will produce output - like "Discussion", without the number prefix. *Note - Sectioning/secnumdepth::. - - If LEVEL is less than or equal to the value of TOCDEPTH then the - table of contents will have an entry for this sectioning unit. For - instance, in an 'article', if TOCDEPTH is 1 then the table of - contents will list sections but not subsections. + An integer giving the depth of the sectioning command. *Note + Sectioning:: for the list of standard level numbers. + + If LEVEL is less than or equal to the value of the counter + 'secnumdepth' then titles for this sectioning command will be + numbered (*note Sectioning/secnumdepth::). For instance, if + 'secnumdepth' is 1 in an 'article' then the command + '\section{Introduction}' will produce output like "1 Introduction" + while '\subsection{Discussion}' will produce output like + "Discussion", without the number prefix. + + If LEVEL is less than or equal to the value of the counter TOCDEPTH + then the table of contents will have an entry for this sectioning + unit (*note Sectioning/tocdepth::). For instance, in an 'article', + if TOCDEPTH is 1 then the table of contents will list sections but + not subsections. INDENT A length giving the indentation of all of the title lines with @@ -2059,31 +2592,29 @@ STYLE Controls the styling of the title. See the examples below. Typical commands to use here are '\centering', '\raggedright', '\normalfont', '\hrule', or '\newpage'. The last command in STYLE - may be one such as '\MakeUppercase' or '\fbox' that takes one - argument. The section title will be supplied as the argument to - this command. For instance, setting STYLE to - '\bfseries\MakeUppercase' would produce titles that are bold and - upper case. + may be one that takes one argument, such as '\MakeUppercase' or + '\fbox' that takes one argument. The section title will be + supplied as the argument to this command. For instance, setting + STYLE to '\bfseries\MakeUppercase' would produce titles that are + bold and uppercase. These are LaTeX's defaults for the first three sectioning units that are defined with '\@startsection', for the 'article', 'book', and -'report' classes. - - 'section' 'subsection' 'subsubsection' ------------------------------------------------------------------------------ -*note NAME: \@startsection/name.sectionsubsection subsubsection -*note LEVEL: \@startsection/level.12 3 -*note INDENT: \@startsection/indent.'0pt''0pt' '0pt' -*note BEFORESKIP: \@startsection/beforeskip.'-3.5ex plus -1ex'-3.25ex plus -1ex'-3.25ex plus -1ex - minus -0.2ex' minus -0.2ex' minus -0.2ex' -*note AFTERSKIP: \@startsection/afterskip.'2.3ex plus 0.2ex''1.5ex plus 0.2ex''1.5ex plus 0.2ex' -*note STYLE: \@startsection/style.'\normalfont\Large\bfseries''\normalfont\large\bfseries''\normalfont\normalsize\bfseries' +'report' classes. For section, the LEVEL is 1, the INDENT is 0pt, the +BEFORESKIP is '-3.5ex plus -1ex minus -0.2ex', the AFTERSKIP is '2.3ex +plus 0.2ex', and the STYLE is '\normalfont\Large\bfseries'. For +subsection, the LEVEL is 2, the INDENT is 0pt, the BEFORESKIP is +'-3.25ex plus -1ex minus -0.2ex', the AFTERSKIP is '1.5ex plus 0.2ex', +and the STYLE is '\normalfont\large\bfseries'. For subsubsection, the +LEVEL is 3, the INDENT is 0pt, the BEFORESKIP is '-3.25ex plus -1ex +minus -0.2ex', the AFTERSKIP is '1.5ex plus 0.2ex', and the STYLE is +'\normalfont\normalsize\bfseries'. Here are examples. They go either in a package or class file or in the preamble of a LaTeX document. If you put them in the preamble they must go between a '\makeatletter' command and a '\makeatother'. (Probably the error message 'You can't use `\spacefactor' in vertical -mode.' means that you forgot this.) *Note \makeatletter and +mode.' means that you forgot this.) *Note \makeatletter & \makeatother::. This will put section titles in large boldface type, centered. It @@ -2136,33 +2667,42 @@ File: latex2e.info, Node: Cross references, Next: Environments, Prev: Section 7 Cross references ****************** -One reason for numbering things such as figures and equations is to -refer the reader to them, as in "See Figure~3 for more details." - - Including the figure number in the source is poor practice since if -that number changes as the document evolves then you must remember to -update this reference by hand. Instead, LaTeX has you write a "label" -like '\label{eq:GreensThm}' and refer to it with 'See -equation~\ref{eq:GreensThm}'. - - LaTeX writes the information from the labels to a file with the same -name as the file containing the '\label{...}' but with an '.aux' -extension. (The information has the format -'\newlabel{LABEL}{{CURRENTLABEL}{PAGENUMBER}}' where CURRENTLABEL is the -current value of the macro '\@currentlabel' that is usually updated -whenever you call '\refstepcounter{COUNTER}'.) - - The most common side effect of the prior paragraph happens when your -document has a "forward reference", a '\ref{KEY}' that appears earlier -than the associated '\label{KEY}'; see the example in the -'\pageref{...}' description. LaTeX gets the information for references -from the '.aux' file. If this is the first time you are compiling the -document then you will get a message 'LaTeX Warning: Label(s) may have -changed. Rerun to get cross references right.' and in the output the -reference will appear as two question marks '??', in boldface. Or, if -you change some things so the references change then you get the same -warning and the output contains the old reference information. The -solution in either case is just to compile the document a second time. +We often want something like 'See Theorem~31'. But by-hand typing the +31 is poor practice. Instead you should write a "label" such as +'\label{eq:GreensThm}' and then "reference" it, as with 'See +equation~\ref{eq:GreensThm}'. LaTeX will automatically work out the +number, put it into the output, and will change that number later if +needed. + + We will see this with Theorem~\ref{th:GreensThm}. % forward reference + ... + \begin{theorem} \label{th:GreensThm} + ... + \end{theorem} + ... + See Theorem~\ref{th:GreensThm} on page~\pageref{th:GreensThm}. + + LaTeX tracks cross reference information in a file having the +extension '.aux' and with the same base name as the file containing the +'\label'. So if '\label' is in 'calculus.tex' then the information is +in 'calculus.aux'. LaTeX puts the information in that file every time +it runs across a '\label'. + + The behavior described in the prior paragraph results in a quirk that +happens when your document has a "forward reference", a '\ref' that +appears before the associated '\label'. If this is the first time that +you are compiling the document then you will get 'LaTeX Warning: +Label(s) may have changed. Rerun to get cross references right' and in +the output the forward reference will appear as two question marks '??', +in boldface. A similar thing happens if you change some things so the +references changes; you get the same warning and the output contains the +old reference information. In both cases, resolve this by compiling the +document a second time. + + The 'cleveref' package enhances LaTeX's cross referencing features. +You can arrange that if you enter +'\begin{thm}\label{th:Nerode}...\end{thm}' then '\cref{th:Nerode}' will +output 'Theorem 3.21', without you having to enter the "Theorem." * Menu: @@ -2191,28 +2731,35 @@ punctuation characters. Upper and lowercase letters are distinguished, as usual. A common convention is to use labels consisting of a prefix and a -suffix separated by a colon or period. This helps to avoid accidentally -creating two labels with the same name, and makes your source more -readable. Some commonly-used prefixes: +suffix separated by a colon or period. Thus, '\label{fig:Post}' is a +label for a figure with a portrait of Emil Post. This helps to avoid +accidentally creating two labels with the same name, and makes your +source more readable. Some commonly-used prefixes: 'ch' for chapters + 'sec' +'subsec' for lower-level sectioning commands + 'fig' for figures + 'tab' for tables + 'eq' for equations - Thus, '\label{fig:Euler}' is a label for a figure with a portrait of -the great man. + In the auxiliary file the reference information is kept as the text +of a command of the form '\newlabel{LABEL}{{CURRENTLABEL}{PAGENUMBER}}'. +Here CURRENTLABEL is the current value of the macro '\@currentlabel' +that is usually updated whenever you call '\refstepcounter{COUNTER}'. - In this example below the key 'sec:test' will get the number of the -current section and the key 'fig:test' will get the number of the -figure. (Incidentally, put labels after captions in figures and -tables.) + Below, the key 'sec:test' will get the number of the current section +and the key 'fig:test' will get the number of the figure. +(Incidentally, put labels after captions in figures and tables.) \section{section name} \label{sec:test} @@ -2227,8 +2774,8 @@ tables.) File: latex2e.info, Node: \pageref, Next: \ref, Prev: \label, Up: Cross references -7.2 '\pageref{KEY}' -=================== +7.2 '\pageref' +============== Synopsis: @@ -2237,10 +2784,13 @@ Synopsis: Produce the page number of the place in the text where the corresponding '\label'{KEY} command appears. - In this example the '\label{eq:main}' is used both for the formula -number and for the page number. (Note that the two references are -forward references, so this document would need to be compiled twice to -resolve those.) + If there is no '\label{KEY}' then you get something like 'LaTeX +Warning: Reference `th:GrensThm' on page 1 undefined on input line 11.' + + Below, the '\label{eq:main}' is used both for the formula number and +for the page number. (Note that the two references are forward +references so this document would need to be compiled twice to resolve +those.) The main result is formula~\ref{eq:main} on page~\pageref{eq:main}. ... @@ -2251,8 +2801,8 @@ resolve those.) File: latex2e.info, Node: \ref, Prev: \pageref, Up: Cross references -7.3 '\ref{KEY}' -=============== +7.3 '\ref' +========== Synopsis: @@ -2263,8 +2813,12 @@ figure, ..., of the corresponding '\label' command (*note \label::). It does not produce any text, such as the word 'Section' or 'Figure', just the bare number itself. - In this example, the '\ref{popular}' produces '2'. Note that it is a -forward reference since it comes before '\label{popular}'. + If there is no '\label{KEY}' then you get something like 'LaTeX +Warning: Reference `th:GrensThm' on page 1 undefined on input line 11.' + + In this example the '\ref{popular}' produces '2'. Note that it is a +forward reference since it comes before '\label{popular}' so this +document would have to be compiled twice. The most widely-used format is item number~\ref{popular}. \begin{enumerate} @@ -2273,6 +2827,9 @@ forward reference since it comes before '\label{popular}'. \item Con\TeX t \end{enumerate} + The 'cleveref' package includes text such as 'Theorem' in the +reference. See the documentation on CTAN. + File: latex2e.info, Node: Environments, Next: Line breaking, Prev: Cross references, Up: Top @@ -2314,11 +2871,11 @@ an error like: '! LaTeX Error: \begin{table*} on input line 5 ended by * math:: In-line math. * minipage:: Miniature page. * picture:: Picture with text, arrows, lines and circles. -* quotation and quote:: Include a quotation. +* quotation & quote:: Include a quotation. * tabbing:: Align text arbitrarily. * table:: Floating tables. * tabular:: Align text in columns. -* thebibliography:: Bibliography or reference list. +* thebibliography:: Bibliography or reference list. * theorem:: Theorems, lemmas, etc. * titlepage:: For hand crafted title pages. * verbatim:: Simulating typed input. @@ -2386,7 +2943,7 @@ Synopsis: ... \end{array} - or +or: \begin{array}[POS]{COLS} COLUMN 1 ENTRY &COLUMN 2 ENTRY ... &COLUMN N ENTRY \\ @@ -2395,22 +2952,38 @@ Synopsis: Produce a mathematical array. This environment can only be used in math mode, and normally appears within a displayed mathematics -environment such as 'equation' (*note equation::). Column entries are -separated by an ampersand ('&'). Rows are terminated with -double-backslashes (*note \\::). +environment such as 'equation' (*note equation::). Inside of each row +the column entries are separated by an ampersand, ('&'). Rows are +terminated with double-backslashes (*note \\::). + + This example shows a three by three array. + + \begin{equation*} + \chi(x) = + \left| % vertical bar fence + \begin{array}{ccc} + x-a &-b &-c \\ + -d &x-e &-f \\ + -g &-h &x-i + \end{array} + \right| + \end{equation*} The required argument COLS describes the number of columns, their -alignment, and the formatting of the intercolumn regions. See *note -tabular:: for the complete description of COLS, and of the other common +alignment, and the formatting of the intercolumn regions. For instance, +'\begin{array}{rcl}...\end{array}' gives three columns: the first flush +right, the second centered, and the third flush left. See *note +tabular:: for the complete description of COLS and of the other common features of the two environments, including the optional POS argument. There are two ways that 'array' diverges from 'tabular'. The first -is that 'array' entries are typeset in math mode, in textstyle (except -if the COLS definition specifies the column with 'p{...}', which causes -the entry to be typeset in text mode). The second is that, instead of -'tabular''s parameter '\tabcolsep', LaTeX's intercolumn space in an -'array' is governed by '\arraycolsep', which gives half the width -between columns. The default for this is '5pt'. +is that 'array' entries are typeset in math mode, in textstyle (*note +Modes::) except if the COLS definition specifies the column with +'p{...}', which causes the entry to be typeset in text mode. The second +is that, instead of 'tabular''s parameter '\tabcolsep', LaTeX's +intercolumn space in an 'array' is governed by '\arraycolsep', which +gives half the width between columns. The default for this is '5pt' so +that between two columns comes 10pt of space. To obtain arrays with braces the standard is to use the 'amsmath' package. It comes with environments 'pmatrix' for an array surrounded @@ -2420,24 +2993,22 @@ braces '{...}', 'vmatrix' for an array surrounded by vertical bars '|...|', and 'Vmatrix' for an array surrounded by double vertical bars '||...||', along with a number of other array constructs. - Here is an example of an array: - - \begin{equation} - \begin{array}{cr} - \sqrt{y} &12.3 \\ - x^2 &3.4 - \end{array} - \end{equation} + The next example uses the 'amsmath' package. - The next example works if '\usepackage{amsmath}' is in the preamble: + \usepackage{amsmath} % in preamble \begin{equation} - \begin{vmatrix}{cc} + \begin{vmatrix}{cc} % array with vert lines a &b \\ c &d \end{vmatrix}=ad-bc \end{equation} + There are many packages concerning arrays. The 'array' package has +many useful extensions, including more column types. The 'dcolumn' +package adds a column type to center on a decimal point. For both see +the documentation on CTAN. + File: latex2e.info, Node: center, Next: description, Prev: array, Up: Environments @@ -2447,15 +3018,16 @@ File: latex2e.info, Node: center, Next: description, Prev: array, Up: Enviro Synopsis: \begin{center} - ... text ... + LINE1 \\ + LINE2 \\ + ... \end{center} Create a new paragraph consisting of a sequence of lines that are -centered within the left and right margins on the current page. Use -double-backslash to get a line break at a particular spot (*note \\::). -If some text environment body is too long to fit on a line, LaTeX will -insert line breaks that avoid hyphenation and avoid stretching or -shrinking any interword space. +centered within the left and right margins. Use double-backslash, '\\', +to get a line break (*note \\::). If some text is too long to fit on a +line then LaTeX will insert line breaks that avoid hyphenation and avoid +stretching or shrinking any interword space. This environment inserts space above and below the text body. See *note \centering:: to avoid such space, for example inside a 'figure' @@ -2482,7 +3054,11 @@ ending. I grew up in that belief. --Richard Burton \end{center} - A double backslash after the final line is optional. + A double backslash after the final line is optional. If present it +doesn't add any vertical space. + + In a two-column document the text is centered in a column, not in the +entire page. * Menu: @@ -2494,12 +3070,33 @@ File: latex2e.info, Node: \centering, Up: center 8.3.1 '\centering' ------------------ -A declaration that causes material in its scope to be centered. It is -most often used inside an environment such as 'figure', or in a -'parbox'. +Synopsis: + + {\centering ... } + +or + + \begin{group} + \centering ... + \end{group} + + Center the material in its scope. It is most often used inside an +environment such as 'figure', or in a 'parbox'. + + This example's '\centering' declaration causes the graphic to be +horizontally centered. + + \begin{figure} + \centering + \includegraphics[width=0.6\textwidth]{ctan_lion.png} + \caption{CTAN Lion} \label{fig:CTANLion} + \end{figure} + +The scope of this '\centering' ends with the '\end{figure}'. Unlike the 'center' environment, the '\centering' command does not -add vertical space above and below the text. +add vertical space above and below the text. That's its advantage in +the above example; there is not an excess of space. It also does not start a new paragraph; it simply changes how LaTeX formats paragraph units. If 'ww {\centering xx \\ yy} zz' is surrounded @@ -2510,18 +3107,7 @@ blank line or the '\end' command of an environment such as 'figure' or 'table' that ends the paragraph unit. Thus, if '{\centering xx \\ yy\par} zz' is surrounded by blank lines then it makes a new paragraph with two centered lines 'xx' and 'yy', followed by a new paragraph with -'zz' that is formatted as usual. See also the following example. - - This example's '\centering' causes the graphic to be horizontally -centered. - - \begin{figure} - \centering - \includegraphics[width=0.6\textwidth]{ctan_lion.png} - \caption{CTAN Lion} \label{fig:CTANLion} - \end{figure} - - The scope of the '\centering' ends with the '\end{figure}'. +'zz' that is formatted as usual. File: latex2e.info, Node: description, Next: displaymath, Prev: center, Up: Environments @@ -2532,26 +3118,28 @@ File: latex2e.info, Node: description, Next: displaymath, Prev: center, Up: Synopsis: \begin{description} - \item[LABEL OF FIRST ITEM] text of first item - \item[LABEL OF SECOND ITEM] text of second item - ... + \item[LABEL OF FIRST ITEM] TEXT OF FIRST ITEM + \item[LABEL OF SECOND ITEM] TEXT OF SECOND ITEM + ... \end{description} - Environment to make a labeled list of items. Each item's LABEL is -typeset in bold, and is flush left so that long labels continue into the + Environment to make a list of labeled items. Each item's LABEL is +typeset in bold and is flush left, so that long labels continue into the first line of the item text. There must be at least one item; having none causes the LaTeX error 'Something's wrong--perhaps a missing \item'. This example shows the environment used for a sequence of -definitions. The labels 'lama' and 'llama' come out in boldface with -their left edges aligned on the left margin. +definitions. \begin{definition} \item[lama] A priest. \item[llama] A beast. \end{definition} +The labels 'lama' and 'llama' are output in boldface, with the left edge +on the left margin. + Start list items with the '\item' command (*note \item::). Use the optional labels, as in '\item[Main point]', because there is no sensible default. Following the '\item' is optional text, which may contain @@ -2561,9 +3149,10 @@ multiple paragraphs. font change given in argument style (see *note Font styles::) then it will come out bold. For instance, if the label text calls for typewriter with '\item[\texttt{label text}]' then it will appear in bold -typewriter, if that is available. The simplest way to get non-bold -typewriter is to use declarative style: '\item[{\tt label text}]'. -Similarly, get the standard roman font with '\item[{\rm label text}]'. +typewriter, if that is available. The simplest way around this, in this +example to get non-bold typewriter, is to use declarative style: +'\item[{\tt label text}]'. Similarly, get the standard roman font with +'\item[{\rm label text}]'. For other major LaTeX labelled list environments, see *note itemize:: and *note enumerate::. Unlike those environments, nesting 'description' @@ -2588,7 +3177,7 @@ File: latex2e.info, Node: displaymath, Next: document, Prev: description, Up Synopsis: \begin{displaymath} - MATH TEXT + MATHEMATICAL TEXT \end{displaymath} Environment to typeset the math text on its own line, in display @@ -2618,11 +3207,13 @@ vertical spacing, and because the 'displaymath' environment honors the 'fleqn' option.) The output from this example is centered and alone on its line. + \begin{displaymath} \int_1^2 x^2\,dx=7/3 \end{displaymath} - Also, the integral sign is larger than the inline version '\( -\int_1^2 x^2\,dx=7/3 \)' produces. + +Also, the integral sign is larger than the inline version '\( \int_1^2 +x^2\,dx=7/3 \)' produces. File: latex2e.info, Node: document, Next: enumerate, Prev: displaymath, Up: Environments @@ -2685,9 +3276,9 @@ File: latex2e.info, Node: enumerate, Next: eqnarray, Prev: document, Up: Env Synopsis: \begin{enumerate} - \item[OPTIONAL LABEL OF FIRST ITEM] text of first item - \item[OPTIONAL LABEL OF SECOND ITEM] text of second item - ... + \item[OPTIONAL LABEL OF FIRST ITEM] TEXT OF FIRST ITEM + \item[OPTIONAL LABEL OF SECOND ITEM] TEXT OF SECOND ITEM + ... \end{enumerate} Environment to produce a numbered list of items. The format of the @@ -2719,9 +3310,9 @@ format at each nesting level, where 1 is the top level, the outermost level. 1. arabic number followed by a period: '1.', '2.', ... - 2. lower case letter inside parentheses: '(a)', '(b)' ... - 3. lower case roman numeral followed by a period: 'i.', 'ii.', ... - 4. upper case letter followed by a period: 'A.', 'B.', ... + 2. lowercase letter inside parentheses: '(a)', '(b)' ... + 3. lowercase roman numeral followed by a period: 'i.', 'ii.', ... + 4. uppercase letter followed by a period: 'A.', 'B.', ... The 'enumerate' environment uses the counters '\enumi' through '\enumiv' (*note Counters::). @@ -2752,23 +3343,23 @@ File: latex2e.info, Node: eqnarray, Next: equation, Prev: enumerate, Up: Env 8.8 'eqnarray' ============== -First, a caveat: the 'eqnarray' environment is depreciated. It has -infelicities that cannot be overcome, including spacing that is -inconsistent with other mathematics elements (see the article "Avoid -eqnarray!" by Lars Madsen +The 'eqnarray' environment is obsolete. It has infelicities, including +spacing that is inconsistent with other mathematics elements. (See +"Avoid eqnarray!" by Lars Madsen <http://tug.org/TUGboat/tb33-1/tb103madsen.pdf>). New documents should include the 'amsmath' package and use the displayed mathematics -environments provided there, such as the 'align' environment. +environments provided there, such as the 'align' environment. We +include a description only for completeness and for working with old +documents. - Nevertheless, for completeness and for a reference when working with -old documents, a synopsis: + Synopsis: \begin{eqnarray} FIRST FORMULA LEFT &FIRST FORMULA MIDDLE &FIRST FORMULA RIGHT \\ ... \end{eqnarray} - or +or \begin{eqnarray*} FIRST FORMULA LEFT &FIRST FORMULA MIDDLE &FIRST FORMULA RIGHT \\ @@ -2812,21 +3403,19 @@ File: latex2e.info, Node: equation, Next: figure, Prev: eqnarray, Up: Enviro Synopsis: \begin{equation} - math text + MATHEMATICAL TEXT \end{equation} - Make a 'displaymath' environment (*note displaymath::) with an -equation number in the right margin. - - The equation number is generated using the 'equation' counter. + The same as a 'displaymath' environment (*note displaymath::) except +that LaTeX puts an equation number flush to the right margin. The +equation number is generated using the 'equation' counter. You should have no blank lines between '\begin{equation}' and '\begin{equation}', or LaTeX will tell you that there is a missing -dollar sign, $'$'. +dollar sign. - Note that the 'amsmath' package has extensive displayed equation -facilities. Those facilities are the best approach for such output in -new documents. + The package 'amsmath' package has extensive displayed equation +facilities. New documents should include this package. File: latex2e.info, Node: figure, Next: filecontents, Prev: equation, Up: Environments @@ -2837,26 +3426,33 @@ File: latex2e.info, Node: figure, Next: filecontents, Prev: equation, Up: En Synopsis: \begin{figure}[PLACEMENT] - figure body - \caption[LOFTITLE]{TITLE} - \label{LABEL} + FIGURE BODY + \caption[LOFTITLE]{TITLE} % optional + \label{LABEL} % optional \end{figure} - or +or: \begin{figure*}[PLACEMENT] - figure body - \caption[LOFTITLE]{TITLE} - \label{LABEL} + FIGURE BODY + \caption[LOFTITLE]{TITLE} % optional + \label{LABEL} % optional \end{figure*} - A class of floats (*note Floats::). Because they cannot be split -across pages, they are not typeset in sequence with the normal text but -instead are "floated" to a convenient place, such as the top of a -following page. + Figures are for material that is not part of the normal text. An +example is material that you cannot have split between two pages, such +as a graphic. Because of this, LaTeX does not typeset figures in +sequence with normal text but instead "floats" them to a convenient +place, such as the top of a following page (*note Floats::). - For the possible values of PLACEMENT and their effect on the float -placement algorithm, see *note Floats::. + The FIGURE BODY can consist of imported graphics (*note Graphics::), +or text, LaTeX commands, etc. It is typeset in a 'parbox' of width +'\textwidth'. + + The possible values of PLACEMENT are 'h' for 'here', 't' for 'top', +'b' for 'bottom', and 'p' for 'on a separate page of floats'. For the +effect of these options on the float placement algorithm, see *note +Floats::. The starred form 'figure*' is used when a document is in double-column mode (*note \twocolumn::). It produces a figure that @@ -2864,20 +3460,18 @@ spans both columns, at the top of the page. To add the possibility of placing at a page bottom see the discussion of PLACEMENT 'b' in *note Floats::. - The figure body is typeset in a 'parbox' of width '\textwidth' and so -it can contain text, commands, etc. - The label is optional; it is used for cross references (*note Cross references::). The optional '\caption' command specifies caption text for the figure. By default it is numbered. If LOFTITLE is present, it -is used in the list of figures instead of TITLE (*note Tables of -contents::). +is used in the list of figures instead of TITLE (*note Table of contents +etc.::). - This example makes a figure out of a graphic. It requires one of the -packages 'graphics' or 'graphicx'. The graphic, with its caption, will -be placed at the top of a page or, if it is pushed to the end of the -document, on a page of floats. + This example makes a figure out of a graphic. LaTeX will place that +graphic and its caption at the top of a page or, if it is pushed to the +end of the document, on a page of floats. + \usepackage{graphicx} % in preamble + ... \begin{figure}[t] \centering \includegraphics[width=0.5\textwidth]{CTANlion.png} @@ -2896,7 +3490,7 @@ Synopsis: TEXT \end{filecontents} - or +or \begin{filecontents*}{FILENAME} TEXT @@ -2930,7 +3524,7 @@ nothing in that case, it will overwrite the existing file. Article by \myname. \end{document} - produces this file 'JH.sty'. +produces this file 'JH.sty'. %% LaTeX2e file `JH.sty' %% generated by the `filecontents' environment @@ -2944,15 +3538,30 @@ File: latex2e.info, Node: flushleft, Next: flushright, Prev: filecontents, U 8.12 'flushleft' ================ +Synopsis: + \begin{flushleft} - LINE1 \\ - LINE2 \\ - ... + LINE1 \\ + LINE2 \\ + ... \end{flushleft} - The 'flushleft' environment allows you to create a paragraph -consisting of lines that are flush to the left-hand margin and ragged -right. Each line must be terminated with the string '\\'. + An environment that creates a paragraph whose lines are flush to the +left-hand margin, and ragged right. If you have lines that are too long +then LaTeX will linebreak them in a way that avoids hyphenation and +stretching or shrinking spaces. To force a new line use a double +backslash, '\\'. For the declaration form see *note \raggedright::. + + This creates a box of text that is at most 3 inches wide, with the +text flush left and ragged right. + + \noindent\begin{minipage}{3in} + \begin{flushleft} + A long sentence that will be broken by \LaTeX{} + at a convenient spot. \\ + And, a fresh line forced by the double backslash. + \end{flushleft} + \end{minipage} * Menu: @@ -2964,9 +3573,19 @@ File: latex2e.info, Node: \raggedright, Up: flushleft 8.12.1 '\raggedright' --------------------- -The '\raggedright' declaration corresponds to the 'flushleft' -environment. This declaration can be used inside an environment such as -'quote' or in a 'parbox'. +Synopses: + + {\raggedright ... } + +or + + \begin{ENVIRONMENT} \raggedright + ... + \end{ENVIRONMENT} + + A declaration which causes lines to be flush to the left margin and +ragged right. It can be used inside an environment such as 'quote' or +in a 'parbox'. For the environment form see *note flushleft::. Unlike the 'flushleft' environment, the '\raggedright' command does not start a new paragraph; it only changes how LaTeX formats paragraph @@ -2974,6 +3593,16 @@ units. To affect a paragraph unit's format, the scope of the declaration must contain the blank line or '\end' command that ends the paragraph unit. + Here '\raggedright' in each second column keeps LaTeX from doing very +awkward typesetting to fit the text into the narrow column. Note that +'\raggedright' is inside the curly braces '{...}' to delimit its effect. + + \begin{tabular}{rp{2in}} + Team alpha &{\raggedright This team does all the real work.} \\ + Team beta &{\raggedright This team ensures that the water + cooler is never empty.} \\ + \end{tabular} + File: latex2e.info, Node: flushright, Next: itemize, Prev: flushleft, Up: Environments @@ -2981,14 +3610,19 @@ File: latex2e.info, Node: flushright, Next: itemize, Prev: flushleft, Up: En ================= \begin{flushright} - LINE1 \\ - LINE2 \\ - ... + LINE1 \\ + LINE2 \\ + ... \end{flushright} - The 'flushright' environment allows you to create a paragraph -consisting of lines that are flush to the right-hand margin and ragged -left. Each line must be terminated with the control sequence '\\'. + An environment that creates a paragraph whose lines are flush to the +right-hand margin and ragged left. If you have lines that are too long +to fit the margins then LaTeX will linebreak them in a way that avoids +hyphenation and stretching or shrinking spaces. To force a new line use +a double backslash, '\\'. For the declaration form see *note +\raggedleft::. + + For an example related to this environment, see *note flushleft::. * Menu: @@ -3000,9 +3634,19 @@ File: latex2e.info, Node: \raggedleft, Up: flushright 8.13.1 '\raggedleft' -------------------- -The '\raggedleft' declaration corresponds to the 'flushright' -environment. This declaration can be used inside an environment such as -'quote' or in a 'parbox'. +Synopses: + + {\raggedleft ... } + +or + + \begin{ENVIRONMENT} \raggedleft + ... + \end{ENVIRONMENT} + + A declaration which causes lines to be flush to the right margin and +ragged left. It can be used inside an environment such as 'quote' or in +a 'parbox'. For the environment form see *note flushright::. Unlike the 'flushright' environment, the '\raggedleft' command does not start a new paragraph; it only changes how LaTeX formats paragraph @@ -3010,6 +3654,8 @@ units. To affect a paragraph unit's format, the scope of the declaration must contain the blank line or '\end' command that ends the paragraph unit. + For an example related to this environment, see *note \raggedright::. + File: latex2e.info, Node: itemize, Next: letter, Prev: flushright, Up: Environments @@ -3019,25 +3665,25 @@ File: latex2e.info, Node: itemize, Next: letter, Prev: flushright, Up: Envir Synopsis: \begin{itemize} - \item[OPTIONAL LABEL OF FIRST ITEM] text of first item - \item[OPTIONAL LABEL OF SECOND ITEM] text of second item - ... + \item[OPTIONAL LABEL OF FIRST ITEM] TEXT OF FIRST ITEM + \item[OPTIONAL LABEL OF SECOND ITEM] TEXT OF SECOND ITEM + ... \end{itemize} - The 'itemize' environment produces an "unordered", "bulleted" list. -The format of the label numbering depends on the nesting level of this -environment; see below. Each 'itemize' list environment must have at -least one item; having none causes the LaTeX error 'Something's -wrong--perhaps a missing \item'. + Produce a list that is unordered, sometimes called a bullet list. +The environment must have at least one '\item'; having none causes the +LaTeX error 'Something's wrong--perhaps a missing \item'. - This example gives a two-item list. As a top-level list each label -would come out as a bullet, *. + This gives a two-item list. \begin{itemize} \item Pencil and watercolor sketch by Cassandra \item Rice portrait \end{itemize} +As a top-level list each label would come out as a bullet, *. The +format of the labeling depends on the nesting level; see below. + Start list items with the '\item' command (*note \item::). If you give '\item' an optional argument by following it with square brackets, as in '\item[Optional label]', then by default it will appear in bold @@ -3049,7 +3695,7 @@ the '\item' is optional text, which may contain multiple paragraphs. deep. They can also be nested within other paragraph-making environments, such as 'enumerate' (*note enumerate::). The 'itemize' environment uses the commands '\labelitemi' through '\labelitemiv' to -produce the default label (this also uses the convention of lower case +produce the default label (this also uses the convention of lowercase roman numerals at the end of the command names that signify the nesting level). These are the default marks at each level. @@ -3067,7 +3713,7 @@ first level use diamonds. The distance between the left margin of the enclosing environment and the left margin of the 'itemize' list is determined by the parameters '\leftmargini' through '\leftmarginvi'. (Note the convention of using -lower case roman numerals a the end of the command name to denote the +lowercase roman numerals a the end of the command name to denote the nesting level.) The defaults are: '2.5em' in level 1 ('2em' in two-column mode), '2.2em' in level 2, '1.87em' in level 3, and '1.7em' in level 4, with smaller values for more deeply nested levels. @@ -3086,8 +3732,8 @@ lists. Especially for lists with short items, it may be desirable to elide space between items. Here is an example defining an 'itemize*' environment with no extra spacing between items, or between paragraphs -within a single item ('\parskip' is not list-specific, *note -\parskip::): +within a single item ('\parskip' is not list-specific, *note \parindent +& \parskip::): \newenvironment{itemize*}% {\begin{itemize}% @@ -3113,31 +3759,31 @@ File: latex2e.info, Node: list, Next: math, Prev: letter, Up: Environments Synopsis: \begin{list}{LABELING}{SPACING} - \item[OPTIONAL LABEL OF FIRST ITEM] text of first item - \item[OPTIONAL LABEL OF SECOND ITEM] text of second item - ... + \item[OPTIONAL LABEL OF FIRST ITEM] TEXT OF FIRST ITEM + \item[OPTIONAL LABEL OF SECOND ITEM] TEXT OF SECOND ITEM + ... \end{list} - The 'list' environment is a generic environment for constructing more -specialized lists. It is most often used to create lists via the -'description', 'enumerate', and 'itemize' environments (*note -description::, *note enumerate::, and *note itemize::). + An environment for constructing lists. - Also, many standard LaTeX environments that are not visually lists -are constructed using 'list', including 'quotation', 'quote', 'center', -'verbatim', and plenty more (*note quotation and quote::, *note -center::, *note flushright::). + Note that this environment does not typically appear in the document +body. Most lists created by LaTeX authors are the ones that come +standard: the 'description', 'enumerate', and 'itemize' environments +(*note description::, *note enumerate::, and *note itemize::). - The third-party package 'enumitem' is useful for customizing lists. -Here, we describe the 'list' environment by defining a new custom -environment. + Instead, the 'list' environment is most often used in macros. For +example, many standard LaTeX environments that do not immediately appear +to be lists are in fact constructed using 'list', including 'quotation', +'quote', and 'center' (*note quotation & quote::, *note center::). + + This uses the 'list' environment to define a new custom environment. \newcounter{namedlistcounter} % number the items \newenvironment{named} {\begin{list} - {Item~\Roman{namedlistcounter}.} % labeling argument - {\usecounter{namedlistcounter} % spacing argument - \setlength{\leftmargin}{3.5em}} % still spacing arg + {Item~\Roman{namedlistcounter}.} % labeling + {\usecounter{namedlistcounter} % set counter + \setlength{\leftmargin}{3.5em}} % set spacing } {\end{list}} @@ -3147,42 +3793,45 @@ environment. \item Shows as ``Item~II.'' \end{named} - The 'list' environment's mandatory first argument, LABELING, -specifies the default labeling of list items. It can contain text and -LaTeX commands, as above where it contains both 'Item' and -'\Roman{...}'. LaTeX forms the label by putting the LABELING argument -in a box of width '\labelwidth'. If the label is wider than that, the -additional material extends to the right. When making an instance of a -list you can override the default labeling by giving '\item' an optional -argument by including square braces and the text, as in the above -'\item[Special label.]'; *note \item::. - - The label box is constructed by the command '\makelabel'. By default -it positions the contents flush right. It takes one argument, the -label. It typesets the contents in LR mode. An example of changing its -definition is that to the above example before the definition of the -'named' environment add '\newcommand{\namedmakelabel}[1]{\textsc{#1}}', -and between the '\setlength' command and the parenthesis that closes the -SPACING argument also add '\let\makelabel\namedmakelabel'. Then the -items will be typeset in small caps. Similarly, changing the second -code line to '\let\makelabel\fbox' puts the labels inside a framed box. -Another example is at the bottom of this entry. - - The mandatory second argument SPACING can have a list of commands to -redefine the spacing parameters for the list, such as -'\setlength{\labelwidth}{2em}'. If this argument is empty, i.e., '{}', -then the list will have the default spacing given below. To number the -items using a counter, put '\usecounter{COUNTERNAME}' in this argument -(*note \usecounter::). - - Below are the spacing parameters for list formatting. See also the -figure below. Each is a length (*note Lengths::). The vertical spaces -are normally rubber lengths, with 'plus' and 'minus' components, to give -TeX flexibility in setting the page. Change each with a command such as + The mandatory first argument LABELING specifies the default labeling +of list items. It can contain text and LaTeX commands, as above where +it contains both 'Item' and '\Roman{...}'. LaTeX forms the label by +putting the LABELING argument in a box of width '\labelwidth'. If the +label is wider than that, the additional material extends to the right. +When making an instance of a list you can override the default labeling +by giving '\item' an optional argument by including square braces and +the text, as in the above '\item[Special label.]'; *note \item::. + + The mandatory second argument SPACING has a list of commands. This +list can be empty. A command that can go in here is +'\usecounter{COUNTERNAME}' (*note \usecounter::). Use this to tell +LaTeX to number the items using the given counter. The counter will be +reset to zero each time LaTeX enters the environment, and the counter is +incremented by one each time LaTeX encounters an '\item' that does not +have an optional argument. + + Another command that can go in SPACING is '\makelabel', which +constructs the label box. By default it puts the contents flush right. +Its only argument is the label, which it typesets in LR mode (*note +Modes::). One example of changing its definition is that to the above +'named' example, before the definition of the environment add +'\newcommand{\namedmakelabel}[1]{\textsc{#1}}', and between the +'\setlength' command and the parenthesis that closes the SPACING +argument also add '\let\makelabel\namedmakelabel'. Then the items will +be typeset in small caps. Similarly, changing the second code line to +'\let\makelabel\fbox' puts the labels inside a framed box. Another +example of the '\makelabel' command is below, in the definition of the +'redlabel' environment. + + Also often in SPACING are commands to redefine the spacing for the +list. Below are the spacing parameters with their default values. +(Default values for derived environments such as 'itemize' can be +different than the values shown here.) See also the figure that follows +the list. Each is a length (*note Lengths::). The vertical spaces are +normally rubber lengths, with 'plus' and 'minus' components, to give TeX +flexibility in setting the page. Change each with a command such as '\setlength{itemsep}{2pt plus1pt minus1pt}'. For some effects these -lengths should be zero or negative. Default values for derived -environments such as 'itemize' can be changed from the values shown here -for the basic 'list'. +lengths should be zero or negative. '\itemindent' Extra horizontal space indentation, beyond 'leftmargin', of the @@ -3279,13 +3928,14 @@ for the basic 'list'. '\topsep' Vertical space added to both the top and bottom of the list, in - addition to '\parskip' (*note \parskip::). The defaults for the - first three levels in LaTeX's 'article', 'book', and 'report' - classes at 10 point size are: '8pt plus2pt minus4pt', '4pt plus2pt - minus1pt', and '2pt plus1pt minus1pt'. The defaults at 11 point - are: '9pt plus3pt minus5pt', '4.5pt plus2pt minus1pt', and '2pt - plus1pt minus1pt'. The defaults at 12 point are: '10pt plus4pt - minus6pt', '5pt plus2.5pt minus1pt', and '2.5pt plus1pt minus1pt'. + addition to '\parskip' (*note \parindent & \parskip::). The + defaults for the first three levels in LaTeX's 'article', 'book', + and 'report' classes at 10 point size are: '8pt plus2pt minus4pt', + '4pt plus2pt minus1pt', and '2pt plus1pt minus1pt'. The defaults + at 11 point are: '9pt plus3pt minus5pt', '4.5pt plus2pt minus1pt', + and '2pt plus1pt minus1pt'. The defaults at 12 point are: '10pt + plus4pt minus6pt', '5pt plus2.5pt minus1pt', and '2.5pt plus1pt + minus1pt'. This shows the horizontal and vertical distances. @@ -3327,6 +3977,9 @@ V3 appears in the source above the environment; whether a blank line appears in the source below the environment does not matter.) +H0 + '\labelwidth' + H1 '\labelsep' @@ -3368,8 +4021,11 @@ of 10000 prohibits a page break. The page breaking penalty for breaking after a list (default '-51'). + The package 'enumitem' is useful for customizing lists. + This example has the labels in red. They are numbered, and the left -edge of the label lines up with the left edge of the item text. +edge of the label lines up with the left edge of the item text. *Note +\usecounter::. \usepackage{color} \newcounter{cnt} @@ -3402,7 +4058,8 @@ Synopsis: \item text of item - or +or + \item[OPTIONAL-LABEL] text of item An entry in a list. The entries are prefixed by a label, whose @@ -3493,20 +4150,107 @@ File: latex2e.info, Node: minipage, Next: picture, Prev: math, Up: Environme 8.18 'minipage' =============== +Synopses: + + \begin{minipage}{WIDTH} + CONTENTS + \end{minipage} + +or + \begin{minipage}[POSITION][HEIGHT][INNER-POS]{WIDTH} - TEXT + CONTENTS + \end{minipage} + + Put CONTENTS into a box that is WIDTH wide. This is like a small +version of a page; it can contain its own footnotes, itemized lists, +etc. (There are some restrictions, including that it cannot have +floats.) This box will not be broken across pages. So 'minipage' is +similar to '\parbox' (*note \parbox::) but here you can have paragraphs. + + This example will be 3 inches wide, and has two paragraphs. + + \begin{minipage}{3in} + Stephen Kleene was a founder of the Theory of Computation. + + He was a student of Church, wrote three influential texts, + was President of the Association for Symbolic Logic, + and won the National Medal of Science. \end{minipage} - The 'minipage' environment typesets its body TEXT in a block that -will not be broken across pages. This is similar to the '\parbox' -command (*note \parbox::), but unlike '\parbox', other paragraph-making -environments can be used inside a minipage. +See below for a discussion of the paragraph indent inside a 'minipage'. - The arguments are the same as for '\parbox' (*note \parbox::). + The required argument WIDTH is a rigid length (*note Lengths::). It +gives the width of the box into which CONTENTS are typeset. - By default, paragraphs are not indented in the 'minipage' -environment. You can restore indentation with a command such as -'\setlength{\parindent}{1pc}' command. + There are three optional arguments, POSITION, HEIGHT, and INNER-POS. +You need not include all three. For example, get the default POSITION +and set the HEIGHT with '\begin{minipage}[c][2.54cm] CONTENTS +\end{minipage}'. (Get the natural height with an empty argument, '[]'.) + + The optional argument POSITION governs how the 'minipage' vertically +aligns with the surrounding material. + +'c' + (synonym 'm') Default. Positions the 'minipage' so its vertical + center lines up with the center of the adjacent text line (what + Plain TeX calls '\vcenter'). + +'t' + Match the top line in the 'minipage' with the baseline of the + surrounding text (Plain TeX's '\vtop'. + +'b' + Match the bottom line in the 'minipage' with the baseline of the + surrounding text (Plain TeX's '\vbox'. + + To see the effects of these, contrast running this + + ---\begin{minipage}[c]{0.25in} + first\\ second\\ third + \end{minipage} + +with the results of changing 'c' to 'b' or 't'. + + The optional argument HEIGHT is a rigid length (*note Lengths::). It +sets the height of the 'minipage'. You can enter any value larger than, +or equal to, or smaller than the 'minipage''s natural height and LaTeX +will not give an error or warning. You can also set it to a height of +zero or a negative value. + + The final optional argument INNER-POS controls the placement of +CONTENT inside the box. These are the possible values are (the default +is the value of POSITION). + +'t' + Place CONTENT at the top of the box. + +'c' + Place it in the vertical center. + +'b' + Place it at the box bottom. + +'s' + Stretch CONTENTS out vertically; it must contain vertically + stretchable space. + + The INNER-POS argument makes sense when the HEIGHT options is set to +a value larger than the 'minipage''s natural height. To see the effect +of the options, run this example with the various choices in place of +'b'. + + Text before + \begin{center} + ---\begin{minipage}[c][3in][b]{0.25\textwidth} + first\\ second\\ third + \end{minipage} + \end{center} + Text after + + By default paragraphs are not indented in a 'minipage'. Change that +with a command such as '\setlength{\parindent}{1pc}' at the start of +CONTENTS. Footnotes in a 'minipage' environment are handled in a way that is particularly useful for putting footnotes in figures or tables. A @@ -3515,384 +4259,681 @@ of the minipage instead of at the bottom of the page, and it uses the '\mpfootnote' counter instead of the ordinary 'footnote' counter (*note Counters::). - However, don't put one minipage inside another if you are using -footnotes; they may wind up at the bottom of the wrong minipage. + This puts the footnote at the bottom of the table, not the bottom of +the page. + + \begin{center} % center the minipage on the line + \begin{minipage}{2.5in} + \begin{center} % center the table inside the minipage + \begin{tabular}{ll} + \textsc{Monarch} &\textsc{Reign} \\ \hline + Elizabeth II &63 years\footnote{to date} \\ + Victoria &63 years \\ + George III &59 years + \end{tabular} + \end{center} + \end{minipage} + \end{center} + + If you nest minipages then there is an oddness when using footnotes. +Footnotes appear at the bottom of the text ended by the next +'\end{minipage}' which may not be their logical place. + + This puts a table containing data side by side with a map graphic. +They are vertically centered. + + \newcommand*{\vcenteredhbox}[1]{\begin{tabular}{@{}c@{}}#1\end{tabular}} + ... + \begin{center} + \vcenteredhbox{\includegraphics[width=0.3\textwidth]{nyc.png}} + \hspace{0.1\textwidth} + \begin{minipage}{0.5\textwidth} + \begin{tabular}{r|l} + \multicolumn{1}{r}{Borough} &Pop (million) \\ \hline + The Bronx &$1.5$ \\ + Brooklyn &$2.6$ \\ + Manhattan &$1.6$ \\ + Queens &$2.3$ \\ + Staten Island &$0.5$ + \end{tabular} + \end{minipage} + \end{center} -File: latex2e.info, Node: picture, Next: quotation and quote, Prev: minipage, Up: Environments +File: latex2e.info, Node: picture, Next: quotation & quote, Prev: minipage, Up: Environments 8.19 'picture' ============== +Synopses: + \begin{picture}(WIDTH,HEIGHT) + PICTURE COMMANDS + \end{picture} + +or + \begin{picture}(WIDTH,HEIGHT)(XOFFSET,YOFFSET) - ... PICTURE COMMANDS ... + PICTURE COMMANDS + \end{picture} + + An environment to create simple pictures containing lines, arrows, +boxes, circles, and text. Note that while this environment is not +obsolete, new documents typically use much more powerful graphics +creation systems, such as 'TikZ', 'PSTricks', 'MetaPost', or +'Asymptote'. These are not covered in this document; see CTAN. + + This shows the parallelogram law for adding vectors. + + \setlength{\unitlength}{1cm} + \begin{picture}(6,6) % picture box will be 6cm wide by 6cm tall + \put(0,0){\vector(2,1){4}} % for every 2 over this vector goes 1 up + \put(2,1){\makebox(0,0)[l]{\ first leg}} + \put(4,2){\vector(1,2){2}} + \put(5,4){\makebox(0,0)[l]{\ second leg}} + \put(0,0){\line(1,1){6}} + \put(3,3){\makebox(0,0)[r]{sum\ }} \end{picture} - The 'picture' environment allows you to create just about any kind of -picture you want containing text, lines, arrows and circles. You tell -LaTeX where to put things in the picture by specifying their -coordinates. A coordinate is a number that may have a decimal point and -a minus sign--a number like '5', '0.3' or '-3.1416'. A coordinate -specifies a length in multiples of the unit length '\unitlength', so if -'\unitlength' has been set to '1cm', then the coordinate 2.54 specifies -a length of 2.54 centimeters. - - You should only change the value of '\unitlength', using the -'\setlength' command, outside of a 'picture' environment. The default -value is '1pt'. - - The 'picture' package redefine the 'picture' environment so that -everywhere a number is used in a PICTURE COMMANDS to specify a -coordinate, one can use alternatively a length. Be aware however that -this will prevent scaling those lengths by changing '\unitlength'. - - A "position" is a pair of coordinates, such as '(2.4,-5)', specifying -the point with x-coordinate '2.4' and y-coordinate '-5'. Coordinates -are specified in the usual way with respect to an origin, which is -normally at the lower-left corner of the picture. Note that when a -position appears as an argument, it is not enclosed in braces; the -parentheses serve to delimit the argument. - - The 'picture' environment has one mandatory argument which is a -position (WIDTH,HEIGHT), which specifies the size of the picture. The -environment produces a rectangular box with these WIDTH and HEIGHT. - - The 'picture' environment also has an optional position argument -(XOFFSET,YOFFSET), following the size argument, that can change the -origin. (Unlike ordinary optional arguments, this argument is not -contained in square brackets.) The optional argument gives the -coordinates of the point at the lower-left corner of the picture -(thereby determining the origin). For example, if '\unitlength' has -been set to '1mm', the command + You can also use this environment to place arbitrary material at an +exact location. + + \usepackage{color,graphicx} % in preamble + ... + \begin{center} + \setlength{\unitlength}{\textwidth} + \begin{picture}(1,1) % leave space, \textwidth wide and tall + \put(0,0){\includegraphics[width=\textwidth]{desertedisland.jpg}} + \put(0.25,0.35){\textcolor{red}{X Treasure here}} + \end{picture} + \end{center} + +The red X will be precisely a quarter of the '\linewidth' from the left +margin, and '0.35\linewidth' up from the bottom. Another example of +this usage is to put similar code in the page header to get repeat +material on each of a document's pages. + + The 'picture' environment has one required argument, a pair of +numbers (WIDTH,HEIGHT). Multiply these by the value '\unitlength' to +get the nominal size of the output, the space that LaTeX reserves on the +output page. This nominal size need not be how large the picture really +is; LaTeX will draw things from the picture outside the picture's box. + + This environment also has an optional argument (XOFFSET,YOFFSET). It +is used to shift the origin. Unlike most optional arguments, this one +is not contained in square brackets. As with the required argument, it +consists of two real numbers. Multiply these by '\unitlength' to get +the point at the lower-left corner of the picture. + + For example, if '\unitlength' has been set to '1mm', the command \begin{picture}(100,200)(10,20) -produces a picture of width 100 millimeters and height 200 millimeters, -whose lower-left corner is the point (10,20) and whose upper-right -corner is therefore the point (110,220). When you first draw a picture, -you typically omit the optional argument, leaving the origin at the -lower-left corner. If you then want to modify your picture by shifting -everything, you can just add the appropriate optional argument. +produces a box of width 100 millimeters and height 200 millimeters. The +picture's origin is the point (10mm,20mm) and so the lower-left corner +is there, and the upper-right corner is at (110mm,220mm). When you +first draw a picture you typically omit the optional argument, leaving +the origin at the lower-left corner. If you then want to modify your +picture by shifting everything, you can just add the appropriate +optional argument. + + Each PICTURE COMMAND tells LaTeX where to put something by naming its +position. A "position" is a pair such as '(2.4,-5)' giving the x- and +y-coordinates. A "coordinate" is a not a length, it is a real number +(it may have a decimal point or a minus sign). It specifies a length in +multiples of the unit length '\unitlength', so if '\unitlength' has been +set to '1cm', then the coordinate 2.54 specifies a length of 2.54 +centimeters. + + LaTeX's default for '\unitlength' is '1pt'. it is a rigid length +(*note Lengths::). Change it with the '\setlength' command (*note +\setlength::). Make this change only outside of a 'picture' +environment. - The environment's mandatory argument determines the nominal size of -the picture. This need bear no relation to how large the picture really -is; LaTeX will happily allow you to put things outside the picture, or -even off the page. The picture's nominal size is used by LaTeX in -determining how much room to leave for it. + Coordinates are given with respect to an origin, which is normally at +the lower-left corner of the picture. Note that when a position appears +as an argument, as with '\put(1,2){...}', it is not enclosed in braces +since the parentheses serve to delimit the argument. Also, unlike in +some computer graphics systems, larger y-coordinates are further up the +page. - Everything that appears in a picture is drawn by the '\put' command. -The command + There are four ways to put things in a picture: '\put', '\multiput', +'\qbezier', and '\graphpaper'. The most often used is '\put'. This - \put (11.3,-.3){...} + \put(11.3,-0.3){...} -puts the object specified by '...' in the picture, with its reference -point at coordinates (11.3,-.3). The reference points for various -objects will be described below. +places the object with its reference point at coordinates (11.3,-0.3). +The reference points for various objects will be described below. The +'\put' command creates an "LR box" (*note Modes::). Anything that can +go in an '\mbox' (*note \mbox & \makebox::) can go in the text argument +of the '\put' command. The reference point will be the lower left +corner of the box. In this picture - The '\put' command creates an "LR box". You can put anything that -can go in an '\mbox' (*note \mbox::) in the text argument of the '\put' -command. When you do this, the reference point will be the lower left -corner of the box. + \setlength{\unitlength}{1cm} + ...\begin{picture}(1,1) + \put(0,0){\line(1,0){1}} + \put(0,0){\line(1,1){1}} + \end{picture} - The 'picture' commands are described in the following sections. +the three dots are just slightly left of the point of the angle formed +by the two lines. (Also, '\line(1,1){1}' does not call for a line of +length one; rather the line has a change in the x coordinate of 1.) + + The '\multiput', 'qbezier', and 'graphpaper' commands are described +below. + + This draws a rectangle with a wavy top, using '\qbezier' for that +curve. + + \begin{picture}(3,1.5) + \put(0,0){\vector(1,0){8}} % x axis + \put(0,0){\vector(0,1){4}} % y axis + \put(2,0){\line(0,1){3}} % left side rectangle + \put(4,0){\line(0,1){3.5}} % right side + \qbezier(2,3)(2.5,2.9)(3,3.25) + \qbezier(3,3.25)(3.5,3.6)(4,3.5) + \thicklines % below here, lines are twice as thick + \put(2,3){\line(4,1){2}} + \put(4.5,2.5){\framebox{Trapezoidal Rule}} + \end{picture} * Menu: +* \put:: Place an object at a specified place. +* \multiput:: Draw multiple instances of an object. +* \qbezier:: Draw a quadratic Bezier curve. +* \graphpaper:: Draw graph paper. +* \line:: Draw a straight line. +* \linethickness:: Set thickness of horizontal and vertical lines. +* \thinlines:: The default line thickness. +* \thicklines:: A heavier line thickness. * \circle:: Draw a circle. +* \oval:: Draw an oval. +* \shortstack:: Make a stack of objects. +* \vector:: Draw a line with an arrow. * \makebox (picture):: Draw a box of the specified size. * \framebox (picture):: Draw a box with a frame around it. -* \dashbox:: Draw a dashed box. * \frame:: Draw a frame around an object. -* \line:: Draw a straight line. -* \linethickness:: Set the line thickness. -* \thicklines:: A heavier line thickness. -* \thinlines:: The default line thickness. -* \multiput:: Draw multiple instances of an object. -* \oval:: Draw an ellipse. -* \put:: Place an object at a specified place. -* \shortstack:: Make a pile of objects. -* \vector:: Draw a line with an arrow. +* \dashbox:: Draw a dashed box. -File: latex2e.info, Node: \circle, Next: \makebox (picture), Up: picture +File: latex2e.info, Node: \put, Next: \multiput, Up: picture -8.19.1 '\circle' ----------------- +8.19.1 '\put' +------------- Synopsis: - \circle[*]{DIAMETER} + \put(XCOORD,YCOORD){CONTENT} - The '\circle' command produces a circle with a diameter as close to -the specified one as possible. The '*'-form of the command draws a -solid circle. + Place CONTENT at the coordinate (XCOORD,YCOORD). See the discussion +of coordinates and '\unitlength' in *note picture::. The CONTENT is +processed in LR mode (*note Modes::) so it cannot contain line breaks. - Circles up to 40pt can be drawn. + This includes the text into the 'picture'. + + \put(4.5,2.5){Apply the \textit{unpoke} move} + + The reference point, the location (4.5,2.5), is the lower left of the +text, at the bottom left of the 'A'. -File: latex2e.info, Node: \makebox (picture), Next: \framebox (picture), Prev: \circle, Up: picture +File: latex2e.info, Node: \multiput, Next: \qbezier, Prev: \put, Up: picture -8.19.2 '\makebox' ------------------ +8.19.2 '\multiput' +------------------ Synopsis: - \makebox(WIDTH,HEIGHT)[POSITION]{TEXT} - - The '\makebox' command for the picture environment is similar to the -normal '\makebox' command except that you must specify a WIDTH and -HEIGHT in multiples of '\unitlength'. + \multiput(X,Y)(DELTA_X,DELTA_Y){NUM-COPIES}{OBJ} - The optional argument, '[POSITION]', specifies the quadrant that your -TEXT appears in. You may select up to two of the following: + Copy OBJ a total of NUM-COPIES times, with an increment of +DELTA_X,DELTA_Y. The OBJ first appears at position (x,y), then at +(x+\delta_x,y+\delta_y), and so on. -'t' - Moves the item to the top of the rectangle. + This draws a simple grid with every fifth line in bold (see also +*note \graphpaper::). -'b' - Moves the item to the bottom. + \begin{picture}(10,10) + \linethickness{0.05mm} + \multiput(0,0)(1,0){10}{\line(0,1){10}} + \multiput(0,0)(0,1){10}{\line(1,0){10}} + \linethickness{0.5mm} + \multiput(0,0)(5,0){3}{\line(0,1){10}} + \multiput(0,0)(0,5){3}{\line(1,0){10}} + \end{picture} -'l' - Moves the item to the left. + +File: latex2e.info, Node: \qbezier, Next: \graphpaper, Prev: \multiput, Up: picture -'r' - Moves the item to the right. +8.19.3 '\qbezier' +----------------- - *Note \makebox::. +Synopsis: - -File: latex2e.info, Node: \framebox (picture), Next: \dashbox, Prev: \makebox (picture), Up: picture + \qbezier(X1,Y1)(X2,Y2)(X3,Y3) + \qbezier[NUM](X1,Y1)(X2,Y2)(X3,Y3) -8.19.3 '\framebox' ------------------- + Draw a quadratic Bezier curve whose control points are given by the +three required arguments '(X1,Y1)', '(X2,Y2)', and '(X3,Y3)'. That is, +the curve runs from (X1,Y1) to (X3,Y3), is quadratic, and is such that +the tangent line at (X1,Y1) passes through (X2,Y2), as does the tangent +line at (X3,Y3). -Synopsis: + This draws a curve from the coordinate (1,1) to (1,0). - \framebox(WIDTH,HEIGHT)[POS]{...} + \qbezier(1,1)(1.25,0.75)(1,0) - The '\framebox' command is like '\makebox' (see previous section), -except that it puts a frame around the outside of the box that it -creates. +The curve's tangent line at (1,1) contains (1.25,0.75), as does the +curve's tangent line at (1,0). - The '\framebox' command produces a rule of thickness '\fboxrule', and -leaves a space '\fboxsep' between the rule and the contents of the box. + The optional argument NUM gives the number of calculated intermediate +points. The default is to draw a smooth curve whose maximum number of +points is '\qbeziermax' (change this value with '\renewcommand'). -File: latex2e.info, Node: \dashbox, Next: \frame, Prev: \framebox (picture), Up: picture +File: latex2e.info, Node: \graphpaper, Next: \line, Prev: \qbezier, Up: picture -8.19.4 '\dashbox' ------------------ +8.19.4 '\graphpaper' +-------------------- -Draws a box with a dashed line. Synopsis: +Synopsis: + + \graphpaper(X_INIT,Y_INIT)(X_DIMEN,Y_DIMEN) + \graphpaper[SPACING](X_INIT,Y_INIT)(X_DIMEN,Y_DIMEN) + + Draw a coordinate grid. Requires the 'graphpap' package. The grid's +origin is '(X_INIT,Y_INIT)'. Grid lines come every SPACING units (the +default is 10). The grid extends X_DIMEN units to the right and Y_DIMEN +units up. All arguments must be positive integers. - \dashbox{DLEN}(RWIDTH,RHEIGHT)[POS]{TEXT} + This make a grid with seven vertical lines and eleven horizontal +lines. - '\dashbox' creates a dashed rectangle around TEXT in a 'picture' -environment. Dashes are DLEN units long, and the rectangle has overall -width RWIDTH and height RHEIGHT. The TEXT is positioned at optional -POS. + \usepackage{graphpap} % in preamble + ... + \begin{picture}(6,20) % in document body + \graphpaper[2](0,0)(12,20) + \end{picture} - A dashed box looks best when the RWIDTH and RHEIGHT are multiples of -the DLEN. +The lines are numbered every ten units. -File: latex2e.info, Node: \frame, Next: \line, Prev: \dashbox, Up: picture +File: latex2e.info, Node: \line, Next: \linethickness, Prev: \graphpaper, Up: picture -8.19.5 '\frame' ---------------- +8.19.5 '\line' +-------------- Synopsis: - \frame{TEXT} + \line(X_RUN,Y_RISE){TRAVEL} - The '\frame' command puts a rectangular frame around TEXT. The -reference point is the bottom left corner of the frame. No extra space -is put between the frame and the object. + Draw a line. It slopes such that it vertically rises Y_RISE for +every horizontal X_RUN. The TRAVEL is the total horizontal change -- it +is not the length of the vector, it is the change in x. In the special +case of vertical lines, where (X_RUN,Y_RISE)=(0,1), the TRAVEL gives the +change in y. - -File: latex2e.info, Node: \line, Next: \linethickness, Prev: \frame, Up: picture + This draws a line starting at coordinates (1,3). -8.19.6 '\line' --------------- + \put(1,3){\line(2,5){4}} -Synopsis: +For every over 2, this line will go up 5. Because TRAVEL specifies that +this goes over 4, it must go up 10. Thus its endpoint is +(1,3)+(4,10)=(5,13). In particular, note that TRAVEL=4 is not the +length of the line, it is the change in x. - \line(XSLOPE,YSLOPE){LENGTH} + The arguments X_RUN and Y_RISE are integers that can be positive, +negative, or zero. (If both are 0 then LaTeX treats the second as 1.) +With '\put(X_INIT,Y_INIT){\line(X_RUN,Y_RISE){TRAVEL}}', if X_RUN is +negative then the line's ending point has a first coordinate that is +less than X_INIT. If Y_RISE is negative then the line's ending point +has a second coordinate that is less than Y_INIT. - The '\line' command draws a line with the given LENGTH and slope -XSLOPE/YSLOPE. + If TRAVEL is negative then you get 'LaTeX Error: Bad \line or \vector +argument.' - Standard LaTeX can only draw lines with SLOPE = x/y, where x and y -have integer values from -6 through 6. For lines of any slope, and -plenty of other shapes, see 'pict2e' and many other packages on CTAN. + Standard LaTeX can only draw lines with a limited range of slopes +because these lines are made by putting together line segments from +pre-made fonts. The two numbers X_RUN and Y_RISE must have integer +values from -6 through 6. Also, they must be relatively prime, so that +(X_RUN,Y_RISE) can be (2,1) but not (4,2) (if you choose the latter then +instead of lines you get sequences of arrowheads; the solution is to +switch to the former). To get lines of arbitrary slope and plenty of +other shapes in a system like 'picture', see the package 'pict2e' on +CTAN. Another solution is to use a full-featured graphics system such as +'TikZ', or 'PSTricks', or 'MetaPost', or 'Asymptote' -File: latex2e.info, Node: \linethickness, Next: \thicklines, Prev: \line, Up: picture +File: latex2e.info, Node: \linethickness, Next: \thinlines, Prev: \line, Up: picture -8.19.7 '\linethickness' +8.19.6 '\linethickness' ----------------------- -The '\linethickness{DIM}' command declares the thickness of horizontal -and vertical lines in a picture environment to be DIM, which must be a -positive length. +Synopsis: + + \linethickness{DIM} - '\linethickness' does not affect the thickness of slanted lines, -circles, or the quarter circles drawn by '\oval'. + Declares the thickness of subsequent horizontal and vertical lines in +a picture to be DIM, which must be a positive length (*note Lengths::). +It differs from '\thinlines' and '\thicklines' in that it does not +affect the thickness of slanted lines, circles, or ovals. -File: latex2e.info, Node: \thicklines, Next: \thinlines, Prev: \linethickness, Up: picture +File: latex2e.info, Node: \thinlines, Next: \thicklines, Prev: \linethickness, Up: picture -8.19.8 '\thicklines' --------------------- +8.19.7 '\thinlines' +------------------- -The '\thicklines' command is an alternate line thickness for horizontal -and vertical lines in a picture environment; cf. *note \linethickness:: -and *note \thinlines::. +Declaration to set the thickness of subsequent lines, circles, and ovals +in a picture environment to be 0.4pt. This is the default thickness, so +this command is unnecessary unless the thickness has been changed with +either *note \linethickness:: or *note \thicklines::. -File: latex2e.info, Node: \thinlines, Next: \multiput, Prev: \thicklines, Up: picture +File: latex2e.info, Node: \thicklines, Next: \circle, Prev: \thinlines, Up: picture -8.19.9 '\thinlines' -------------------- +8.19.8 '\thicklines' +-------------------- -The '\thinlines' command is the default line thickness for horizontal -and vertical lines in a picture environment; cf. *note \linethickness:: -and *note \thicklines::. +Declaration to set the thickness of subsequent lines, circles, and ovals +in a picture environment to be 0.8pt. See also *note \linethickness:: +and *note \thinlines::. This command is illustrated in the Trapezoidal +Rule example of *note picture::. -File: latex2e.info, Node: \multiput, Next: \oval, Prev: \thinlines, Up: picture +File: latex2e.info, Node: \circle, Next: \oval, Prev: \thicklines, Up: picture -8.19.10 '\multiput' -------------------- +8.19.9 '\circle' +---------------- Synopsis: - \multiput(X,Y)(DELTA_X,DELTA_Y){N}{OBJ} + \circle{DIAMETER} + \circle*{DIAMETER} + + Produces a circle with a diameter as close as possible to the +specified one. The '*' form produces a filled-in circle. - The '\multiput' command copies the object OBJ in a regular pattern -across a picture. OBJ is first placed at position (x,y), then at -(x+\delta x,y+\delta y), and so on, N times. + This draws a circle of radius 6, centered at '(5,7)'. + + \put(5,7){\circle{6}} + + The available radii for 'circle' are, in points, the even numbers +from 2 to 20, inclusive. For 'circle*' they are all the integers from 1 +to 15. -File: latex2e.info, Node: \oval, Next: \put, Prev: \multiput, Up: picture +File: latex2e.info, Node: \oval, Next: \shortstack, Prev: \circle, Up: picture -8.19.11 '\oval' +8.19.10 '\oval' --------------- Synopsis: + \oval(WIDTH,HEIGHT) \oval(WIDTH,HEIGHT)[PORTION] - The '\oval' command produces a rectangle with rounded corners. The -optional argument PORTION allows you to produce only half of the oval -via the following: + Produce a rectangle with rounded corners. The optional argument +PORTION allows you to produce only half or a quarter of the oval. For +half an oval take PORTION to be one of these. 't' - selects the top half; + top half 'b' - selects the bottom half; + bottom half 'r' - selects the right half; + right half 'l' - selects the left half. + left half + + Produce only one quarter of the oval by setting PORTION to 'tr', +'br', 'bl', or 'tl'. - It is also possible to produce only one quarter of the oval by -setting PORTION to 'tr', 'br', 'bl', or 'tl'. + This draws the top half of an oval that is 3 wide and 7 tall. - The "corners" of the oval are made with quarter circles with a -maximum radius of 20pt, so large "ovals" will look more like boxes with -rounded corners. + \put(5,7){\oval(3,7)[t]} + +The (5,7) is the center of the entire oval, not just the center of the +top half. + + These shapes are not ellipses. They are rectangles whose corners are +made with quarter circles. These circles have a maximum radius of 20pt +(*note \circle:: for the sizes). Thus large ovals are just boxes with a +small amount of corner rounding. -File: latex2e.info, Node: \put, Next: \shortstack, Prev: \oval, Up: picture +File: latex2e.info, Node: \shortstack, Next: \vector, Prev: \oval, Up: picture -8.19.12 '\put' --------------- +8.19.11 '\shortstack' +--------------------- Synopsis: - \put(XCOORD,YCOORD){ ... } + \shortstack[POSITION]{LINE 1 \\ ... } + + Produce a vertical stack of objects. + + This labels the y axis. - The '\put' command places the material specified by the (mandatory) -argument in braces at the given coordinate, (XCOORD,YCOORD). + \put(0,0){\vector(1,0){4}} % x axis + \put(0,0){\vector(0,1){2}} % y + \put(-0.25,2){\makebox[0][r]{\shortstack[r]{$y$\\ axis}}} + +For a short stack, the reference point is the lower left of the stack. +In the above example the *note \mbox & \makebox:: puts the stack flush +right in a zero width box so in total the short stack sits slightly to +the left of the y axis. + + The valid positions are: + +'r' + Make objects flush right +'l' + Make objects flush left +'c' + Center objects (default) + + Separate objects into lines with '\\'. These stacks are short in +that, unlike in a 'tabular' or 'array' environment, here the rows are +not spaced out to be of even heights. Thus, in +'\shortstack{X\\o\\o\\X}' the first and last rows are taller than the +middle two. You can adjust row heights either by putting in the usual +interline spacing with '\shortstack{X\\ \strut o\\o\\X}', or by hand, +via an explicit zero-width box '\shortstack{X \\ \rule{0pt}{12pt} +o\\o\\X}' or by using '\\''s optional argument '\shortstack{X\\[2pt] +o\\o\\X}'. + + The '\shortstack' command is also available outside the 'picture' +environment. -File: latex2e.info, Node: \shortstack, Next: \vector, Prev: \put, Up: picture +File: latex2e.info, Node: \vector, Next: \makebox (picture), Prev: \shortstack, Up: picture -8.19.13 '\shortstack' ---------------------- +8.19.12 '\vector' +----------------- Synopsis: - \shortstack[POSITION]{...\\...\\...} + \vector(X_RUN,Y_RISE){TRAVEL} - The '\shortstack' command produces a stack of objects. The valid -positions are: + Draw a line ending in an arrow. The slope of that line is: it +vertically rises Y_RISE for every horizontal X_RUN. The TRAVEL is the +total horizontal change -- it is not the length of the vector, it is the +change in x. In the special case of vertical vectors, if +(X_RUN,Y_RISE)=(0,1), then TRAVEL gives the change in y. + + For an example see *note picture::. + + For elaboration on X_RUN and Y_RISE see *note \line::. As there, the +values of X_RUN and Y_RISE are limited. For '\vector' you must chooses +integers between -4 and 4, inclusive. Also, the two you choose must be +relatively prime. Thus, '\vector(2,1){4}' is acceptable but +'\vector(4,2){4}' is not (if you use the latter then you get a sequence +of arrowheads). + + +File: latex2e.info, Node: \makebox (picture), Next: \framebox (picture), Prev: \vector, Up: picture + +8.19.13 '\makebox' (picture) +---------------------------- + +Synopsis: + + \makebox(REC-WIDTH,REC-HEIGHT){TEXT} + \makebox(REC-WIDTH,REC-HEIGHT)[POSITION]{TEXT} + + Make a box to hold TEXT. This command fits with the 'picture' +environment, although you can use it outside of there, because REC-WIDTH +and REC-HEIGHT are numbers specifying distances in terms of the +'\unitlength' (*note picture::). This command is similar to the normal +'\makebox' command (*note \mbox & \makebox::) except here that you must +specify the width and height. This command is fragile (*note +\protect::). + + This makes a box of length 3.5 times '\unitlength' and height 4 times +'\unitlength'. + + \put(1,2){\makebox(3.5,4){...}} + + The optional argument 'POSITION' specifies where in the box the TEXT +appears. The default is to center it, both horizontally and vertically. +To place it somewhere else, use a string with one or two of these +letters. + +'t' + Puts TEXT the top of the box. + +'b' + Put TEXT at the bottom. -'r' - Move the objects to the right of the stack. 'l' - Move the objects to the left of the stack -'c' - Move the objects to the centre of the stack (default) + Put TEXT on the left. - Objects are separated with '\\'. +'r' + Put TEXT on the right. -File: latex2e.info, Node: \vector, Prev: \shortstack, Up: picture +File: latex2e.info, Node: \framebox (picture), Next: \frame, Prev: \makebox (picture), Up: picture -8.19.14 '\vector' ------------------ +8.19.14 '\framebox' (picture) +----------------------------- Synopsis: - \vector(XSLOPE,YSLOPE){LENGTH} + \framebox(REC-WIDTH,REC-HEIGHT){TEXT} + \framebox(REC-WIDTH,REC-HEIGHT)[POSITION]{TEXT} + + This is the same as *note \makebox (picture):: except that it puts a +frame around the outside of the box that it creates. The reference +point is the bottom left corner of the frame. This command fits with +the 'picture' environment, although you can use it outside of there, +because lengths are numbers specifying the distance in terms of the +'\unitlength' (*note picture::). This command is fragile (*note +\protect::). + + This example creates a frame 2.5 inches by 3 inches and puts the text +in the center. + + \setlength{\unitlength}{1in} + \framebox(2.5,3){test text} + + The required arguments are that the rectangle has overall width +RECT-WIDTH units and height RECT-HEIGHT units. + + The optional argument POSITION specifies the position of TEXT; see +*note \makebox (picture):: for the values that it can take. - The '\vector' command draws a line with an arrow of the specified -length and slope. The XSLOPE and YSLOPE values must lie between -4 and -+4, inclusive. + The rule has thickness '\fboxrule' and there is a blank space +'\fboxsep' between the frame and the contents of the box. + + For this command, you must specify the WIDTH and HEIGHT. If you want +to just put a frame around some contents whose dimension is determined +in some other way then either use '\fbox' (*note \fbox & \framebox::) or +'\frame' (*note \frame::). -File: latex2e.info, Node: quotation and quote, Next: tabbing, Prev: picture, Up: Environments +File: latex2e.info, Node: \frame, Next: \dashbox, Prev: \framebox (picture), Up: picture -8.20 'quotation' and 'quote' -============================ +8.19.15 '\frame' +---------------- + +Synopsis: + + \frame{CONTENTS} + + Puts a rectangular frame around CONTENTS. The reference point is the +bottom left corner of the frame. In contrast to '\framebox' (*note +\framebox (picture)::), this command puts no extra space is put between +the frame and the object. It is fragile (*note \protect::). + + +File: latex2e.info, Node: \dashbox, Prev: \frame, Up: picture + +8.19.16 '\dashbox' +------------------ + +Synopsis: + + \dashbox{DASH-LEN}(RECT-WIDTH,RECT-HEIGHT){TEXT} + \dashbox{DASH-LEN}(RECT-WIDTH,RECT-HEIGHT)[POSITION]{TEXT} + + Create a dashed rectangle around TEXT. This command fits with the +'picture' environment, although you can use it outside of there, because +lengths are numbers specifying the distance in terms of the +'\unitlength' (*note picture::). + + The required arguments are: dashes are DASH-LEN units long, with the +same length gap, and the rectangle has overall width RECT-WIDTH units +and height RECT-HEIGHT units. + + The optional argument POSITION specifies the position of TEXT; see +*note \makebox (picture):: for the values that it can take. + + This shows that you can use non-integer value for DASH-LEN. + + \put(0,0){\dashbox{0.1}(5,0.5){My hovercraft is full of eels.}} + +Each dash will be '0.1\unitlength' long, the box's width is +'5\unitlength' and its height is '0.5\unitlength'. + + As in that example, a dashed box looks best when RECT-WIDTH and +RECT-HEIGHT are multiples of the DASH-LEN. + + +File: latex2e.info, Node: quotation & quote, Next: tabbing, Prev: picture, Up: Environments + +8.20 'quotation' & 'quote' +========================== Synopsis: \begin{quotation} - TEXT + TEXT \end{quotation} - or +or \begin{quote} - TEXT + TEXT \end{quote} - Include a quotation. - - In both environments, margins are indented on both sides by -'\leftmargin' and the text is justified at both. As with the main text, -leaving a blank line produces a new paragraph. + Include a quotation. Both environments indent margins on both sides +by '\leftmargin' and the text is right-justified. - To compare the two: in the 'quotation' environment, paragraphs are -indented by 1.5em and the space between paragraphs is small, '0pt plus -1pt'. In the 'quote' environment, paragraphs are not indented and there -is vertical space between paragraphs (it is the rubber length -'\parsep'). Thus, the 'quotation' environment may be more suitable for -documents where new paragraphs are marked by an indent rather than by a -vertical separation. In addition, 'quote' may be more suitable for a -short quotation or a sequence of short quotations. + They differ in how they treat paragraphs. In the 'quotation' +environment, paragraphs are indented by 1.5em and the space between +paragraphs is small, '0pt plus 1pt'. In the 'quote' environment, +paragraphs are not indented and there is vertical space between +paragraphs (it is the rubber length '\parsep'). - \begin{quotation} - \it Four score and seven years ago + \begin{quotation} \small\it + Four score and seven years ago ... shall not perish from the earth. - \hspace{1em plus 1fill}---Abraham Lincoln + \hspace{1em plus 1fill}---Abraham Lincoln \end{quotation} -File: latex2e.info, Node: tabbing, Next: table, Prev: quotation and quote, Up: Environments +File: latex2e.info, Node: tabbing, Next: table, Prev: quotation & quote, Up: Environments 8.21 'tabbing' ============== @@ -3905,10 +4946,11 @@ Synopsis: ... \end{tabbing} - The 'tabbing' environment aligns text in columns. It works by -setting tab stops and tabbing to them much as was done on a typewriter. -It is best suited for cases where the width of each column is constant -and known in advance. + Align text in columns, by setting tab stops and tabbing to them much +as was done on a typewriter. This is less often used than the +environments 'tabular' (*note tabular::) or 'array' (*note array::) +because in those the width of each column need not be constant and need +not be known in advance. This example has a first line where the tab stops are set to explicit widths, ended by a '\kill' command (which is described below): @@ -4026,7 +5068,8 @@ They are all fragile (*note \protect::). end;\\ \end{tabbing} - The output looks like this: +The output looks like this. + function fact(n : integer) : integer; begin if n > 1 then @@ -4035,11 +5078,11 @@ They are all fragile (*note \protect::). fact := 1; end; - (The above example is just for illustration of the environment. To -actually typeset computer code in typewriter like this, a verbatim -environment (*note verbatim::) would normally suffice. For -pretty-printed code, there are quite a few packages, including -'algorithm2e', 'fancyvrb', 'listings', and 'minted'.) +This example is just for illustration of the environment. To actually +typeset computer code in typewriter like this, a verbatim environment +(*note verbatim::) would normally be best. For pretty-printed code, +there are quite a few packages, including 'algorithm2e', 'fancyvrb', +'listings', and 'minted'. File: latex2e.info, Node: table, Next: tabular, Prev: tabbing, Up: Environments @@ -4050,27 +5093,45 @@ File: latex2e.info, Node: table, Next: tabular, Prev: tabbing, Up: Environme Synopsis: \begin{table}[PLACEMENT] - table body - \caption[LOFTITLE]{TITLE} - \label{LABEL} + TABLE BODY + \caption[LOFTITLE]{TITLE} % optional + \label{LABEL} % also optional \end{table} - A class of floats (*note Floats::). Because they cannot be split -across pages, they are not typeset in sequence with the normal text but -instead are "floated" to a convenient place, such as the top of a + A class of floats (*note Floats::). They cannot be split across +pages and so they are not typeset in sequence with the normal text but +instead are floated to a convenient place, such as the top of a following page. + This example 'table' environment contains a 'tabular' + + \begin{table} + \centering\small + \begin{tabular}{ll} + \multicolumn{1}{c}{\textit{Author}} + &\multicolumn{1}{c}{\textit{Piece}} \\ \hline + Bach &Cello Suite Number 1 \\ + Beethoven &Cello Sonata Number 3 \\ + Brahms &Cello Sonata Number 1 + \end{tabular} + \caption{Top cello pieces} + \label{tab:cello} + \end{table} + +but you can put many different kinds of content in a 'table', including +text, LaTeX commands, etc. + For the possible values of PLACEMENT and their effect on the float placement algorithm, see *note Floats::. - The table body is typeset in a 'parbox' of width '\textwidth' and so -it can contain text, commands, etc. + The table body is typeset in a 'parbox' of width '\textwidth'. It +can contain text, commands, graphics, etc. The label is optional; it is used for cross references (*note Cross -references::). The optional '\caption' command specifies caption text -for the table. By default it is numbered. If LOTTITLE is present, it -is used in the list of tables instead of TITLE (*note Tables of -contents::). +references::). The '\caption' command is also optional. It specifies +caption text for the table. By default it is numbered. If its optional +LOTTITLE is present then that text is used in the list of tables instead +of TITLE (*note Table of contents etc.::). In this example the table and caption will float to the bottom of a page, unless it is pushed to a float page at the end. @@ -4095,20 +5156,20 @@ File: latex2e.info, Node: tabular, Next: thebibliography, Prev: table, Up: E Synopsis: \begin{tabular}[POS]{COLS} - column 1 entry &column 2 entry ... &column n entry \\ + COLUMN 1 ENTRY &COLUMN 2 ENTRY ... &COLUMN N ENTRY \\ ... \end{tabular} or \begin{tabular*}{WIDTH}[POS]{COLS} - column 1 entry &column 2 entry ... &column n entry \\ + COLUMN 1 ENTRY &COLUMN 2 ENTRY ... &COLUMN N ENTRY \\ ... \end{tabular*} - These environments produce a table, a box consisting of a sequence of -horizontal rows. Each row consists of items that are aligned vertically -in columns. This illustrates many of the features. + Produce a table, a box consisting of a sequence of horizontal rows. +Each row consists of items that are aligned vertically in columns. This +illustrates many of the features. \begin{tabular}{l|l} \textit{Player name} &\textit{Career home runs} \\ @@ -4117,23 +5178,16 @@ in columns. This illustrates many of the features. Babe Ruth &714 \end{tabular} - The vertical format of two left-aligned columns, with a vertical bar -between them, is specified in 'tabular''s argument '{l|l}'. Columns are -separated with an ampersand '&'. A horizontal rule between two rows is -created with '\hline'. The end of each row is marked with a double -backslash '\\'. This '\\' is optional after the last row unless an -'\hline' command follows, to put a rule below the table. +The output will have two left-aligned columns with a vertical bar +between them. This is specified in 'tabular''s argument '{l|l}'. Put +the entries into different columns by separating them with an ampersand, +'&'. The end of each row is marked with a double backslash, '\\'. Put +a horizontal rule below a row, after a double backslash, with '\hline'. +This '\\' is optional after the last row unless an '\hline' command +follows, to put a rule below the table. The required and optional arguments to 'tabular' consist of: -WIDTH - Required for 'tabular*', not allowed for 'tabular'. Specifies the - width of the 'tabular*' environment. The space between columns - should be rubber, as with '@{\extracolsep{\fill}}', to allow the - table to stretch or shrink to make the specified width, or else you - are likely to get the 'Underfull \hbox (badness 10000) in alignment - ...' warning. - POS Optional. Specifies the table's vertical position. The default is to align the table so its vertical center matches the baseline of @@ -4163,27 +5217,29 @@ COLS A vertical line the full height and depth of the environment. '@{TEXT OR SPACE}' - This inserts TEXT OR SPACE at this location in every row. The - TEXT OR SPACE material is typeset in LR mode. This text is - fragile (*note \protect::). + Insert TEXT OR SPACE at this location in every row. The TEXT + OR SPACE material is typeset in LR mode. This text is fragile + (*note \protect::). - This specifier is optional: with no @-expression, LaTeX's + If between two columns there is no @-expression then LaTeX's 'book', 'article', and 'report' classes will put on either side of each column a space of length '\tabcolsep', which by - default is '6pt'. That is, by default adjacent columns are - separated by 12pt (so '\tabcolsep' is misleadingly-named since - it is not the separation between tabular columns). By - implication, a space of 6pt also comes before the first column + default is 6pt. That is, by default adjacent columns are + separated by 12pt (so '\tabcolsep' is misleadingly named since + it is only half of the separation between tabular columns). + In addition, a space of 6pt also comes before the first column and after the final column, unless you put a '@{...}' or '|' there. - If you override the default and use an @-expression then you - must insert any desired space yourself, as in - '@{\hspace{1em}}'. + If you override the default and use an @-expression then LaTeX + does not insert '\tabcolsep' so you must insert any desired + space yourself, as in '@{\hspace{1em}}'. - An empty expression '@{}' will eliminate the space, including - the space at the start or end, as in the example below where - the tabular lines need to lie on the left margin. + An empty expression '@{}' will eliminate the space. In + particular, sometimes you want to eliminate the the space + before the first column or after the last one, as in the + example below where the tabular lines need to lie on the left + margin. \begin{flushleft} \begin{tabular}{@{}l} @@ -4191,9 +5247,9 @@ COLS \end{tabular} \end{flushleft} - This example shows text, a decimal point, between the columns, - arranged so the numbers in the table are aligned on that - decimal point. + The next example shows text, a decimal point between the + columns, arranged so the numbers in the table are aligned on + it. \begin{tabular}{r@{$.$}l} $3$ &$14$ \\ @@ -4203,42 +5259,50 @@ COLS An '\extracolsep{WD}' command in an @-expression causes an extra space of width WD to appear to the left of all subsequent columns, until countermanded by another - '\extracolsep' command. Unlike ordinary intercolumn space, - this extra space is not suppressed by an @-expression. An - '\extracolsep' command can be used only in an @-expression in - the 'cols' argument. Below, LaTeX inserts the right amount of + '\extracolsep'. Unlike ordinary intercolumn space, this extra + space is not suppressed by an @-expression. An '\extracolsep' + command can be used only in an @-expression in the 'cols' + argument. Below, LaTeX inserts the right amount of intercolumn space to make the entire table 4 inches wide. - \begin{center} - \begin{tabular*}{4in}{l@{\ \ldots\extracolsep{\fill}}l} - Seven times down, eight times up - &such is life! - \end{tabular*} - \end{center} + \begin{tabular*}{4in}{l@{\extracolsep{\fill}}l} + Seven times down, eight times up \ldots + &such is life! + \end{tabular*} To insert commands that are automatically executed before a given column, load the 'array' package and use the '>{...}' specifier. 'p{WD}' - Each item in the column is typeset in a parbox of width WD. - - Note that a line break double backslash '\\' may not appear in - the item, except inside an environment like 'minipage', - 'array', or 'tabular', or inside an explicit '\parbox', or in - the scope of a '\centering', '\raggedright', or '\raggedleft' - declaration (when used in a 'p'-column element these - declarations must appear inside braces, as with '{\centering - .. \\ ..}'). Otherwise LaTeX will misinterpret the double - backslash as ending the row. + Each item in the column is typeset in a parbox of width WD, as + if it were the argument of a '\parbox[t]{wd}{...}' command. + + A line break double backslash '\\' may not appear in the item, + except inside an environment like 'minipage', 'array', or + 'tabular', or inside an explicit '\parbox', or in the scope of + a '\centering', '\raggedright', or '\raggedleft' declaration + (when used in a 'p'-column element these declarations must + appear inside braces, as with '{\centering .. \\ ..}'). + Otherwise LaTeX will misinterpret the double backslash as + ending the row. Instead, to get a line break in there use + '\newline' (*note \newline::). '*{NUM}{COLS}' Equivalent to NUM copies of COLS, where NUM is a positive - integer and COLS is a list of specifiers. Thus - '\begin{tabular}{|*{3}{l|r}|}' is equivalent to + integer and COLS is a list of specifiers. Thus the specifier + '\begin{tabular}{|*{3}{l|r}|}' is equivalent to the specifier '\begin{tabular}{|l|rl|rl|r|}'. Note that COLS may contain another '*'-expression. +WIDTH + Required for 'tabular*', not allowed for 'tabular'. Specifies the + width of the 'tabular*' environment. The space between columns + should be rubber, as with '@{\extracolsep{\fill}}', to allow the + table to stretch or shrink to make the specified width, or else you + are likely to get the 'Underfull \hbox (badness 10000) in alignment + ...' warning. + Parameters that control formatting: '\arrayrulewidth' @@ -4291,8 +5355,9 @@ argument TEXT gives the contents of that entry. spanned by the single heading 'Name'. \begin{tabular}{lccl} - \textit{ID} &\multicolumn{2}{c}{\textit{Name}} &\textit{Age} \\ \hline % row one - 978-0-393-03701-2 &O'Brian &Patrick &55 \\ % row two + \textit{ID} &\multicolumn{2}{c}{\textit{Name}} &\textit{Age} \\ + \hline + 978-0-393-03701-2 &O'Brian &Patrick &55 \\ ... \end{tabular} @@ -4317,12 +5382,12 @@ details the exact behavior. &z % entry four \end{tabular} - Before the first entry the output will not have a vertical rule -because the '\multicolumn' has the COLS specifier 'r' with no initial -vertical bar. Between entry one and entry two there will be a vertical -rule; although the first COLS does not have an ending vertical bar, the -second COLS does have a starting one. Between entry two and entry three -there is a single vertical rule; despite that the COLS in both of the +Before the first entry the output will not have a vertical rule because +the '\multicolumn' has the COLS specifier 'r' with no initial vertical +bar. Between entry one and entry two there will be a vertical rule; +although the first COLS does not have an ending vertical bar, the second +COLS does have a starting one. Between entry two and entry three there +is a single vertical rule; despite that the COLS in both of the surrounding 'multicolumn''s call for a vertical rule, you only get one rule. Between entry three and entry four there is no vertical rule; the default calls for one but the COLS in the entry three '\multicolumn' @@ -4350,7 +5415,7 @@ center those two columns on the page range en-dash. Impressionistic &1875 &1925 \end{tabular} - Note that although the 'tabular' specification by default puts a +Note that although the 'tabular' specification by default puts a vertical rule between the first and second columns, because there is no vertical bar in the COLS of either of the first row's '\multicolumn' commands, no rule appears in the first row. @@ -4366,22 +5431,22 @@ full height and depth of an entry's row. Can also be used in an @-expression, although its synonym vertical bar '|' is more common. This command is rarely used in the body of a table; typically a table's vertical lines are specified in 'tabular''s COLS argument and overridden -as needed with '\multicolumn'. +as needed with '\multicolumn' (*note tabular::). - This example illustrates some pitfalls. In the first line's second -entry the '\hfill' moves the '\vline' to the left edge of the cell. But -that is different than putting it halfway between the two columns, so in -that row between the first and second columns there are two vertical + The example below illustrates some pitfalls. In the first row's +second entry the '\hfill' moves the '\vline' to the left edge of the +cell. But that is different than putting it halfway between the two +columns, so between the first and second columns there are two vertical rules, with the one from the '{c|cc}' specifier coming before the one -produced by the '\vline\hfill'. In contrast, the first line's third +produced by the '\vline\hfill'. In contrast, the first row's third entry shows the usual way to put a vertical bar between two columns. In -the second line, the 'ghi' is the widest entry in its column so in the +the second row, the 'ghi' is the widest entry in its column so in the '\vline\hfill' the '\hfill' has no effect and the vertical line in that entry appears immediately next to the 'g', with no whitespace. \begin{tabular}{c|cc} - x &\vline\hfill y &\multicolumn{1}{|r}{z} \\ - abc &def &\vline\hfill ghi + x &\vline\hfill y &\multicolumn{1}{|r}{z} \\ % row 1 + abc &def &\vline\hfill ghi % row 2 \end{tabular} @@ -4394,10 +5459,10 @@ Synopsis: \cline{I-J} - Draw a horizontal rule in an 'array' or 'tabular' environment -beginning in column I and ending in column J. The dash '-' must appear -in the mandatory argument. To span a single column use the number -twice. + In an 'array' or 'tabular' environment, draw a horizontal rule +beginning in column I and ending in column J. The dash, '-', must +appear in the mandatory argument. To span a single column use the +number twice, as with '\cline{2-2}'. This example puts two horizontal lines between the first and second rows, one line in the first column only, and the other spanning the @@ -4415,7 +5480,7 @@ File: latex2e.info, Node: \hline, Prev: \cline, Up: tabular 8.23.4 '\hline' --------------- -Draws a horizontal line the width of the enclosing 'tabular' or 'array' +Draw a horizontal line the width of the enclosing 'tabular' or 'array' environment. It's most commonly used to draw a line at the top, bottom, and between the rows of a table. @@ -4438,34 +5503,52 @@ File: latex2e.info, Node: thebibliography, Next: theorem, Prev: tabular, Up: Synopsis: \begin{thebibliography}{WIDEST-LABEL} - \bibitem[LABEL]{CITE_KEY} - ... + \bibitem[LABEL]{CITE_KEY} + ... \end{thebibliography} - The 'thebibliography' environment produces a bibliography or -reference list. - - In the 'article' class, this reference list is labelled 'References' -and the label is stored in macro '\refname'; in the 'report' class, it -is labelled 'Bibliography' and the label is stored in macro '\bibname'. + Produce a bibliography or reference list. There are two ways to +produce bibliographic lists. This environment is suitable when you have +only a few references and can maintain the list by hand. *Note Using +BibTeX:: for a more sophisticated approach. - You can change the label by redefining the command '\refname' or -'\bibname', whichever is applicable depending on the class: + This shows the environment with two entries. - * For standard classes whose top level sectioning is '\chapter' (such - as 'book' and 'report'), the label is in the macro '\bibname'; - - * For standard classes whose the top level sectioning is '\section' - (such as 'article'), the label is in macro '\refname'. + This work is based on \cite{latexdps}. + Together they are \cite{latexdps, texbook}. + ... + \begin{thebibliography}{9} + \bibitem{latexdps} + Leslie Lamport. + \textit{\LaTeX{}: a document preparation system}. + Addison-Wesley, Reading, Massachusetts, 1993. + \bibitem{texbook} + Donald Ervin Knuth. + \textit{The \TeX book}. + Addison-Wesley, Reading, Massachusetts, 1983. + \end{thebibliography} - Typically it is neither necessary nor desirable to directly redefine -'\refname' or '\bibname'; language support packages like 'babel' do -this. +This styles the first reference as '[1] Leslie ...', and so that +'\cite{latexdps}' produces the matching '... based on [1]'. The second +'\cite' produces '[1, 2]'. You must compile the document twice to +resolve these references. + + The mandatory argument WIDEST-LABEL is text that, when typeset, is as +wide as the widest item label produced by the '\bibitem' commands. The +tradition is to use '9' for bibliographies with less than 10 references, +'99' for ones with less than 100, etc. + + The bibliographic list is headed by a title such as 'Bibliography'. +To change it there are two cases. In the 'book' and 'report' classes, +where the top level sectioning is '\chapter' and the default title is +'Bibliography', that title is in the macro '\bibname'. For 'article', +where the class's top level sectioning is '\section' and the default is +'References', the title is in macro '\refname'. Change it by redefining +the command, as with '\renewcommand{\refname}{Cited references}' after +'\begin{document}'. - The mandatory WIDEST-LABEL argument is text that, when typeset, is as -wide as the widest item label produced by the '\bibitem' commands. It -is typically given as '9' for bibliographies with less than 10 -references, '99' for ones with less than 100, etc. + Language support packages such as 'babel' will automatically redefine +'\refname' or '\bibname' to fit the selected language. * Menu: @@ -4482,19 +5565,59 @@ File: latex2e.info, Node: \bibitem, Next: \cite, Up: thebibliography Synopsis: + \bibitem{CITE_KEY} + +or + \bibitem[LABEL]{CITE_KEY} - The '\bibitem' command generates an entry labelled by LABEL. If the -LABEL argument is missing, a number is automatically generated using the -'enumi' counter. The CITE_KEY is a "citation key" consisting in any -sequence of letters, numbers, and punctuation symbols not containing a -comma. + Generate an entry labeled by LABEL. The default is for LaTeX to +generates a number using the 'enumi' counter. The "citation key" +CITE_KEY is a string of letters, numbers, and punctuation symbols (but +not comma). + + *Note thebibliography:: for an example. + + The optional LABEL changes the default label from an integer to the +given string. With this + + \begin{thebibliography} + \bibitem[Lamport 1993]{latexdps} + Leslie Lamport. + \textit{\LaTeX{}: a document preparation system}. + Addison-Wesley, Reading, Massachusetts, 1993. + \bibitem{texbook} + Donald Ervin Knuth. + \textit{The \TeX book}. + Addison-Wesley, Reading, Massachusetts, 1983. + \end{thebibliography} - This command writes an entry to the '.aux' file containing the item's -CITE_KEY and LABEL. When the '.aux' file is read by the -'\begin{document}' command, the item's LABEL is associated with -'cite_key', causing references to CITE_KEY with a '\cite' command (*note -\cite::) to produce the associated LABEL. +the first entry will be styled as '[Lamport 1993] Leslie ...' (The +amount of horizontal space that LaTeX leaves for the label depends on +the WIDEST-LABEL argument of the 'thebibliography' environment; see +*note thebibliography::.) Similarly, '... based on \cite{latexdps}' +will produce '... based on [Lamport 1994]'. + + If you mix '\bibitem' entries having a LABEL with those that do not +then LaTeX will number the unlabelled ones sequentially. In the example +above the 'texbook' entry will appear as '[1] Donald ...', despite that +it is the second entry. + + If you use the same CITE_KEY twice then you get 'LaTeX Warning: There +were multiply-defined labels'. + + Under the hood, LaTeX remembers the CITE_KEY and LABEL information +because '\bibitem' writes it to the auxiliary file 'FILENAME.aux'. For +instance, the above example causes '\bibcite{latexdps}{Lamport, 1993}' +and '\bibcite{texbook}{1}' to appear in that file. The '.aux' file is +read by the '\begin{document}' command and then the information is +available for '\cite' commands. This explains why you need to run LaTeX +twice to resolve references: once to write it out and once to read it +in. + + Because of this two-pass algorithm, when you add a '\bibitem' or +change its CITE_KEY you may get 'LaTeX Warning: Label(s) may have +changed. Rerun to get cross-references right'. Fix it by recompiling. File: latex2e.info, Node: \cite, Next: \nocite, Prev: \bibitem, Up: thebibliography @@ -4504,15 +5627,47 @@ File: latex2e.info, Node: \cite, Next: \nocite, Prev: \bibitem, Up: thebibli Synopsis: + \cite{KEYS} + +or + \cite[SUBCITE]{KEYS} - The KEYS argument is a list of one or more citation keys (*note -\bibitem::), separated by commas. This command generates an in-text -citation to the references associated with KEYS by entries in the '.aux' -file. + Generate as output a citation to the references associated with KEYS. +The mandatory KEYS is a citation key, or a comma-separated list of +citation keys (*note \bibitem::). - The text of the optional SUBCITE argument appears after the citation. -For example, '\cite[p.~314]{knuth}' might produce '[Knuth, p. 314]'. + This + + The ultimate source is \cite{texbook}. + ... + \begin{thebibliography} + \bibitem{texbook} + Donald Ervin Knuth. + \textit{The \TeX book}. + Addison-Wesley, Reading, Massachusetts, 1983. + \end{thebibliography} + +produces the output '... source is [1]'. + + The optional argument SUBCITE is appended to the citation. For +example, 'See 14.3 in \cite[p.~314]{texbook}' might produce 'See 14.3 in +[1, p. 314]'. + + If KEYS is not in your bibliography information then you get 'LaTeX +Warning: There were undefined references', and in the output the +citation shows as a boldface question mark between square brackets. +There are two possible causes. If you have mistyped something, as in +'\cite{texbok}' then you need to correct the spelling. On the other +hand, if you have just added or modified the bibliographic information +and so changed the '.aux' file (*note \bibitem::) then the fix may be to +just run LaTeX again. + + In addition to what appears in the output, '\cite' writes information +to the auxiliary file 'FILENAME.aux'. For instance, '\cite{latexdps}' +writes '\citation{latexdps}' to that file. This information is used by +BibTeX to include in your reference list only those works that you have +actually cited; see *note \nocite:: also. File: latex2e.info, Node: \nocite, Next: Using BibTeX, Prev: \cite, Up: thebibliography @@ -4524,8 +5679,13 @@ Synopsis: \nocite{KEYS} - The '\nocite' command produces no text, but writes KEYS, which is a -list of one or more citation keys, to the '.aux' file. + Produces no output but writes KEYS to the auxiliary file +'DOC-FILENAME.aux'. + + The mandatory argument KEYS is a comma-separated list of one or more +citation keys (*note \bibitem::). This information is used by BibTeX to +include these works in your reference list even though you have not +cited them (*note \cite::). File: latex2e.info, Node: Using BibTeX, Prev: \nocite, Up: thebibliography @@ -4533,39 +5693,60 @@ File: latex2e.info, Node: Using BibTeX, Prev: \nocite, Up: thebibliography 8.24.4 Using BibTeX ------------------- -If you use the BibTeX program by Oren Patashnik (highly recommended if -you need a bibliography of more than a couple of titles) to maintain -your bibliography, you don't use the 'thebibliography' environment -(*note thebibliography::). Instead, you include the lines +As described in 'thebibliography' (*note thebibliography::), a +sophisticated approach to managing bibliographies is provided by the +BibTeX program. This is only an introduction; see the full +documentation on CTAN. + + With BibTeX, you don't use 'thebibliography' (*note +thebibliography::). Instead, include these lines. \bibliographystyle{BIBSTYLE} - \bibliography{BIBFILE1,BIBFILE2} + \bibliography{BIBFILE1, BIBFILE2, ...} - The '\bibliographystyle' command does not produce any output of its -own. Rather, it defines the style in which the bibliography will be -produced: BIBSTYLE refers to a file BIBSTYLE'.bst', which defines how -your citations will look. The standard BIBSTYLE names distributed with -BibTeX are: +The BIBSTYLE refers to a file 'BIBSTYLE.bst', which defines how your +citations will look. The standard BIBSTYLE's distributed with BibTeX +are: 'alpha' - Sorted alphabetically. Labels are formed from name of author and - year of publication. + Labels are formed from name of author and year of publication. The + bibliographic items are sorted alphabetically. 'plain' - Sorted alphabetically. Labels are numeric. + Labels are integers. Sort the bibliographic items alphabetically. 'unsrt' Like 'plain', but entries are in order of citation. 'abbrv' Like 'plain', but more compact labels. - In addition, numerous other BibTeX style files exist tailored to the -demands of various publications. See +Many, many other BibTeX style files exist, tailored to the demands of +various publications. See CTAN's listing <http://mirror.ctan.org/biblio/bibtex/contrib>. The '\bibliography' command is what actually produces the -bibliography. The argument to '\bibliography' refers to files named -'BIBFILE1.bib', 'BIBFILE2.bib', ..., which should contain your database -in BibTeX format. Only the entries referred to via '\cite' and -'\nocite' will be listed in the bibliography. +bibliography. Its argument is a comma-separated list, referring to +files named 'BIBFILE1.bib', 'BIBFILE2.bib', ... These contain your +database in BibTeX format. This shows a typical couple of entries in +that format. + + @book{texbook, + title = {The {{\TeX}}book}, + author = {D.E. Knuth}, + isbn = {0201134489}, + series = {Computers \& typesetting}, + year = {1983}, + publisher = {Addison-Wesley} + } + @book{sexbook, + author = {W.H. Masters and V.E. Johnson}, + title = {Human Sexual Response}, + year = {1966}, + publisher = {Bantam Books} + } + + Only the bibliographic entries referred to via '\cite' and '\nocite' +will be listed in the document's bibliography. Thus you can keep all +your sources together in one file, or a small number of files, and rely +on BibTeX to include in this document only those that you used. File: latex2e.info, Node: theorem, Next: titlepage, Prev: thebibliography, Up: Environments @@ -4576,12 +5757,29 @@ File: latex2e.info, Node: theorem, Next: titlepage, Prev: thebibliography, U Synopsis: \begin{theorem} - THEOREM-TEXT + THEOREM BODY \end{theorem} - The 'theorem' environment produces "Theorem N" in boldface followed -by THEOREM-TEXT, where the numbering possibilities for N are described -under '\newtheorem' (*note \newtheorem::). + Produces 'Theorem N' in boldface followed by THEOREM BODY in italics. +The numbering possibilities for N are described under '\newtheorem' +(*note \newtheorem::). + + \newtheorem{lem}{Lemma} % in preamble + \newtheorem{thm}{Theorem} + ... + \begin{lem} % in document body + text of lemma + \end{lem} + + The next result follows immediately. + \begin{thm}[Gauss] % put `Gauss' in parens after theorem head + text of theorem + \end{thm} + + Most new documents use the packages 'amsthm' and 'amsmath' from the +American Mathematical Society. Among other things these packages +include a large number of options for theorem environments, such as +styling options. File: latex2e.info, Node: titlepage, Next: verbatim, Prev: theorem, Up: Environments @@ -4595,14 +5793,11 @@ Synopsis: ... text and spacing ... \end{titlepage} - Create a title page, a page with no printed page number or heading. -The following page will be numbered page one. + Create a title page, a page with no printed page number or heading +and with succeeding pages numbered starting with page one. - To instead produce a standard title page without a 'titlepage' -environment you can use '\maketitle' (*note \maketitle::). - - Notice in this example that all formatting, including vertical -spacing, is left to the author. + In this example all formatting, including vertical spacing, is left +to the author. \begin{titlepage} \vspace*{\stretch{1}} @@ -4625,6 +5820,9 @@ spacing, is left to the author. \vspace{\stretch{2}} \end{titlepage} + To instead produce a standard title page without a 'titlepage' +environment, use '\maketitle' (*note \maketitle::). + File: latex2e.info, Node: verbatim, Next: verse, Prev: titlepage, Up: Environments @@ -4637,14 +5835,34 @@ Synopsis: LITERAL-TEXT \end{verbatim} - The 'verbatim' environment is a paragraph-making environment in which -LaTeX produces exactly what you type in; for instance the '\' character -produces a printed '\'. It turns LaTeX into a typewriter with carriage -returns and blanks having the same effect that they would on a -typewriter. + A paragraph-making environment in which LaTeX produces as output +exactly what you type as input. For instance inside LITERAL-TEXT the +backslash '\' character does not start commands, it produces a printed +'\', and carriage returns and blanks are taken literally. The output +appears in a monospaced typewriter-like font ('\tt'). + + \begin{verbatim} + Symbol swearing: %&$#?!. + \end{verbatim} - The 'verbatim' environment uses a monospaced typewriter-like font -('\tt'). + The only restriction on 'literal-text' is that it cannot include the +string '\end{verbatim}'. + + You cannot use the verbatim environment in the argument to macros, +for instance in the argument to a '\section'. This is not the same as +commands being fragile (*note \protect::), instead it just cannot appear +there. (But the 'cprotect' package can help with this.) + + One common use of verbatim input is to typeset computer code. There +are packages that are an improvement the 'verbatim' environment. For +instance, one improvement is to allow the verbatim inclusion of external +files, or parts of those files. Such packages include 'listings', and +'minted'. + + A package that provides many more options for verbatim environments +is 'fancyvrb'. Another is 'verbatimbox'. + + For a list of all the relevant packages, see CTAN. * Menu: @@ -4658,17 +5876,47 @@ File: latex2e.info, Node: \verb, Up: verbatim Synopsis: - \verbCHARLITERAL-TEXTCHAR - \verb*CHARLITERAL-TEXTCHAR + \verb CHAR LITERAL-TEXT CHAR + \verb* CHAR LITERAL-TEXT CHAR + + Typeset LITERAL-TEXT as it is input, including special characters and +spaces, using the typewriter ('\tt') font. + + This example shows two different invocations of '\verb'. + + This is \verb!literally! the biggest pumpkin ever. + And this is the best squash, \verb+literally!+ + +The first '\verb' has its LITERAL-TEXT surrounded with exclamation +point, '!'. The second instead uses plus, '+', because the exclamation +point is part of 'literal-text'. + + The single-character delimiter CHAR surrounds LITERAL-TEXT -- it must +be the same character before and after. No spaces come between '\verb' +or '\verb*' and CHAR, or between CHAR and LITERAL-TEXT, or between +LITERAL-TEXT and the second occurrence of CHAR (the synopsis shows a +space only to distinguish one component from the other). The delimiter +must not appear in LITERAL-TEXT. The LITERAL-TEXT cannot include a line +break. + + The '*'-form differs only in that spaces are printed with a visible +space character. + + The output from this will include a character showing the spaces. + + The commands's first argument is \verb*!filename with extension! and ... - The '\verb' command typesets LITERAL-TEXT as it is input, including -special characters and spaces, using the typewriter ('\tt') font. No -spaces are allowed between '\verb' or '\verb*' and the delimiter CHAR, -which begins and ends the verbatim text. The delimiter must not appear -in LITERAL-TEXT. + For typesetting Internet addresses, urls, the package 'url' provides +an option that is better than the '\verb' command, since it allows line +breaks. - The '*'-form differs only in that spaces are printed with a "visible -space" character. + For computer code there are many packages with advantages over +'\verb'. One is 'listings', another is 'minted'. + + You cannot use '\verb' in the argument to a macro, for instance in +the argument to a '\section'. It is not a question of '\verb' being +fragile (*note \protect::), instead it just cannot appear there. (But +the 'cprotect' package can help with this.) File: latex2e.info, Node: verse, Prev: verbatim, Up: Environments @@ -4679,18 +5927,35 @@ File: latex2e.info, Node: verse, Prev: verbatim, Up: Environments Synopsis: \begin{verse} - LINE1 \\ - LINE2 \\ - ... + LINE1 \\ + LINE2 \\ + ... \end{verse} - The 'verse' environment is designed for poetry, though you may find -other uses for it. + An environment for poetry. + + Here are two lines from Shakespeare's Romeo and Juliet. + + Then plainly know my heart's dear love is set \\ + On the fair daughter of rich Capulet. + + Separate the lines of each stanza with '\\', and use one or more +blank lines to separate the stanzas. - The margins are indented on the left and the right, paragraphs are -not indented, and the text is not justified. Separate the lines of each -stanza with '\\', and use one or more blank lines to separate the -stanzas. + \begin{verse} + \makebox[\linewidth][c]{\textit{Shut Not Your Doors} ---Walt Whitman} + \\[1\baselineskip] + Shut not your doors to me proud libraries, \\ + For that which was lacking on all your well-fill'd shelves, \\ + \qquad yet needed most, I bring, \\ + Forth from the war emerging, a book I have made, \\ + The words of my book nothing, the drift of it every thing, \\ + A book separate, not link'd with the rest nor felt by the intellect, \\ + But you ye untold latencies will thrill to every page. + \end{verse} + +The output has margins indented on the left and the right, paragraphs +are not indented, and the text is not right-justified. File: latex2e.info, Node: Line breaking, Next: Page breaking, Prev: Environments, Up: Top @@ -4706,15 +5971,20 @@ lines must be broken into pages). LaTeX usually does the line (and page) breaking in the text body for you but in some environments you manually force line breaks. + A common workflow is to get a final version of the document content +before taking a final pass through and considering line breaks (and page +breaks). This differs from word processing, where you are formatting +text as you input it. Putting these off until the end prevents a lot of +fiddling with breaks that will change anyway. + * Menu: * \\:: Start a new line. * \obeycr & \restorecr:: Make each input line start a new output line. * \newline:: Break the line * \- (hyphenation):: Insert explicit hyphenation. -* \discretionary:: Insert explicit hyphenation with control of hyphen character. -* \fussy:: Be fussy about line breaking. -* \sloppy:: Be sloppy about line breaking. +* \discretionary:: Explicit control of the hyphen character. +* \fussy & \sloppy:: Be more or less particular with line breaking. * \hyphenation:: Tell LaTeX how to hyphenate a word. * \linebreak & \nolinebreak:: Forcing & avoiding line breaks. @@ -4724,35 +5994,65 @@ File: latex2e.info, Node: \\, Next: \obeycr & \restorecr, Up: Line breaking 9.1 '\\' ======== -Synopsis: +Synopsis, one of: + \\ \\[MORESPACE] - or +or one of: + \\* \\*[MORESPACE] - Start a new line. The optional argument MORESPACE specifies extra -vertical space to be insert before the next line. This can be a -negative length. The text before the break is set at its normal length, -that is, it is not stretched to fill out the line width. - - Explicit line breaks in the text body are unusual in LaTeX. In -particular, to start a new paragraph instead leave a blank line. This -command is mostly used outside of the main flow of text such as in a -'tabular' or 'array' environment. - - Under ordinary circumstances (e.g., outside of a 'p{...}' column in a -'tabular' environment) the '\newline' command is a synonym for '\\' -(*note \newline::). + End the current line. The optional argument MORESPACE specifies +extra vertical space to be inserted before the next line. This is a +rubber length (*note Lengths::) and can be negative. The text before +the line break is set at its normal length, that is, it is not stretched +to fill out the line width. This command is fragile (*note \protect::). - In addition to starting a new line, the starred form '\\*' tells -LaTeX not to start a new page between the two lines, by issuing a -'\nobreak'. + The starred form, '\\*', tells LaTeX not to start a new page between +the two lines, by issuing a '\nobreak'. \title{My story: \\[0.25in] a tale of woe} + Explicit line breaks in the main text body are unusual in LaTeX. In +particular, don't start new paragraphs with '\\'. Instead leave a blank +line between the two paragraphs. And don't put in a sequence of '\\''s +to make vertical space. Instead use '\vspace{LENGTH}', or +'\leavevmode\vspace{LENGTH}', or '\vspace*{LENGTH}' if you want the +space to not be thrown out at the top of a new page (*note \vspace::). + + The '\\' command is mostly used outside of the main flow of text such +as in a 'tabular' or 'array' environment or in an equation environment. + + The '\\' command is a synonym for '\newline' (*note \newline::) under +ordinary circumstances (an example of an exception is the 'p{...}' +column in a 'tabular' environment; *note tabular::). + + The '\\' command is a macro, and its definition changes by context so +that its definition in normal text, a 'center' environment, a +'flushleft' environment, and a 'tabular' are all different. In normal +text when it forces a linebreak it is essentially a shorthand for +'\newline'. It does not end horizontal mode or end the paragraph, it +just inserts some glue and penalties so that when the paragraph does end +a linebreak will occur at that point, with the short line padded with +white space. + + You get 'LaTeX Error: There's no line here to end' if you use '\\' to +ask for a new line, rather than to end the current line. An example is +if you have '\begin{document}\\' or, more likely, something like this. + + \begin{center} + \begin{minipage}{0.5\textwidth} + \\ + In that vertical space put your mark. + \end{minipage} + \end{center} + +Fix it by replacing the double backslash with something like +'\vspace{\baselineskip}'. + File: latex2e.info, Node: \obeycr & \restorecr, Next: \newline, Prev: \\, Up: Line breaking @@ -4760,10 +6060,41 @@ File: latex2e.info, Node: \obeycr & \restorecr, Next: \newline, Prev: \\, Up ============================ The '\obeycr' command makes a return in the input file ('^^M', -internally) the same as '\\' (followed by '\relax'). So each new line -in the input will also be a new line in the output. +internally) the same as '\\', followed by '\relax'. So each new line in +the input will also be a new line in the output. The '\restorecr' +command restores normal line-breaking behavior. + + This is not the way to show verbatim text or computer code. *Note +verbatim:: instead. + + With LaTeX's usual defaults, this + + aaa + bbb - '\restorecr' restores normal line-breaking behavior. + \obeycr + ccc + ddd + eee + + \restorecr + fff + ggg + + hhh + iii + +produces output like this. + + aaa bbb + ccc + ddd + eee + + fff ggg + hhh iii + +The indents are paragraph indents. File: latex2e.info, Node: \newline, Next: \- (hyphenation), Prev: \obeycr & \restorecr, Up: Line breaking @@ -4771,14 +6102,17 @@ File: latex2e.info, Node: \newline, Next: \- (hyphenation), Prev: \obeycr & \ 9.3 '\newline' ============== -In ordinary text this is equivalent to double-backslash (*note \\::); it -breaks a line, with no stretching of the text before it. +In ordinary text, this ends a line in a way that does not right-justify +the line, so the prior text is not stretched. That is, in paragraph +mode (*note Modes::), the '\newline' command is equivalent to +double-backslash (*note \\::). This command is fragile (*note +\protect::). - Inside a 'tabular' or 'array' environment, in a column with a -specifier producing a paragraph box, like typically 'p{...}', '\newline' -will insert a line break inside of the column, that is, it does not -break the entire row. To break the entire row use '\\' or its -equivalent '\tabularnewline'. + However, the two commands are different inside a 'tabular' or 'array' +environment. In a column with a specifier producing a paragraph box +such as typically 'p{...}', '\newline' will insert a line end inside of +the column; that is, it does not break the entire tabular row. To break +the entire row use '\\' or its equivalent '\tabularnewline'. This will print 'Name:' and 'Address:' as two lines in a single cell of the table. @@ -4787,7 +6121,7 @@ of the table. Name: \newline Address: &Date: \\ \hline \end{tabular} - The 'Date:' will be baseline-aligned with 'Name:'. +The 'Date:' will be baseline-aligned with 'Name:'. File: latex2e.info, Node: \- (hyphenation), Next: \discretionary, Prev: \newline, Up: Line breaking @@ -4795,87 +6129,169 @@ File: latex2e.info, Node: \- (hyphenation), Next: \discretionary, Prev: \newl 9.4 '\-' (discretionary hyphen) =============================== -The '\-' command tells LaTeX that it may hyphenate the word at that -point. LaTeX is pretty good at hyphenating, and usually finds most of -the correct hyphenation points, while almost never using an incorrect -one. The '\-' command is used for the exceptional cases. +Tell LaTeX that it may hyphenate the word at that point. When you +insert '\-' commands in a word, the word will only be hyphenated at +those points and not at any of the hyphenation points that LaTeX might +otherwise have chosen. This command is robust (*note \protect::). + + LaTeX is good at hyphenating and usually finds most of the correct +hyphenation points, while almost never using an incorrect one. The '\-' +command is for exceptional cases. + + For example, LaTeX does not ordinarily hyphenate words containing a +hyphen. Below, the long and hyphenated word means LaTeX has to put in +unacceptably large spaces to set the narrow column. + + \begin{tabular}{rp{1.75in}} + Isaac Asimov &The strain of + anti-intellectualism + % an\-ti-in\-tel\-lec\-tu\-al\-ism + has been a constant thread winding its way through our + political and cultural life, nurtured by + the false notion that democracy means that + `my ignorance is just as good as your knowledge'. + \end{tabular} + +Commenting out the third line and uncommenting the fourth makes a much +better fit. - When you insert '\-' commands in a word, the word will only be -hyphenated at those points and not at any of the hyphenation points that -LaTeX might otherwise have chosen. + The '\-' command only allows LaTeX to break there, it does not +require that it break there. You can insist on a split with something +like 'Hef-\linebreak feron'. Of course, if you later change the text +then this forced break may look very odd, so this approach requires +care. -File: latex2e.info, Node: \discretionary, Next: \fussy, Prev: \- (hyphenation), Up: Line breaking +File: latex2e.info, Node: \discretionary, Next: \fussy & \sloppy, Prev: \- (hyphenation), Up: Line breaking 9.5 '\discretionary' (generalized hyphenation point) ==================================================== Synopsis: - \discretionary{PRE-BREAK-TEXT}{POST-BREAK-TEXT}{NO-BREAK-TEXT} + \discretionary{PRE-BREAK}{POST-BREAK}{NO-BREAK} + + Handle word changes around hyphens. This command is not often used +in LaTeX documents. + + If a line break occurs at the point where '\discretionary' appears +then TeX puts PRE-BREAK at the end of the current line and puts +POST-BREAK at the start of the next line. If there is no line break +here then TeX puts NO-BREAK + + In 'difficult' the three letters 'ffi' form a ligature. But TeX can +nonetheless break between the two f's with this. + + di\discretionary{f-}{fi}{ffi}cult + + Note that users do not have to do this. It is typically handled +automatically by TeX's hyphenation algorithm. -File: latex2e.info, Node: \fussy, Next: \sloppy, Prev: \discretionary, Up: Line breaking +File: latex2e.info, Node: \fussy & \sloppy, Next: \hyphenation, Prev: \discretionary, Up: Line breaking -9.6 '\fussy' -============ +9.6 '\fussy' & '\sloppy' +======================== -The declaration '\fussy' (which is the default) makes TeX picky about -line breaking. This usually avoids too much space between words, at the -cost of an occasional overfull box. +Declarations to make TeX more picky or less picky about line breaking. +Declaring '\fussy' usually avoids too much space between words, at the +cost of an occasional overfull box. Conversely, '\sloppy' avoids +overfull boxes while suffering loose interword spacing. + + The default is '\fussy'. Line breaking in a paragraph is controlled +by whichever declaration is current at the blank line, or '\par', or +displayed equation ending that paragraph. So to affect the line breaks, +include that paragraph-ending material in the scope of the command. + +* Menu: - This command cancels the effect of a previous '\sloppy' command -(*note \sloppy::). +* sloppypar:: Environment version of \sloppy command. -File: latex2e.info, Node: \sloppy, Next: \hyphenation, Prev: \fussy, Up: Line breaking +File: latex2e.info, Node: sloppypar, Up: \fussy & \sloppy -9.7 '\sloppy' -============= +9.6.1 'sloppypar' +----------------- -The declaration '\sloppy' makes TeX less fussy about line breaking. -This will avoid overfull boxes, at the cost of loose interword spacing. +Synopsis: - Lasts until a '\fussy' command is issued (*note \fussy::). + \begin{sloppypar} + ... paragraphs ... + \end{sloppypar} + + Typeset the paragraphs with '\sloppy' in effect (*note \fussy & +\sloppy::). Use this to locally adjust line breaking, to avoid +'Overfull box' or 'Underfull box' errors. + + The example is simple. + + \begin{sloppypar} + Her plan for the morning thus settled, she sat quietly down to her + book after breakfast, resolving to remain in the same place and the + same employment till the clock struck one; and from habitude very + little incommoded by the remarks and ejaculations of Mrs.\ Allen, + whose vacancy of mind and incapacity for thinking were such, that + as she never talked a great deal, so she could never be entirely + silent; and, therefore, while she sat at her work, if she lost her + needle or broke her thread, if she heard a carriage in the street, + or saw a speck upon her gown, she must observe it aloud, whether + there were anyone at leisure to answer her or not. + \end{sloppypar} -File: latex2e.info, Node: \hyphenation, Next: \linebreak & \nolinebreak, Prev: \sloppy, Up: Line breaking +File: latex2e.info, Node: \hyphenation, Next: \linebreak & \nolinebreak, Prev: \fussy & \sloppy, Up: Line breaking -9.8 '\hyphenation' +9.7 '\hyphenation' ================== Synopsis: - \hyphenation{WORD-ONE WORD-TWO} + \hyphenation{WORD1 ...} - The '\hyphenation' command declares allowed hyphenation points with a -'-' character in the given words. The words are separated by spaces. -TeX will only hyphenate if the word matches exactly, no inflections are -tried. Multiple '\hyphenation' commands accumulate. Some examples (the -default TeX hyphenation patterns misses the hyphenations in these -words): + Declares allowed hyphenation points within the words in the list. +The words in that list are separated by spaces. Show permitted points +for hyphenation with a dash character, '-'. - \hyphenation{ap-pen-dix col-umns data-base data-bases} + Here is an example: + + \hyphenation{hat-er il-lit-e-ra-ti tru-th-i-ness} + + Use lowercase letters. TeX will only hyphenate if the word matches +exactly. Multiple '\hyphenation' commands accumulate. File: latex2e.info, Node: \linebreak & \nolinebreak, Prev: \hyphenation, Up: Line breaking -9.9 '\linebreak' & '\nolinebreak' +9.8 '\linebreak' & '\nolinebreak' ================================= -Synopses: +Synopses, one of: - \linebreak[PRIORITY] - \nolinebreak[PRIORITY] + \linebreak + \linebreak[ZERO-TO-FOUR] - By default, the '\linebreak' ('\nolinebreak') command forces -(prevents) a line break at the current position. For '\linebreak', the -spaces in the line are stretched out so that it extends to the right -margin as usual. +or one of these. - With the optional argument PRIORITY, you can convert the command from -a demand to a request. The PRIORITY must be a number from 0 to 4. The -higher the number, the more insistent the request. + \nolinebreak + \nolinebreak[ZERO-TO-FOUR] + + Encourage or discourage a line break. The optional ZERO-TO-FOUR is +an integer that allows you to soften the instruction. The default is 4, +so that without the optional argument these commands entirely force or +prevent the break. But for instance, '\nolinebreak[1]' is a suggestion +that another place may be better. The higher the number, the more +insistent the request. Both commands are fragile (*note \protect::). + + Here we tell LaTeX that a good place to put a linebreak is after the +standard legal text. + + \boilerplatelegal{} \linebreak[2] + We especially encourage applications from members of traditionally + underrepresented groups. + + When you issue '\linebreak', the spaces in the line are stretched out +so that it extends to the right margin. *Note \\:: and *note \newline:: +to have the spaces not stretched out. File: latex2e.info, Node: Page breaking, Next: Footnotes, Prev: Line breaking, Up: Top @@ -4883,86 +6299,192 @@ File: latex2e.info, Node: Page breaking, Next: Footnotes, Prev: Line breaking 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 + + \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. In +two-sided printing, '\cleardoublepage' also makes the next page of +content a right-hand page, an odd-numbered page, if necessary inserting +a blank page. The '\clearpage' command is robust while +'\cleardoublepage' is fragile (*note \protect::). -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. + 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} + + 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::). + + 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. - '\enlargethispage*{size}' + This will allow one extra line on the current page. - Enlarge the '\textheight' for the current page by the specified -amount; e.g., '\enlargethispage{\baselineskip}' will allow one -additional line. + \enlargethispage{\baselineskip} - 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'. + The starred form '\enlargesthispage*' tries to squeeze the material +together on the page as much as possible, for the common use case of +getting 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] + +or + + \nopagebreak + \nopagebreak[ZERO-TO-FOUR] + + Encourage or discourage a page break. The optional ZERO-TO-FOUR is +an integer that allows you to soften the request. The default is 4, so +that without the optional argument these commands entirely force or +prevent the break. But for instance '\nopagebreak[1]' suggests to LaTeX +that another spot might be preferable. The higher the number, the more +insistent the request. 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. - 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. + If you use these inside a paragraph, they apply to the point +following the line in which they appear. So this - 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. + 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 +strange, 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 @@ -4970,31 +6492,30 @@ File: latex2e.info, Node: Footnotes, Next: Definitions, Prev: Page breaking, 11 Footnotes ************ -Place a numbered footnote at the bottom of the current page, as here. +Place a footnote at the bottom of the current page, as here. Noe"l Coward quipped that having to read a footnote is like having to go downstairs to answer the door, while in the midst of making - love.\footnote{I wouldn't know, I don't read footnotes.} + love.\footnote{% + I wouldn't know, I don't read footnotes.} - You can place multiple footnotes on a page. If the text becomes too -long it will flow to the next page. + You can put multiple footnotes on a page. If the footnote text +becomes too long then it will flow to the next page. You can also produce footnotes by combining the '\footnotemark' and the '\footnotetext' commands, which is useful in special circumstances. To make bibliographic references come out as footnotes you need to -include a bibliographic style with that behavior. +include a bibliographic style with that behavior (*note Using BibTeX::). * Menu: * \footnote:: Insert a footnote. * \footnotemark:: Insert footnote mark only. * \footnotetext:: Insert footnote text only. -* Footnotes in a table:: Table footnotes. * Footnotes in section headings:: Chapter or section titles. +* Footnotes in a table:: Table footnotes. * Footnotes of footnotes:: Multiple classes of footnotes. -* Multiple reference to footnotes:: Referring to a footnote more than once. -* Footnote parameters:: Parameters for footnote formatting. File: latex2e.info, Node: \footnote, Next: \footnotemark, Up: Footnotes @@ -5002,40 +6523,68 @@ File: latex2e.info, Node: \footnote, Next: \footnotemark, Up: Footnotes 11.1 '\footnote' ================ -Synopsis: +Synopsis, one of: + \footnote{TEXT} \footnote[NUMBER]{TEXT} - Place a numbered footnote TEXT at the bottom of the current page. + Place a footnote TEXT at the bottom of the current page. There are over a thousand footnotes in Gibbon's - \textit{Decline and Fall of the Roman Empire}.\footnote{After - reading an early version with endnotes David Hume complained, - ``One is also plagued with his Notes, according to the present Method - of printing the Book'' and suggested that they ``only to be printed - at the Margin or the Bottom of the Page.''} - - The optional argument NUMBER allows you to specify the footnote -number. If you use this option then the footnote number counter is not -incremented, and if you do not use it then the counter is incremented. + \textit{Decline and Fall of the Roman Empire}.\footnote{% + After reading an early version with endnotes David Hume complained, + ``One is also plagued with his Notes, according to the present Method + of printing the Book'' and suggested that they ``only to be printed + at the Margin or the Bottom of the Page.''} + + The optional argument NUMBER allows you to specify the number of the +footnote. If you use this then LaTeX does not increment the 'footnote' +counter. - Change how LaTeX shows the footnote counter with something like + By default, LaTeX uses arabic numbers as footnote markers. Change +this with something like '\renewcommand{\thefootnote}{\fnsymbol{footnote}}', which uses a sequence of symbols (*note \alph \Alph \arabic \roman \Roman \fnsymbol::). To make this change global put that in the preamble. If you make the change local then you may want to reset the counter with -'\setcounter{footnote}{0}'. By default LaTeX uses arabic numbers. +'\setcounter{footnote}{0}'. + + LaTeX determines the spacing of footnotes with two parameters. + +'\footnoterule' + Produces the rule separating the main text on a page from the + page's footnotes. Default dimensions in the standard document + classes (except 'slides', where it does not appear) is: vertical + thickness of '0.4pt', and horizontal size of '0.4\columnwidth' + long. Change the rule with something like this. + + \renewcommand{\footnoterule}{% Kerns avoid vertical space + \kern -3pt % This -3 is negative + \hrule width \textwidth height 1pt % of the sum of this 1 + \kern 2pt} % and this 2 + +'\footnotesep' + The height of the strut placed at the beginning of the footnote + (*note \strut::). By default, this is set to the normal strut for + '\footnotesize' fonts (*note Font sizes::), therefore there is no + extra space between footnotes. This is '6.65pt' for '10pt', + '7.7pt' for '11pt', and '8.4pt' for '12pt'. Change it as with + '\setlength{\footnotesep}{11pt}'. + + The '\footnote' command is fragile (*note \protect::). LaTeX's default puts many restrictions on where you can use a '\footnote'; for instance, you cannot use it in an argument to a sectioning command such as '\chapter' (it can only be used in outer -paragraph mode). There are some workarounds; see following sections. +paragraph mode; *note Modes::). There are some workarounds; see +following sections. In a 'minipage' environment the '\footnote' command uses the 'mpfootnote' counter instead of the 'footnote' counter, so they are numbered independently. They are shown at the bottom of the environment, not at the bottom of the page. And by default they are -shown alphabetically. *Note minipage::. +shown alphabetically. *Note minipage:: and *note Footnotes in a +table::. File: latex2e.info, Node: \footnotemark, Next: \footnotetext, Prev: \footnote, Up: Footnotes @@ -5048,13 +6597,24 @@ Synopsis, one of: \footnotemark \footnotemark[NUMBER] - Put the current footnote number in the text. (See *note -\footnotetext:: for giving the text of the footnote separately.) The -version with the optional argument NUMBER uses that number to determine -the mark printed. This command can be used in inner paragraph mode. + Put the current footnote mark in the text. To specify associated +text for the footnote see *note \footnotetext::. The optional argument +NUMBER causes the command to use that number to determine the footnote +mark. This command can be used in inner paragraph mode (*note Modes::). + + If you use '\footnotemark' without the optional argument then it +increments the footnote counter but if you use the optional NUMBER then +it does not. The next example produces several consecutive footnote +markers referring to the same footnote. + + The first theorem\footnote{Due to Gauss.} + and the second theorem\footnotemark[\value{footnote}] + and the third theorem.\footnotemark[\value{footnote}] - This example gives the same institutional affiliation to both the -first and third authors ('\thanks' is a version of 'footnote'). + If there are intervening footnotes then you must remember the value +of the common mark. This example gives the same institutional +affiliation to both the first and third authors ('\thanks' is a version +of 'footnote'), by-hand giving the number of the footnote. \title{A Treatise on the Binomial Theorem} \author{J Moriarty\thanks{University of Leeds} @@ -5063,17 +6623,30 @@ first and third authors ('\thanks' is a version of 'footnote'). \begin{document} \maketitle - If you use '\footnotemark' without the optional argument then it -increments the footnote counter but if you use the optional NUMBER then -it does not. This produces several consecutive footnote markers -referring to the same footnote. + This uses a counter to remember the footnote number. The third +sentence is followed by the same footnote marker as the first. - The first theorem\footnote{Due to Gauss.} - and the second theorem\footnotemark[\value{footnote}] - and the third theorem.\footnotemark[\value{footnote}] + \newcounter{footnoteValueSaver} + All babies are illogical.\footnote{% + Lewis Carroll.}\setcounter{footnoteValueSaver}{\value{footnote}} + Nobody is despised who can manage a crocodile.\footnote{% + Captain Hook.} + Illogical persons are despised.\footnotemark[\value{footnoteValueSaver}] + Therefore, anyone who can manage a crocodile is not a baby. + + This example accomplishes the same by using the package 'cleveref'. + + \usepackage{cleveref}[2012/02/15] % in preamble + \crefformat{footnote}{#2\footnotemark[#1]#3} + ... + The theorem is from Evers.\footnote{\label{fn:TE}Tinker, Evers, 1994.} + The corollary is from Chance.\footnote{Evers, Chance, 1990.} + But the key lemma is from Tinker.\cref{fn:TE} + + It will work with the package 'hyperref'. -File: latex2e.info, Node: \footnotetext, Next: Footnotes in a table, Prev: \footnotemark, Up: Footnotes +File: latex2e.info, Node: \footnotetext, Next: Footnotes in section headings, Prev: \footnotemark, Up: Footnotes 11.3 '\footnotetext' ==================== @@ -5083,87 +6656,111 @@ Synopsis, one of: \footnotetext{TEXT} \footnotetext[NUMBER]{TEXT} - Place TEXT at the bottom of the page as a footnote. This command can -come anywhere after the '\footnotemark' command. The optional argument -NUMBER changes the displayed footnote number. The '\footnotetext' -command must appear in outer paragraph mode. + Place TEXT at the bottom of the page as a footnote. It pairs with +'\footnotemark' (*note \footnotemark::) and can come anywhere after that +command, but must appear in outer paragraph mode (*note Modes::). The +optional argument NUMBER changes the number of the footnote mark. + + *Note \footnotemark:: and *note Footnotes in a table:: for usage +examples. + + +File: latex2e.info, Node: Footnotes in section headings, Next: Footnotes in a table, Prev: \footnotetext, Up: Footnotes + +11.4 Footnotes in section headings +================================== + +Putting a footnote in a section heading, as in: + + \section{Full sets\protect\footnote{This material due to ...}} + +causes the footnote to appear at the bottom of the page where the +section starts, as usual, but also at the bottom of the table of +contents, where it is not likely to be desired. The simplest way to +have it not appear on the table of contents is to use the optional +argument to '\section' + + \section[Please]{Please\footnote{% + Don't footnote in chapter and section headers!}} + +No '\protect' is needed in front of '\footnote' here because what gets +moved to the table of contents is the optional argument. -File: latex2e.info, Node: Footnotes in a table, Next: Footnotes in section headings, Prev: \footnotetext, Up: Footnotes +File: latex2e.info, Node: Footnotes in a table, Next: Footnotes of footnotes, Prev: Footnotes in section headings, Up: Footnotes -11.4 Footnotes in a table +11.5 Footnotes in a table ========================= -Inside a 'table' environment the '\footnote' command does not work. For -instance, if the code below appears on its own then the footnote simply -disappears; there is a footnote mark in the table cell but nothing is -set at the bottom of the page. +Inside a 'tabular' or 'array' environment the '\footnote' command does +not work; there is a footnote mark in the table cell but the footnote +text does not appear. The solution is to use a 'minipage' environment +as here (*note minipage::). \begin{center} + \begin{minipage}{\textwidth} \centering \begin{tabular}{l|l} - \textsc{Ship} &\textsc{Book} \\ \hline - \textit{HMS Sophie} &Master and Commander \\ - \textit{HMS Polychrest} &Post Captain \\ - \textit{HMS Lively} &Post Captain \\ - \textit{HMS Surprise} &A number of books\footnote{Starting with - HMS Surprise.} + \textsc{Ship} &\textsc{Book} \\ \hline + \textit{HMS Sophie} &Master and Commander \\ + \textit{HMS Polychrest} &Post Captain \\ + \textit{HMS Lively} &Post Captain \\ + \textit{HMS Surprise} &A number of books\footnote{% + Starting with HMS Surprise.} \end{tabular} + \end{minipage} \end{center} - The solution is to surround the 'tabular' environment with a -'minipage' environment, as here (*note minipage::). + Inside a 'minipage', footnote marks are lowercase letters. Change +that with something like +'\renewcommand{\thempfootnote}{\arabic{mpfootnote}}' (*note \alph \Alph +\arabic \roman \Roman \fnsymbol::). + + The footnotes in the prior example appear at the bottom of the +'minipage'. To have them appear at the bottom of the main page, as part +of the regular footnote sequence, use the '\footnotemark' and +'\footnotetext' pair and make a new counter. + \newcounter{mpFootnoteValueSaver} \begin{center} - \begin{minipage}{.5\textwidth} - ... tabular material ... - \end{minipage} + \begin{minipage}{\textwidth} + \setcounter{mpFootnoteValueSaver}{\value{footnote}} \centering + \begin{tabular}{l|l} + \textsc{Woman} &\textsc{Relationship} \\ \hline + Mona &Attached\footnotemark \\ + Diana Villiers &Eventual wife \\ + Christine Hatherleigh Wood &Fiance\footnotemark + \end{tabular} + \end{minipage}% percent sign keeps footnote text close to minipage + \stepcounter{mpFootnoteValueSaver}% + \footnotetext[\value{mpFootnoteValueSaver}]{% + Little is known other than her death.}% + \stepcounter{mpFootnoteValueSaver}% + \footnotetext[\value{mpFootnoteValueSaver}]{% + Relationship is unresolved in XXI.} \end{center} - The same technique will work inside a floating 'table' environment -(*note table::). To get the footnote at the bottom of the page use the -'tablefootnote' package, as illustrated in this example. If you put -'\usepackage{tablefootnote}' in the preamble and use the code shown then -the footnote appears at the bottom and is numbered in sequence with -other footnotes. + For a floating 'table' environment (*note table::), use the +'tablefootnote' package. + \usepackage{tablefootnote} % in preamble + ... \begin{table} \centering \begin{tabular}{l|l} \textsc{Date} &\textsc{Campaign} \\ \hline 1862 &Fort Donelson \\ 1863 &Vicksburg \\ - 1865 &Army of Northern Virginia\footnote{Ending the war.} + 1865 &Army of Northern Virginia\tablefootnote{% + Ending the war.} \end{tabular} \caption{Forces captured by US Grant} \end{table} - -File: latex2e.info, Node: Footnotes in section headings, Next: Footnotes of footnotes, Prev: Footnotes in a table, Up: Footnotes - -11.5 Footnotes in section headings -================================== - -Putting a footnote in a section heading, as in: - - \section{Full sets\protect\footnote{This material due to ...}} - -causes the footnote to appear at the bottom of the page where the -section starts, as usual, but also at the bottom of the table of -contents, where it is not likely to be desired. To have it not appear -on the table of contents use the package 'footmisc' with the 'stable' -option. - - \usepackage[stable]{footmisc} - ... - \begin{document} - ... - \section{Full sets\footnote{This material due to ...}} - - Note that the '\protect' is gone; including it would cause the -footnote to reappear on the table of contents. +The footnote appears at the page bottom and is numbered in sequence with +other footnotes. -File: latex2e.info, Node: Footnotes of footnotes, Next: Multiple reference to footnotes, Prev: Footnotes in section headings, Up: Footnotes +File: latex2e.info, Node: Footnotes of footnotes, Prev: Footnotes in a table, Up: Footnotes 11.6 Footnotes of footnotes =========================== @@ -5173,57 +6770,13 @@ footnotes, including having footnotes of footnotes. The package 'bigfoot' extends LaTeX's default footnote mechanism in many ways, including allow these two, as in this example. - \usepackage{bigfoot} + \usepackage{bigfoot} % in preamble \DeclareNewFootnote{Default} \DeclareNewFootnote{from}[alph] % create class \footnotefrom{} ... - \begin{document} - ... The third theorem is a partial converse of the - second.\footnotefrom{First noted in Wilson.\footnote{Second edition only.}} - ... - - -File: latex2e.info, Node: Multiple reference to footnotes, Next: Footnote parameters, Prev: Footnotes of footnotes, Up: Footnotes - -11.7 Multiple references to footnotes -===================================== - -You can refer to a single footnote more than once. This example uses -the package 'cleverref'. - - \usepackage{cleveref}[2012/02/15] % this version of package or later - \crefformat{footnote}{#2\footnotemark[#1]#3} - ... - \begin{document} - ... - The theorem is from Evers.\footnote{\label{fn:TE}Tinker and Evers, 1994.} - The corollary is from Chance.\footnote{Evers and Chance, 1990.} - But the key lemma is from Tinker.\cref{fn:TE} - ... - - This solution will work with the package 'hyperref'. See *note -\footnotemark:: for a simpler solution in the common case of multiple -authors with the same affiliation. - - -File: latex2e.info, Node: Footnote parameters, Prev: Multiple reference to footnotes, Up: Footnotes - -11.8 Footnote parameters -======================== - -'\footnoterule' - Produces the rule separating the main text on a page from the - page's footnotes. Default dimensions: '0.4pt' thick (or wide), and - '0.4\columnwidth' long in the standard document classes (except - 'slides', where it does not appear). - -'\footnotesep' - The height of the strut placed at the beginning of the footnote. - By default, this is set to the normal strut for '\footnotesize' - fonts (*note Font sizes::), therefore there is no extra space - between footnotes. This is '6.65pt' for '10pt', '7.7pt' for - '11pt', and '8.4pt' for '12pt'. + second.\footnotefrom{% + First noted in Wilson.\footnote{Second edition only.}} File: latex2e.info, Node: Definitions, Next: Counters, Prev: Footnotes, Up: Top @@ -5252,93 +6805,127 @@ File: latex2e.info, Node: \newcommand & \renewcommand, Next: \providecommand, 12.1 '\newcommand' & '\renewcommand' ==================================== -'\newcommand' and '\renewcommand' define and redefine a command, -respectively. Synopses: +Synopses, one of: - \newcommand{\CMD}[NARGS][OPTARGDEFAULT]{DEFN} - \newcommand*{\CMD}[NARGS][OPTARGDEFAULT]{DEFN} + \newcommand{\CMD}{DEFN} + \newcommand{\CMD}[NARGS]{DEFN} + \newcommand{\CMD}[NARGS][OPTARGDEFAULT]{DEFN} + \newcommand*{\CMD}{DEFN} + \newcommand*{\CMD}[NARGS]{DEFN} + \newcommand*{\CMD}[NARGS][OPTARGDEFAULT]{DEFN} + +or one of these. + + \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} - The starred form of these two commands requires that the arguments -not contain multiple paragraphs of text (not '\long', in plain TeX -terms). + Define or redefine a command. See also the discussion of +'\DeclareRobustCommand' in *note Class and package commands::. The +starred form of these two requires that the arguments not contain +multiple paragraphs of text (in plain TeX terms that it not be '\long'). + + These are the parameters: CMD - Required; '\CMD' is the command name. For '\newcommand', it must - not be already defined and must not begin with '\end'. For - '\renewcommand', it must already be defined. + + Required; the command name. It must begin with a backslash, '\', + and must not begin with the four letter string '\end'. For + '\newcommand', it must not be already defined. For + '\renewcommand', this name must already be defined. NARGS Optional; an integer from 0 to 9, specifying the number of - arguments that the command can take, including any optional - argument. If this argument is not present, the default is for the - command to have no arguments. When redefining a command, the new + arguments that the command takes, including any optional argument. + Omitting this argument is the same as specifying 0, meaning that + the command has no arguments. If you redefine a command, the new version can have a different number of arguments than the old version. OPTARGDEFAULT Optional; if this argument is present then the first argument of - defined command '\CMD' is optional, with default value - OPTARGDEFAULT (which may be the empty string). If this argument is - not present then '\CMD' does not take an optional argument. - - That is, if '\CMD' is used with square brackets following, as in - '\CMD[MYVAL]', then within DEFN the first "positional parameter" - '#1' expands MYVAL. On the other hand, if '\CMD' is called without - square brackets following, then within DEFN the positional - parameter '#1' expands to the default OPTARGDEFAULT. In either - case, any required arguments will be referred to starting with - '#2'. - - Omitting '[MYVAL]' in a call is different from having the square - brackets with no contents, as in '[]'. The former results in '#1' - expanding to OPTARGDEFAULT; the latter results in '#1' expanding to - the empty string. + '\CMD' is optional, with default value OPTARGDEFAULT (which may be + the empty string). If this argument 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'. + + 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. DEFN - The text to be substituted for every occurrence of '\CMD'; the - positional parameter '#N' in DEFN is replaced by the text of the - Nth argument. + 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). TeX ignores spaces in the source following an alphabetic control sequence, as in '\cmd '. If you actually want a space there, one -solution is to type '{}' after the command ('\cmd{} '; another solution -is to use an explicit control space ('\cmd\ '). +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. +Smith}' results in '\RS' being replaced by the longer text. Redefining +an existing command is similar: '\renewcommand{\qedsymbol}{{\small +QED}}'. - Redefining an existing command is similar: -'\renewcommand{\qedsymbol}{{\small QED}}'. + If you try to define a command and the 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'. - Here's a command definition with one required argument: + Here the first command definition has no arguments, and the second +has one required argument. + \newcommand{\student}{Ms~O'Leary} \newcommand{\defref}[1]{Definition~\ref{#1}} -Then, '\defref{def:basis}' expands to 'Definition~\ref{def:basis}', -which will ultimately expand to something like 'Definition~3.14'. +Use the first as in 'I highly recommend \student{} to you'. The second +has a variable, so that '\defref{def:basis}' expands to +'Definition~\ref{def:basis}', which ultimately expands to something like +'Definition~3.14'. - An example with two required arguments: '\newcommand{\nbym}[2]{$#1 -\times #2$}' is invoked as '\nbym{2}{k}'. + Similarly, but with two required arguments: +'\newcommand{\nbym}[2]{$#1 \times #2$}' is invoked as '\nbym{2}{k}'. - An example with an optional argument: + This example has an optional argument. \newcommand{\salutation}[1][Sir or Madam]{Dear #1:} -Then, '\salutation' gives 'Dear Sir or Madam:' while '\salutation[John]' +Then '\salutation' gives 'Dear Sir or Madam:' while '\salutation[John]' gives 'Dear John:'. And '\salutation[]' gives 'Dear :'. + This example has an optional argument and two required arguments. + + \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 braces around DEFN do not define a group, that is, they do not -delimit the scope of the result of expanding DEFN. So -'\newcommand{\shipname}[1]{\it #1}' is problematic; in this sentence, +delimit the scope of the result of expanding DEFN. For example, with +'\newcommand{\shipname}[1]{\it #1}', in this sentence, The \shipname{Monitor} met the \shipname{Merrimac}. -the words 'met the' would incorrectly be in italics. Another pair of -braces in the definition is needed, like this: -'\newcommand{\shipname}[1]{{\it #1}}'. Those braces are part of the -definition and thus do define a group. +the words 'met the' would incorrectly be in italics. The solution is to +put another pair of braces inside the definition: +'\newcommand{\shipname}[1]{{\it #1}}'. File: latex2e.info, Node: \providecommand, Next: \newcounter, Prev: \newcommand & \renewcommand, Up: Definitions @@ -5346,17 +6933,30 @@ File: latex2e.info, Node: \providecommand, Next: \newcounter, Prev: \newcomma 12.2 '\providecommand' ====================== -Defines a command, as long as no command of this name already exists. -Synopses: +Synopses, one of: + \providecommand{CMD}{DEFN} + \providecommand{CMD}[NARGS]{DEFN} \providecommand{CMD}[NARGS][OPTARGDEFAULT]{DEFN} + \providecommand*{CMD}{DEFN} + \providecommand*{CMD}[NARGS]{DEFN} \providecommand*{CMD}[NARGS][OPTARGDEFAULT]{DEFN} - If no command of this name already exists then this has the same -effect as '\newcommand' (*note \newcommand & \renewcommand::). If a -command of this name already exists then this definition does nothing. -This is particularly useful in a style file, or other file that may be -loaded more than once. + Defines a command, as long as no command of this name already exists. +If no command of this name already exists then this has the same effect +as '\newcommand'. If a command of this name already exists then this +definition does nothing. This is particularly useful in a file that may +be loaded more than once, such as a style file. *Note \newcommand & +\renewcommand:: for the description of the arguments. + + This example + + \providecommand{\myaffiliation}{Saint Michael's College} + \providecommand{\myaffiliation}{Saint Michael's College} + From \myaffiliation. + +outputs 'From Saint Michael's College'. Unlike '\newcommand', the +repeated use of '\providecommand' does not give an error. File: latex2e.info, Node: \newcounter, Next: \newlength, Prev: \providecommand, Up: Definitions @@ -5369,57 +6969,93 @@ Synopsis, one of: \newcounter{COUNTERNAME} \newcounter{COUNTERNAME}[SUPERCOUNTER] - Globally defines a new counter named COUNTERNAME and initialize the -new counter to zero. + Globally defines a new counter named COUNTERNAME and initialize it to +zero (*note Counters::). - The name COUNTERNAME must consists of letters only, and does not -begin with a backslash. This name must not already be in use by another + The name COUNTERNAME must consist of letters only. It does not begin +with a backslash. This name must not already be in use by another counter. - When you use the optional argument '[SUPERCOUNTER]' then COUNTERNAME -will be numbered within, or subsidiary to, the existing counter -SUPERCOUNTER. For example, ordinarily 'subsection' is numbered within -'section' so that any time SUPERCOUNTER is incremented with -'\stepcounter' (*note \stepcounter::) or '\refstepcounter' (*note -\refstepcounter::) then COUNTERNAME is reset to zero. + When you use the optional argument '[SUPERCOUNTER]' then the counter +COUNTERNAME will be reset to zero whenever SUPERCOUNTER is incremented. +For example, ordinarily 'subsection' is numbered within 'section' so +that any time you increment SECTION, either with '\stepcounter' (*note +\stepcounter::) or '\refstepcounter' (*note \refstepcounter::), then +LaTeX will reset SUBSECTION to zero. + + This example + + \newcounter{asuper} \setcounter{asuper}{1} + \newcounter{asub}[asuper] \setcounter{asub}{3} % Note `asuper' + The value of asuper is \arabic{asuper} and of asub is \arabic{asub}. + \stepcounter{asuper} + Now asuper is \arabic{asuper} while asub is \arabic{asub}. - *Note Counters::, for more information about counters. + produces 'The value of asuper is 1 and that of asub is 3' and 'Now +asuper is 2 while asub is 0'. + + If the counter already exists, for instance by entering 'asuper' +twice, then you get something like 'LaTeX Error: Command \c@asuper +already defined. Or name \end... illegal, see p.192 of the manual.'. + + If you use the optional argument then the super counter must already +exist. Entering '\newcounter{jh}[lh]' when 'lh' is not a defined +counter will get you 'LaTeX Error: No counter 'lh' defined.' File: latex2e.info, Node: \newlength, Next: \newsavebox, Prev: \newcounter, Up: Definitions -12.4 '\newlength': Allocating a length -====================================== +12.4 '\newlength' +================= + +Synopsis: -Allocate a new "length" register. Synopsis: + \newlength{ARG} - \newlength{\ARG} + Allocate a new length register (*note Lengths::). The required +argument ARG must begin with a backslash, '\'. The new register holds +rubber lengths such as '72.27pt' or '1in plus.2in minus.1in' (a LaTeX +length register is what plain TeX calls a 'skip' register). The initial +value is zero. The control sequence '\ARG' must not be already defined. - This command takes one required argument, which must begin with a -backslash ('\'). It creates a new length register named '\ARG', which -is a place to hold (rubber) lengths such as '1in plus.2in minus.1in' -(what plain TeX calls a 'skip' register). The register gets an initial -value of zero. The control sequence '\ARG' must not already be defined. + An example: - *Note Lengths::, for more about lengths. + \newlength{\graphichgt} + + If you forget the backslash then you get 'Missing control sequence +inserted'. If the command sequence already exists then you get +something like 'LaTeX Error: Command \graphichgt already defined. Or +name \end... illegal, see p.192 of the manual'. File: latex2e.info, Node: \newsavebox, Next: \newenvironment & \renewenvironment, Prev: \newlength, Up: Definitions -12.5 '\newsavebox': Allocating a box -==================================== +12.5 '\newsavebox' +================== -Allocate a "bin" for holding a box. Synopsis: +Synopsis: - \newsavebox{\CMD} + \newsavebox{CMD} - Defines '\CMD' to refer to a new bin for storing boxes. Such a box -is for holding typeset material, to use multiple times (*note Boxes::) -or to measure or manipulate. The name '\CMD' must start with a -backslash ('\'), and must not be already defined. + Define '\CMD' to refer to a new "bin" for storing boxes. Such a box +is for holding typeset material, to use multiple times or to measure or +manipulate (*note Boxes::). The required bin name 'CMD' must start with +a backslash, '\', and must not already be defined. This command is +fragile (*note \protect::). - The allocation of a box is global. This command is fragile (*note -\protect::). + The first line here sets you up to save the material for later use. + + \newsavebox{\logobox} + \savebox{\logobox}{LoGo} + Our logo is \usebox{\logobox}. + +The output is 'Our logo is LoGo'. + + If there is an already defined bin then you get something like 'LaTeX +Error: Command \logobox already defined. Or name \end... illegal, see +p.192 of the manual'. + + The allocation of a box is global. File: latex2e.info, Node: \newenvironment & \renewenvironment, Next: \newtheorem, Prev: \newsavebox, Up: Definitions @@ -5427,21 +7063,34 @@ File: latex2e.info, Node: \newenvironment & \renewenvironment, Next: \newtheor 12.6 '\newenvironment' & '\renewenvironment' ============================================ -These commands define or redefine an environment ENV, that is, -'\begin{ENV} BODY \end{ENV}'. Synopses: +Synopses, one of: - \newenvironment{ENV}[NARGS][OPTARGDEFAULT]{BEGDEFN}{ENDDEFN} - \newenvironment*{ENV}[NARGS][OPTARGDEFAULT]{BEGDEFN}{ENDDEFN} - \renewenvironment{ENV}[NARGS][OPTARGDEFAULT]{BEGDEFN}{ENDDEFN} - \renewenvironment*{ENV}[NARGS][OPTARGDEFAULT]{BEGDEFN}{ENDDEFN} + \newenvironment{ENV}{BEGDEF}{ENDDEF} + \newenvironment{ENV}[NARGS]{BEGDEF}{ENDDEF} + \newenvironment{ENV}[NARGS][OPTARGDEFAULT]{BEGDEF}{ENDDEF} + \newenvironment*{ENV}{BEGDEF}{ENDDEF} + \newenvironment*{ENV}[NARGS]{BEGDEF}{ENDDEF} + \newenvironment*{ENV}[NARGS][OPTARGDEFAULT]{BEGDEF}{ENDDEF} + +or one of these. + + \renewenvironment{ENV}{BEGDEF}{ENDDEF} + \renewenvironment{ENV}[NARGS]{BEGDEF}{ENDDEF} + \renewenvironment{ENV}[NARGS][OPTARGDEFAULT]{BEGDEF}{ENDDEF} + \renewenvironment*{ENV}{BEGDEF}{ENDDEF} + \renewenvironment*{ENV}[NARGS]{BEGDEF}{ENDDEF} + \renewenvironment*{ENV}[NARGS][OPTARGDEFAULT]{BEGDEF}{ENDDEF} + + Define or redefine the environment ENV, that is, create the construct +'\begin{ENV} ... BODY ... \end{ENV}'. The starred form of these commands requires that the arguments not -contain multiple paragraphs of text. The body of these environments can -still contain multiple paragraphs. +contain multiple paragraphs of text. However, the body of these +environments can contain multiple paragraphs. ENV Required; the environment name. It consists only of letters or the - '*' character, and thus does not begin with backslash ('\'). It + '*' character, and thus does not begin with backslash, '\'. It must not begin with the string 'end'. For '\newenvironment', the name ENV must not be the name of an already existing environment, and also the command '\ENV' must be undefined. For @@ -5450,51 +7099,57 @@ ENV NARGS Optional; an integer from 0 to 9 denoting the number of arguments - of that the environment will take. When the environment is used - these arguments appear after the '\begin', as in - '\begin{ENV}{ARG1}...{ARGN}'. If this argument is not present then - the default is for the environment to have no arguments. When - redefining an environment, the new version can have a different - number of arguments than the old version. + of that the environment takes. When you use the environment these + arguments appear after the '\begin', as in '\begin{ENV}{ARG1} ... + {ARGN}'. Omitting this is equivalent to setting it to 0; the + environment will have no arguments. When redefining an + environment, the new version can have a different number of + arguments than the old version. OPTARGDEFAULT - Optional; if this argument is present then the first argument of - the defined environment is optional, with default value - OPTARGDEFAULT (which may be the empty string). If this argument is - not present then the environment does not take an optional - argument. - - That is, when '[OPTARGDEFAULT]' is present in the environment - definition, if '\begin{ENV}' is used with square brackets - following, as in '\begin{ENV}[MYVAL]', then, within BEGDEFN, the - positional parameter '#1' expands to MYVAL. If '\begin{ENV}' is - called without square brackets following, then, within within - BEGDEFN, the positional parameter '#1' expands to the default - OPTARGDEFAULT. In either case, any required arguments will be - referred to starting with '#2'. - - Omitting '[MYVAL]' in the call is different from having the square + Optional; if this is present then the first argument of the defined + environment is optional, with default value OPTARGDEFAULT (which + may be the empty string). If this is not in the definition then + the environment does not take an optional argument. + + That is, when OPTARGDEFAULT is present in the definition of the + environment then you can start the environment with square + brackets, as in '\begin{ENV}[OPTVAL]{...} ... \end{ENV}'. In this + case, within BEGDEFN the parameter '#1' is set to the value of + OPTVAL. If you call '\begin{ENV}' without square brackets, then + within BEGDEFN the parameter '#1' is set to the value of the + default OPTARGDEFAULT. In either case, any required arguments + start with '#2'. + + Omitting '[MYVAL]' in the call is different than having the square brackets with no contents, as in '[]'. The former results in '#1' expanding to OPTARGDEFAULT; the latter results in '#1' expanding to the empty string. -BEGDEFN +BEGDEF Required; the text expanded at every occurrence of '\begin{ENV}'. - Within BEGDEF, the Nth positional parameter (i.e., '#N') is - replaced by the text of the Nth argument. + Within BEGDEF, the parameters '#1', '#2', ... '#NARGS', are + replaced by the values that you supply when you call the + environment; see the examples below. -ENDDEFN +ENDDEF Required; the text expanded at every occurrence of '\end{ENV}'. - This may not contain any positional parameters, so '#N' cannot be - used here (but see the final example below). + This may not contain any parameters, that is, you cannot use '#1', + '#2', etc., here (but see the final example below). - All environments, that is to say the BEGDEFN code, the environment -body and the ENDDEFN code, are processed within a group. Thus, in the + All environments, that is to say the BEGDEF code, the environment +body, and the ENDDEF code, are processed within a group. Thus, in the first example below, the effect of the '\small' is limited to the quote and does not extend to material following the environment. + If you try to define an environment and the 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 an environment and the name has not yet been used then you +get something like 'LaTeX Error: Environment hank undefined.'. + This example gives an environment like LaTeX's 'quotation' except -that it will be set in smaller type: +that it will be set in smaller type. \newenvironment{smallquote}{% \small\begin{quotation} @@ -5502,8 +7157,16 @@ that it will be set in smaller type: \end{quotation} } - This one shows the use of arguments; it gives a quotation environment -that cites the author: + This has an argument, which is set in boldface at the start of a +paragraph. + + \newenvironment{point}[1]{% + \noindent\textbf{#1} + }{% + } + + This one shows the use of a optional argument; it gives a quotation +environment that cites the author. \newenvironment{citequote}[1][Shakespeare]{% \begin{quotation} @@ -5513,14 +7176,14 @@ that cites the author: } The author's name is optional, and defaults to 'Shakespeare'. In the -document, use the environment like this: +document, use the environment like this. \begin{citequote}[Lincoln] ... \end{citequote} The final example shows how to save the value of an argument to use -in ENDDEFN, in this case in a box (*note \sbox::): +in ENDDEF, in this case in a box (*note \sbox & \savebox::). \newsavebox{\quoteauthor} \newenvironment{citequote}[1][Shakespeare]{% @@ -5537,28 +7200,27 @@ File: latex2e.info, Node: \newtheorem, Next: \newfont, Prev: \newenvironment 12.7 '\newtheorem' ================== -Define a new theorem-like environment. Synopses: +Synopses: \newtheorem{NAME}{TITLE} \newtheorem{NAME}{TITLE}[NUMBERED_WITHIN] \newtheorem{NAME}[NUMBERED_LIKE]{TITLE} - Using the first form, '\newtheorem{NAME}{TITLE}' creates an -environment that will be labelled with TITLE. See the first example -below. + Define a new theorem-like environment. You can specify one of +NUMBERED_WITHIN and NUMBERED_LIKE, or neither, but not both. + + The first form, '\newtheorem{NAME}{TITLE}', creates an environment +that will be labelled with TITLE; see the first example below. - The second form '\newtheorem{NAME}{TITLE}[NUMBERED_WITHIN]' creates + The second form, '\newtheorem{NAME}{TITLE}[NUMBERED_WITHIN]', creates an environment whose counter is subordinate to the existing counter -NUMBERED_WITHIN (its counter will be reset when NUMBERED_WITHIN is -reset). +NUMBERED_WITHIN, so this counter will be reset when NUMBERED_WITHIN is +reset. See the second example below. The third form '\newtheorem{NAME}[NUMBERED_LIKE]{TITLE}', with -optional argument between the two required arguments, will create an +optional argument between the two required arguments, creates an environment whose counter will share the previously defined counter -NUMBERED_LIKE. - - You can specify one of NUMBERED_WITHIN and NUMBERED_LIKE, or neither, -but not both. +NUMBERED_LIKE. See the third example. This command creates a counter named NAME. In addition, unless the optional argument NUMBERED_LIKE is used, inside of the theorem-like @@ -5570,13 +7232,14 @@ environment the current '\ref' value will be that of Arguments: NAME - The name of the environment. It must not begin with a backslash - ('\'). It must not be the name of an existing environment; indeed, - the command name '\NAME' must not already be defined as anything. + The name of the environment. It is a string of letters. It must + not begin with a backslash, '\'. It must not be the name of an + existing environment, and the command name '\NAME' must not already + be defined. TITLE - The text printed at the beginning of the environment, before the - number. For example, 'Theorem'. + The text to be printed at the beginning of the environment, before + the number. For example, 'Theorem'. NUMBERED_WITHIN Optional; the name of an already defined counter, usually a @@ -5608,9 +7271,9 @@ results in 'Definition 1' and 'Definition 2' in the output. Second def \end{defn} - Because the next example specifies the optional argument -NUMBERED_WITHIN to '\newtheorem' as 'section', the example, with the -same document body, gives 'Definition 1.1' and 'Definition 2.1'. + This example has the same document body as the prior one. But here +'\newtheorem''s optional argument NUMBERED_WITHIN is given as 'section', +so the output is like 'Definition 1.1' and 'Definition 2.1'. \newtheorem{defn}{Definition}[section] \begin{document} @@ -5649,35 +7312,32 @@ and 'Definition 2.2'. File: latex2e.info, Node: \newfont, Next: \protect, Prev: \newtheorem, Up: Definitions -12.8 '\newfont': Define a new font (obsolete) -============================================= +12.8 '\newfont' +=============== -'\newfont', now obsolete, defines a command that will switch fonts. -Synopsis: +This command is obsolete. This description is here only to help with +old documents. New documents should define fonts in families through +the New Font Selection Scheme which allows you to, for example, +associate a boldface with a roman (*note Fonts::). - \newfont{\CMD}{FONT DESCRIPTION} + Synopsis: - This defines a control sequence '\CMD' that will change the current -font. LaTeX will look on your system for a file named 'FONTNAME.tfm'. -The control sequence must must not already be defined. It must begin -with a backslash ('\'). + \newfont{\CMD}{FONT DESCRIPTION} - This command is obsolete. It is a low-level command for setting up -an individual font. Today fonts are almost always defined in families -(which allows you to, for example, associate a boldface with a roman) -through the so-called "New Font Selection Scheme", either by using '.fd' -files or through the use of an engine that can access system fonts such -as XeLaTeX (*note TeX engines::). + Define a command '\CMD' that will change the current font. The +control sequence must must not already be defined. It must begin with a +backslash, '\'. - But since it is part of LaTeX, here is an explanation: the FONT -DESCRIPTION consists of a FONTNAME and an optional "at clause"; this can -have the form either 'at DIMEN' or 'scaled FACTOR', where a FACTOR of -'1000' means no scaling. For LaTeX's purposes, all this does is scale -all the character and other font dimensions relative to the font's -design size, which is a value defined in the '.tfm' file. + The FONT DESCRIPTION consists of a FONTNAME and an optional "at +clause". LaTeX will look on your system for a file named +'FONTNAME.tfm'. The at clause can have the form either 'at DIMEN' or +'scaled FACTOR', where a FACTOR of '1000' means no scaling. For LaTeX's +purposes, all this does is scale all the character and other font +dimensions relative to the font's design size, which is a value defined +in the '.tfm' file. - This example defines two equivalent fonts and typesets a few -characters in each: + This defines two equivalent fonts and typesets a few characters in +each. \newfont{\testfontat}{cmb10 at 11pt} \newfont{\testfontscaled}{cmb10 scaled 1100} @@ -5749,7 +7409,7 @@ Synopsis: \ignorespaces - or +or \ignorespacesafterend @@ -5767,11 +7427,13 @@ the question text. \newcommand{\points}[1]{\makebox[0pt]{\makebox[10em][l]{#1~pts}} \begin{enumerate} \item\points{10}no extra space output here - \item\points{15} extra space output between the number and the word `extra' + \item\points{15} extra space between the number and the `extra' \end{enumerate} - The solution is to change to -'\newcommand{\points}[1]{\makebox[0pt]{\makebox[10em][l]{#1~pts}}\ignorespaces}'. +The solution is to change to this. + + \newcommand{\points}[1]{% + \makebox[0pt]{\makebox[10em][l]{#1~pts}}\ignorespaces} A second example shows spaces being removed from the front of text. The commands below allow a user to uniformly attach a title to names. @@ -5780,14 +7442,14 @@ But, as given, if a title accidentally starts with a space then \makeatletter \newcommand{\honorific}[1]{\def\@honorific{#1}} % remember title - \newcommand{\fullname}[1]{\@honorific~#1} % recall title; put before name + \newcommand{\fullname}[1]{\@honorific~#1} % put title before name \makeatother \begin{tabular}{|l|} \honorific{Mr/Ms} \fullname{Jones} \\ % no extra space here \honorific{ Mr/Ms} \fullname{Jones} % extra space before title \end{tabular} - To fix this, change to +To fix this, change to '\newcommand{\fullname}[1]{\ignorespaces\@honorific~#1}'. The '\ignorespaces' is also often used in a '\newenvironment' at the @@ -5841,18 +7503,20 @@ a minipage (*note minipage::). The counters 'enumi' through 'enumiv' are used in the 'enumerate' environment, for up to four levels of nesting (*note enumerate::). + Counters can have any integer value but they are typically positive. + New counters are created with '\newcounter'. *Note \newcounter::. * Menu: * \alph \Alph \arabic \roman \Roman \fnsymbol:: Print value of a counter. -* \usecounter:: Use a specified counter in a list environment. -* \value:: Use the value of a counter in an expression. -* \setcounter:: Set the value of a counter. -* \addtocounter:: Add a quantity to a counter. -* \refstepcounter:: Add to a counter. -* \stepcounter:: Add to a counter, resetting subsidiary counters. -* \day \month \year:: Numeric date values. +* \usecounter:: Use a specified counter in a list environment. +* \value:: Use the value of a counter in an expression. +* \setcounter:: Set the value of a counter. +* \addtocounter:: Add a quantity to a counter. +* \refstepcounter:: Add to a counter. +* \stepcounter:: Add to a counter, resetting subsidiary counters. +* \day & \month & \year:: Numeric date values. File: latex2e.info, Node: \alph \Alph \arabic \roman \Roman \fnsymbol, Next: \usecounter, Up: Counters @@ -5862,67 +7526,76 @@ File: latex2e.info, Node: \alph \Alph \arabic \roman \Roman \fnsymbol, Next: \ Print the value of a counter, in a specified style. For instance, if the counter COUNTER has the value 1 then a '\alph{COUNTER}' in your -source will result in a lower case letter a appearing in the output. +source will result in a lowercase letter a appearing in the output. All of these commands take a single counter as an argument, for instance, '\alph{enumi}'. Note that the counter name does not start with a backslash. '\alph{COUNTER}' - Print the value of COUNTER in lowercase letters: 'a', 'b', ... + Print the value of COUNTER in lowercase letters: 'a', 'b', ... If + the counter's value is less than 1 or more than 26 then you get + 'LaTeX Error: Counter too large.' '\Alph{COUNTER}' - Print in uppercase letters: 'A', 'B', ... + Print in uppercase letters: 'A', 'B', ... If the counter's value + is less than 1 or more than 26 then you get 'LaTeX Error: Counter + too large.' '\arabic{COUNTER}' - Print in Arabic numbers: '1', '2', ... + Print in Arabic numbers such as '5' or '-2'. '\roman{COUNTER}' - Print in lowercase roman numerals: 'i', 'ii', ... + Print in lowercase roman numerals: 'i', 'ii', ... If the counter's + value is less than 1 then you get no warning or error but LaTeX + does not print anything in the output. '\Roman{COUNTER}' - Print in uppercase roman numerals: 'I', 'II', ... + Print in uppercase roman numerals: 'I', 'II', ... If the counter's + value is less than 1 then you get no warning or error but LaTeX + does not print anything in the output. '\fnsymbol{COUNTER}' - Prints the value of COUNTER in a specific sequence of nine symbols - (conventionally used for labeling footnotes). The value of COUNTER - must be between 1 and 9, inclusive. + Prints the value of COUNTER using a sequence of nine symbols that + are traditionally used for labeling footnotes. The value of + COUNTER should be between 1 and 9, inclusive. If the counter's + value is less than 0 or more than 9 then you get 'LaTeX Error: + Counter too large', while if it is 0 then you get no error or + warning but LaTeX does not output anything. Here are the symbols: - Name Command Equivalent Unicode - symbol and/or numeric - code point - --------------------------------------------------------------------------- - asterisk '\ast' * - dagger '\dagger' U+2020 - ddagger '\ddagger' U+2021 - section-sign '\S' U+00A7 - paragraph-sign '\P' U+00B6 - double-vert '\parallel' U+2016 - double-asterisk '\ast\ast' ** - double-dagger '\dagger\dagger' U+2020U+2020 - double-ddagger '\ddagger\ddagger' U+2021U+2021 + Number Name Command Symbol + ----------------------------------------------------------------------------- + 1 asterisk '\ast' * + 2 dagger '\dagger' U+2020 + 3 ddagger '\ddagger' U+2021 + 4 section-sign '\S' U+00A7 + 5 paragraph-sign '\P' U+00B6 + 6 double-vert '\parallel' U+2016 + 7 double-asterisk '\ast\ast' ** + 8 double-dagger '\dagger\dagger' U+2020U+2020 + 9 double-ddagger '\ddagger\ddagger' U+2021U+2021 File: latex2e.info, Node: \usecounter, Next: \value, Prev: \alph \Alph \arabic \roman \Roman \fnsymbol, Up: Counters -13.2 '\usecounter{COUNTER}' -=========================== +13.2 '\usecounter' +================== Synopsis: \usecounter{COUNTER} - In the 'list' environment, when used in the second argument, this -command sets up COUNTER to number the list items. It initializes -COUNTER to zero, and arranges that when '\item' is called without its -optional argument then COUNTER is incremented by '\refstepcounter', -making its value be the current 'ref' value. This command is fragile -(*note \protect::). + Used in the second argument of the 'list' environment (*note list::), +this declares that list items will be numbered by COUNTER. It +initializes COUNTER to zero, and arranges that when '\item' is called +without its optional argument then COUNTER is incremented by +'\refstepcounter', making its value be the current 'ref' value (*note +\ref::). This command is fragile (*note \protect::). - Put in the preamble, this makes a new list environment enumerated -with TESTCOUNTER: + Put in the document preamble, this example makes a new list +environment enumerated with TESTCOUNTER: \newcounter{testcounter} \newenvironment{test}{% @@ -5936,20 +7609,15 @@ with TESTCOUNTER: File: latex2e.info, Node: \value, Next: \setcounter, Prev: \usecounter, Up: Counters -13.3 '\value{COUNTER}' -====================== +13.3 '\value' +============= Synopsis: \value{COUNTER} - This command expands to the value of COUNTER. It is often used in -'\setcounter' or '\addtocounter', but '\value' can be used anywhere that -LaTeX expects a number. It must not be preceded by '\protect' (*note -\protect::). - - The '\value' command is not used for typesetting the value of the -counter. *Note \alph \Alph \arabic \roman \Roman \fnsymbol::. + Expands to the value of the counter COUNTER. (Note that the name of +a counter does not begin with a backslash.) This example outputs 'Test counter is 6. Other counter is 5.'. @@ -5960,6 +7628,15 @@ counter. *Note \alph \Alph \arabic \roman \Roman \fnsymbol::. Test counter is \arabic{test}. Other counter is \arabic{other}. + The '\value' command is not used for typesetting the value of the +counter. For that, see *note \alph \Alph \arabic \roman \Roman +\fnsymbol::. + + It is often used in '\setcounter' or '\addtocounter' but '\value' can +be used anywhere that LaTeX expects a number, such as in +'\hspace{\value{foo}\parindent}'. It must not be preceded by '\protect' +(*note \protect::). + This example inserts '\hspace{4\parindent}'. \setcounter{myctr}{3} \addtocounter{myctr}{1} @@ -5968,30 +7645,36 @@ counter. *Note \alph \Alph \arabic \roman \Roman \fnsymbol::. File: latex2e.info, Node: \setcounter, Next: \addtocounter, Prev: \value, Up: Counters -13.4 '\setcounter{COUNTER}{VALUE}' -================================== +13.4 '\setcounter' +================== Synopsis: \setcounter{COUNTER}{VALUE} - The '\setcounter' command globally sets the value of COUNTER to the -VALUE argument. Note that the counter name does not start with a -backslash. + Globally set the counter COUNTER to have the value of the VALUE +argument, which must be an integer. Thus, you can set a counter's value +as '\setcounter{section}{5}'. Note that the counter name does not start +with a backslash. - In this example the section value appears as 'V'. + In this example if the counter 'theorem' has value 12 then the second +line will print 'XII'. - \setcounter{section}{5} - Here it is in Roman: \Roman{section}. + \setcounter{exercise}{\value{theorem}} + Here it is in Roman: \Roman{exercise}. File: latex2e.info, Node: \addtocounter, Next: \refstepcounter, Prev: \setcounter, Up: Counters -13.5 '\addtocounter{COUNTER}{VALUE}' -==================================== +13.5 '\addtocounter' +==================== + +Synopsis: + + \addtocounter{COUNTER}{VALUE -The '\addtocounter' command globally increments COUNTER by the amount -specified by the VALUE argument, which may be negative. + Globally increment COUNTER by the amount specified by the VALUE +argument, which may be negative. In this example the section value appears as 'VII'. @@ -6002,12 +7685,16 @@ specified by the VALUE argument, which may be negative. File: latex2e.info, Node: \refstepcounter, Next: \stepcounter, Prev: \addtocounter, Up: Counters -13.6 '\refstepcounter{COUNTER}' -=============================== +13.6 '\refstepcounter' +====================== + +Synopsis: -The '\refstepcounter' command works in the same way as '\stepcounter' -(*note \stepcounter::): it globally increments the value of COUNTER by -one and resets the value of any counter numbered within it. (For the + \refstepcounter{COUNTER} + + Globally increments the value of COUNTER by one, as does +'\stepcounter' (*note \stepcounter::). The difference is that this +command resets the value of any counter numbered within it. (For the definition of "counters numbered within", *note \newcounter::.) In addition, this command also defines the current '\ref' value to be @@ -6017,28 +7704,44 @@ the result of '\thecounter'. locally, i.e., inside the current group. -File: latex2e.info, Node: \stepcounter, Next: \day \month \year, Prev: \refstepcounter, Up: Counters +File: latex2e.info, Node: \stepcounter, Next: \day & \month & \year, Prev: \refstepcounter, Up: Counters -13.7 '\stepcounter{COUNTER}' -============================ +13.7 '\stepcounter' +=================== + +Synopsis: + + \stepcounter{COUNTER} -The '\stepcounter' command globally adds one to COUNTER and resets all -counters numbered within it. (For the definition of "counters numbered -within", *note \newcounter::.) + Globally adds one to COUNTER and resets all counters numbered within +it. (For the definition of "counters numbered within", *note +\newcounter::.) + + This command differs from '\refstepcounter' in that this one does not +influence references -- it does not define the current '\ref' value to +be the result of '\thecounter' (*note \refstepcounter::). -File: latex2e.info, Node: \day \month \year, Prev: \stepcounter, Up: Counters +File: latex2e.info, Node: \day & \month & \year, Prev: \stepcounter, Up: Counters -13.8 '\day \month \year': Predefined counters -============================================= +13.8 '\day' & '\month' & '\year' +================================ + +LaTeX defines the counter '\day' for the day of the month (nominally +with value between 1 and 31), '\month' for the month of the year +(nominally with value between 1 and 12), and year '\year'. When TeX +starts up, they are set from the current values on the system. The +related command '\today' produces a string representing the current day +(*note \today::). -LaTeX defines counters for the day of the month ('\day', 1-31), month of -the year ('\month', 1-12), and year ('\year', Common Era). When TeX -starts up, they are set to the current values on the system where TeX is -running. They are not updated as the job progresses. + They counters are not updated as the job progresses so in principle +they could be incorrect by the end. In addition, TeX does no sanity +check: - The related command '\today' produces a string representing the -current day (*note \today::). + \day=-2 \month=13 \year=-4 \today + +gives no error or warning and results in the output '-2, -4' (the bogus +month value produces no output). File: latex2e.info, Node: Lengths, Next: Making paragraphs, Prev: Counters, Up: Top @@ -6049,25 +7752,89 @@ File: latex2e.info, Node: Lengths, Next: Making paragraphs, Prev: Counters, A "length" is a measure of distance. Many LaTeX commands take a length as an argument. + This shows a box of the given length. + + \newcommand{\blackbar}[1]{\rule{#1}{10pt}} % make a bar + \newcommand{\showhbox}[2]{\fboxsep=0pt\fbox{\hbox to #1{#2}}} % box it + XXX\showhbox{100pt}{\blackbar{100pt}}YYY + +It produces a black bar 100 points long between 'XXX' and 'YYY'. + Lengths come in two types. A "rigid length" (what Plain TeX calls a -"dimen") such as '10pt' cannot contain a 'plus' or 'minus' component. A -"rubber length" (what Plain TeX calls a "skip") can contain those, as -with '1cm plus0.05cm minus0.01cm'. These give the ability to stretch or -shrink; the length in the prior sentence could appear in the output as -long as 1.05 cm or as short as 0.99 cm, depending on what TeX's -typesetting algorithm finds optimum. +"dimen") such as '10pt' does not contain a 'plus' or 'minus' component. +The above example shows a rigid length. A "rubber length" (what Plain +TeX calls a "skip") can contain those components, as with '1cm +plus0.05cm minus0.01cm'. Here the '1cm' is the "natural length" while +the other two, the 'plus' and 'minus' components, allow the length to +stretch or shrink. + + Shrinking is simpler: with '1cm minus 0.05cm', the natural length is +1cm but if smaller is needed then TeX can shrink it down as far as +0.95cm. Beyond that, TeX refuses to shrink any more. Thus, below the +first one works fine, producing a space of 98 points between the two +bars. + + XXX\showhbox{300pt}{% + \blackbar{101pt}\hspace{100pt minus 2pt}\blackbar{101pt}}YYY + + XXX\showhbox{300pt}{% + \blackbar{105pt}\hspace{100pt minus 1pt}\blackbar{105pt}}YYY + +But the second one gets a warning like 'Overfull \hbox (1.0pt too wide) +detected at line 17'. In the output the first 'Y' is overwritten by the +end of the black bar, because the box's material is wider than the 300pt +allocated, as TeX has refused to shrink the total to less than +309 points. + + Stretching is like shrinking except that if TeX is asked to stretch +beyond the given amount, it won't refuse. Here the first line is fine, +producing a space of 110 points between the bars. + + XXX\showhbox{300pt}{% + \blackbar{95pt}\hspace{100pt plus 10pt}\blackbar{95pt}}YYY + + XXX\showhbox{300pt}{% + \blackbar{95pt}\hspace{100pt plus 1pt}\blackbar{95pt}}YYY + +In the second line TeX needs a stretch of 10 points and only 1 point was +specified. In this situation, TeX stretches the space to the required +length, but it complains with a warning like 'Underfull \hbox (badness +10000) detected at line 22'. (We won't discuss badness; the point is +that the system was not given as much stretch as needed.) + + You can put both stretch and shrink in the same length, as in '1ex +plus 0.05ex minus 0.02ex'. + + If TeX is setting two or more rubber lengths then it allocates the +stretch or shrink in proportion. + + XXX\showhbox{300pt}{\blackbar{100pt}% left + \hspace{0pt plus 50pt}\blackbar{80pt}\hspace{0pt plus 10pt}% middle + \blackbar{100pt}}YYY % right + +The outside bars take up 100 points, so the middle needs another 100. +In the middle the bar takes up 80 points, so the two '\hspace''s must +stretch 20 points. Because the two say 'plus 50pt' and 'plus 10pt', TeX +gets 5/6 of the stretch from the first space and 1/6 from the second. The 'plus' or 'minus' component of a rubber length can contain a "fill" component, as in '1in plus2fill'. This gives the length infinite -stretchability or shrinkability, so that the length in the prior -sentence can be set by TeX to any distance greater than or equal to -1 inch. TeX actually provides three infinite glue components 'fil', -'fill', and 'filll', such that the later ones overcome the earlier ones, -but only the middle value is ordinarily used. *Note \hfill::, *Note -\vfill::. - - Multiplying an entire rubber length by a number turns it into a rigid -length, so that after '\setlength{\ylength}{1in plus 0.2in}' and +stretchability or shrinkability so that TeX could set it to any +distance. Here the two figures will be equal-spaced across the page. + + \begin{minipage}{\linewidth} + \hspace{0pt plus 1fill}\includegraphics{godel.png}% + \hspace{0pt plus 1fill}\includegraphics{einstein.png}% + \hspace{0pt plus 1fill} + \end{minipage} + + TeX actually has three infinite glue components 'fil', 'fill', and +'filll'. The later ones are more infinite than the earlier ones. +Ordinarily document authors only use the middle one (*note \hfill:: and +*note \vfill::). + + Multiplying a rubber length by a number turns it into a rigid length, +so that after '\setlength{\ylength}{1in plus 0.2in}' and '\setlength{\zlength}{3\ylength}' then the value of '\zlength' is '3in'. * Menu: @@ -6078,7 +7845,6 @@ length, so that after '\setlength{\ylength}{1in plus 0.2in}' and * \settodepth:: Set a length to the depth of something. * \settoheight:: Set a length to the height of something. * \settowidth:: Set a length to the width of something. -* Predefined lengths:: Lengths that are, like, predefined. File: latex2e.info, Node: Units of length, Next: \setlength, Up: Lengths @@ -6120,7 +7886,7 @@ mode. Two other lengths that are often used are values set by the designer of the font. The x-height of the current font "ex", traditionally the -height of the lower case letter x, is often used for vertical lengths. +height of the lowercase letter x, is often used for vertical lengths. Similarly "em", traditionally the width of the capital letter M, is often used for horizontal lengths (there is also '\enspace', which is '0.5em'). Use of these can help make a definition work better across @@ -6141,12 +7907,23 @@ File: latex2e.info, Node: \setlength, Next: \addtolength, Prev: Units of leng Synopsis: - \setlength{\LEN}{AMOUNT} + \setlength{LEN}{AMOUNT} + + Set the length LEN to AMOUNT. The length name LEN must begin with a +backslash, '\'. The 'amount' can be a rubber length (*note Lengths::). +It can be positive, negative or zero, and can be in any units that LaTeX +understands (*note Units of length::). - The '\setlength' sets the value of "length command" '\LEN' to the -VALUE argument which can be expressed in any units that LaTeX -understands, i.e., inches ('in'), millimeters ('mm'), points ('pt'), big -points ('bp'), etc. + Below, with LaTeX's defaults the first paragraph will be indented +while the second will not. + + I told the doctor I broke my leg in two places. + + \setlength{\parindent}{0em} + He said stop going to those places. + + If there is no such length LEN then you get something like 'Undefined +control sequence. <argument> \praindent'. File: latex2e.info, Node: \addtolength, Next: \settodepth, Prev: \setlength, Up: Lengths @@ -6156,10 +7933,27 @@ File: latex2e.info, Node: \addtolength, Next: \settodepth, Prev: \setlength, Synopsis: - \addtolength{\LEN}{AMOUNT} + \addtolength{LEN}{AMOUNT} + + Increment the length LEN by AMOUNT. The length name LEN begins with +a backslash, '\'. The 'amount' is a rubber length (*note Lengths::). +It can be positive, negative or zero, and can be in any units that LaTeX +understands (*note Units of length::). + + Below, if '\parskip' starts with the value '0pt plus 1pt' + + \addtolength{\parskip}{1pt} + Doctor: how is the boy who swallowed the silver dollar? - The '\addtolength' command increments a length command '\LEN' by the -amount specified in the AMOUNT argument, which may be negative. + Nurse: no change. + +then it has the value '1pt plus 1pt' for the second paragraph. + + If there is no such length LEN then you get something like 'Undefined +control sequence. <argument> \praindent'. If you leave off the +backslash at the start of LEN, as in '\addtolength{parindent}{1pt}', +then you get something like 'You can't use `the letter p' after +\advance'. File: latex2e.info, Node: \settodepth, Next: \settoheight, Prev: \addtolength, Up: Lengths @@ -6169,10 +7963,23 @@ File: latex2e.info, Node: \settodepth, Next: \settoheight, Prev: \addtolength Synopsis: - \settodepth{\LEN}{TEXT} + \settodepth{LEN}{TEXT} + + Set the length LEN to the depth of box that LaTeX gets on typesetting +the TEXT argument. The length name LEN must begin with a backslash, +'\'. - The '\settodepth' command sets the value of a length command '\LEN' -equal to the depth of the TEXT argument. + This will show how low the character descenders go. + + \newlength{\alphabetdepth} + \settodepth{\alphabetdepth}{abcdefghijklmnopqrstuvwxyz} + \the\alphabetdepth + + If there is no such length LEN then you get something like 'Undefined +control sequence. <argument> \alphabetdepth'. If you leave the +backslash out of LEN, as in '\settodepth{alphabetdepth}{...}' then you +get something like 'Missing number, treated as zero. <to be read again> +\setbox'. File: latex2e.info, Node: \settoheight, Next: \settowidth, Prev: \settodepth, Up: Lengths @@ -6182,45 +7989,49 @@ File: latex2e.info, Node: \settoheight, Next: \settowidth, Prev: \settodepth, Synopsis: - \settoheight{\LEN}{text} + \settoheight{LEN}{text} - The '\settoheight' command sets the value of a length command '\LEN' -equal to the height of the 'text' argument. + Sets the length LEN to the height of box that LaTeX gets on +typesetting the 'text' argument. The length name LEN must begin with a +backslash, '\'. - -File: latex2e.info, Node: \settowidth, Next: Predefined lengths, Prev: \settoheight, Up: Lengths + This will show how high the characters go. -14.6 '\settowidth{\LEN}{TEXT}' -============================== - -Synopsis: + \newlength{\alphabetheight} + \settoheight{\alphabetheight}{abcdefghijklmnopqrstuvwxyz} + \the\alphabetheight - \settowidth{\LEN}{TEXT} - - The '\settowidth' command sets the value of the command \LEN to the -width of the TEXT argument. + If there is no such length LEN then you get something like 'Undefined +control sequence. <argument> \alphabetheight'. If you leave the +backslash out of LEN, as in '\settoheight{alphabetheight}{...}' then you +get something like 'Missing number, treated as zero. <to be read again> +\setbox'. -File: latex2e.info, Node: Predefined lengths, Prev: \settowidth, Up: Lengths +File: latex2e.info, Node: \settowidth, Prev: \settoheight, Up: Lengths -14.7 Predefined lengths -======================= +14.6 '\settowidth' +================== -'\width' +Synopsis: - '\height' + \settowidth{LEN}{TEXT} - '\depth' + Set the length LEN to the width of the box that LaTeX gets on +typesetting the TEXT argument. The length name LEN must begin with a +backslash, '\'. - '\totalheight' + This measures the width of the lowercase ASCII alphabet. - These length parameters can be used in the arguments of the -box-making commands (*note Boxes::). They specify the natural width, -etc., of the text in the box. '\totalheight' equals '\height' + -'\depth'. To make a box with the text stretched to double the natural -size, e.g., say + \newlength{\alphabetwidth} + \settowidth{\alphabetwidth}{abcdefghijklmnopqrstuvwxyz} + \the\alphabetwidth - \makebox[2\width]{Get a stretcher} + If there is no such length LEN then you get something like 'Undefined +control sequence. <argument> \alphabetwidth'. If you leave the +backslash out of LEN, as in '\settoheight{alphabetwidth}{...}' then you +get something like 'Missing number, treated as zero. <to be read again> +\setbox'. File: latex2e.info, Node: Making paragraphs, Next: Math formulas, Prev: Lengths, Up: Top @@ -6228,92 +8039,217 @@ File: latex2e.info, Node: Making paragraphs, Next: Math formulas, Prev: Lengt 15 Making paragraphs ******************** -A paragraph is ended by one or more completely blank lines--lines not -containing even a '%'. A blank line should not appear where a new -paragraph cannot be started, such as in math mode or in the argument of -a sectioning command. +Once LaTeX has all of a paragraph's contents it divides it into lines, +in a way that is optimized over the entire paragraph (*note Line +breaking::). To end the current paragraph, put an empty line. + + It is a truth universally acknowledged, that a single man in possession + of a good fortune, must be in want of a wife. + + However little known the feelings or views of such a man may be on his + first entering a neighbourhood, this truth is so well fixed in the minds + of the surrounding families, that he is considered the rightful property + of some one or other of their daughters. + + ``My dear Mr. Bennet,'' said his lady to him one day, + ``have you heard that Netherfield Park is let at last?'' + + The separator lines must be empty, including not containing a comment +character, '%'. + + There are places where a new paragraph is not permitted. Don't put a +blank line in math mode (*note Modes::); here the line before the +'\end{equation}' + + \begin{equation} + 2^{|S|} > |S| + + \end{equation} + +will get you the error 'Missing $ inserted'. Similarly, the blank line +in this 'section' argument + + \section{aaa + + bbb} + +gets 'Runaway argument? {aaa ! Paragraph ended before \@sect was +complete'. * Menu: -* \indent:: Indent this paragraph. -* \noindent:: Do not indent this paragraph. -* \parskip:: Space added before paragraphs. -* Marginal notes:: Putting remarks in the margin. +* \par:: End the current paragraph. +* \indent & \noindent:: Go into horizontal mode, possibly with an indent. +* \parindent & \parskip:: Space added before paragraphs. +* Marginal notes:: Put remarks in the margin. -File: latex2e.info, Node: \indent, Next: \noindent, Up: Making paragraphs +File: latex2e.info, Node: \par, Next: \indent & \noindent, Up: Making paragraphs -15.1 '\indent' -============== +15.1 '\par' +=========== + +Synopsis (note that while reading the input TeX, converts two +consecutive newlines to a '\par'): -'\indent' produces a horizontal space whose width equals to the -'\parindent' length, the normal paragraph indentation. It is used to -add paragraph indentation where it would otherwise be suppressed. + \par - The default value for '\parindent' is '1em' in two-column mode, -otherwise '15pt' for '10pt' documents, '17pt' for '11pt', and '1.5em' -for '12pt'. + End the current paragraph. The usual way to separate paragraphs is +with a blank line but the '\par' command is entirely equivalent. This +command is robust (*note \protect::). + + This example uses '\par' rather than a blank line simply for +readability. + + \newcommand{\syllabusLegalese}{% + \whatCheatingIs\par\whatHappensWhenICatchYou} + + The '\par' command does nothing in LR mode or a vertical mode but it +terminates paragraph mode, bringing LaTeX to vertical mode (*note +Modes::). + + You cannot use the '\par' command in math mode or in the argument of +many commands, such as the '\section' command (*note Making paragraphs:: +and *note \newcommand & \renewcommand::). + + The '\par' command differs from the '\paragraph' command in that the +latter is, like '\section' or '\subsection', a sectioning unit used by +the standard LaTeX documents. + + The '\par' command differs from '\newline' and the line break double +backslash, '\\', in that \par ends the paragraph not just the line. It +also triggers the addition of the between-paragraph vertical space +'\parskip' (*note \parindent & \parskip::). + + The output from this example + + xyz + + \setlength{\parindent}{3in} + \setlength{\parskip}{5in} + \noindent test\indent test1\par test2 + +is: after 'xyz' there is a vertical skip of 5 inches and then 'test' +appears, aligned with the left margin. On the same line, there is an +empty horizontal space of 3 inches and then 'test1' appears. Finally. +there is a vertical space of 5 inches, followed by a fresh paragraph +with a paragraph indent of 3 inches, and then LaTeX puts the text +'test2'. -File: latex2e.info, Node: \noindent, Next: \parskip, Prev: \indent, Up: Making paragraphs +File: latex2e.info, Node: \indent & \noindent, Next: \parindent & \parskip, Prev: \par, Up: Making paragraphs -15.2 '\noindent' -================ +15.2 '\indent' & '\noindent' +============================ -When used at the beginning of the paragraph, this command suppresses any -paragraph indentation, as in this example. +Synopsis: + + \indent + +or + + \noindent + + Go into horizontal mode (*note Modes::). The '\indent' command first +outputs an empty box whose width is '\parindent'. These commands are +robust (*note \protect::). + + Ordinarily you create a new paragraph by putting in a blank line. +*Note \par:: for the difference between this command and '\par'. To +start a paragraph without an indent, or to continue an interrupted +paragraph, use '\noindent'. + + In the middle of a paragraph the '\noindent' command has no effect, +because LaTeX is already in horizontal mode there. The '\indent' +command's only effect is to output a space. + + This example starts a fresh paragraph. ... end of the prior paragraph. \noindent This paragraph is not indented. - It has no effect when used in the middle of a paragraph. +and this continues an interrupted paragraph. + + The data + + \begin{center} + \begin{tabular}{rl} ... \end{tabular} + \end{center} - To eliminate paragraph indentation in an entire document, put -'\setlength{\parindent}{0pt}' in the preamble. + \noindent shows this clearly. + + To omit indentation in the entire document put +'\setlength{\parindent}{0pt}' in the preamble. If you do that, you may +want to also set the length of spaces between paragraphs, '\parskip' +(*note \parindent & \parskip::). + + Default LaTeX styles have the first paragraph after a section that is +not indented, as is traditional typesetting in English. To change that, +look on CTAN for the package 'indentfirst'. -File: latex2e.info, Node: \parskip, Next: Marginal notes, Prev: \noindent, Up: Making paragraphs +File: latex2e.info, Node: \parindent & \parskip, Next: Marginal notes, Prev: \indent & \noindent, Up: Making paragraphs -15.3 '\parskip' -=============== +15.3 '\parindent' & '\parskip' +============================== + +Synopsis: -'\parskip' is a rubber length defining extra vertical space added before -each paragraph. The default is '0pt plus1pt'. + \setlength{\parskip}{HORIZONTAL LEN} + \setlength{\parinden}{VERTICAL LEN} + + Both are a rubber lengths (*note Lengths::). They give the +indentation of ordinary paragraphs, not paragraphs inside minipages +(*note minipage::), and the vertical space between paragraphs. + + This, put in the preamble, + + \setlength{\parindent}{0em} + \setlength{\parskip}{1ex} + +arranges that the document will have paragraphs that are not indented, +but instead are vertically separated by about the height of a lowercase +'x'. + + In standard LaTeX documents, the default value for '\parindent' in +one-column documents is '15pt' when the default text size is '10pt' , +'17pt' for '11pt', and '1.5em' for '12pt'. In two-column documents it +is '1em'. The default value for '\parskip' in LaTeX's standard document +styles is '0pt plus1pt'. -File: latex2e.info, Node: Marginal notes, Prev: \parskip, Up: Making paragraphs +File: latex2e.info, Node: Marginal notes, Prev: \parindent & \parskip, Up: Making paragraphs 15.4 Marginal notes =================== -Synopsis: +Synopsis, one of: + \marginpar{RIGHT} \marginpar[LEFT]{RIGHT} - The '\marginpar' command creates a note in the margin. The first -line of the note will have the same baseline as the line in the text -where the '\marginpar' occurs. - - When you only specify the mandatory argument RIGHT, the text will be -placed + Create a note in the margin. The first line of the note will have +the same baseline as the line in the text where the '\marginpar' occurs. - * in the right margin for one-sided layout (option 'oneside', see - *note Document class options::); - * in the outside margin for two-sided layout (option 'twoside', see - *note Document class options::); - * in the nearest margin for two-column layout (option 'twocolumn', - see *note Document class options::). + The margin that LaTeX uses for the note depends on the current layout +(*note Document class options::) and also on '\reversemarginpar' (see +below). If you are using one-sided layout (document option 'oneside') +then it goes in the right margin. If you are using two-sided layout +(document option 'twoside') then it goes in the outside margin. If you +are in two-column layout (document option 'twocolumn') then it goes in +the nearest margin. - The command '\reversemarginpar' places subsequent marginal notes in -the opposite (inside) margin. '\normalmarginpar' places them in the -default position. + If you declare '\reversemarginpar' then LaTeX will place subsequent +marginal notes in the opposite margin to that given in the prior +paragraph. Revert that to the default position with '\normalmarginpar'. - When you specify both arguments, LEFT is used for the left margin, -and RIGHT is used for the right margin. + When you specify the optional argument LEFT then it is used for a +note in the left margin, while the mandatory argument RIGHT is used for +a note in the the right margin. - The first word will normally not be hyphenated; you can enable -hyphenation there by beginning the node with '\hspace{0pt}'. + Normally, a note's first word will not be hyphenated. You can enable +hyphenation there by beginning LEFT or RIGHT with '\hspace{0pt}'. These parameters affect the formatting of the note: @@ -6340,39 +8276,93 @@ File: latex2e.info, Node: Math formulas, Next: Modes, Prev: Making paragraphs 16 Math formulas **************** -There are three environments that put LaTeX in math mode: +Produce mathematical text by putting LaTeX into math mode or display +math mode (*note Modes::). This example shows both. + + The wave equation for \( u \) is + \begin{displaymath} + \frac{\partial^2u}{\partial t^2} = c^2\nabla^2u + \end{displaymath} + where \( \nabla^2 \) is the spatial Laplacian and \( c \) is constant. + +Math mode is for inline mathematics. In the above example it is invoked +by the starting '\(' and finished by the matching ending '\)'. Display +math mode is for displayed equations and here is invoked by the +'displaymath' environment. Note that any mathematical text whatever, +including mathematical text consisting of just one character, is handled +in math mode. + + When in math mode or display math mode, LaTeX handles many aspects of +your input text differently than in other text modes. For example, + + contrast x+y with \( x+y \) + +in math mode the letters are in italics and the spacing around the plus +sign is different. + + There are three ways to make inline formulas, to put LaTeX in math +mode. + + \( MATHEMATICAL MATERIAL \) + $ MATHEMATICAL MATERIAL $ + \begin{math} MATHEMATICAL MATERIAL \end{math} -'math' - For formulas that appear right in the text. -'displaymath' - For formulas that appear on their own line. -'equation' - The same as the displaymath environment except that it adds an - equation number in the right margin. +The first form is preferred and the second is quite common, but the +third form is rarely used. You can sometimes use one and sometimes +another, as in '\(x\) and $y$'. You can use these in paragraph mode or +in LR mode (*note Modes::). - The 'math' environment can be used in both paragraph and LR mode, but -the 'displaymath' and 'equation' environments can be used only in -paragraph mode. The 'math' and 'displaymath' environments are used so -often that they have the following short forms: + To make displayed formulas, put LaTeX into display math mode with +either: - \(...\) instead of \begin{math}...\end{math} - \[...\] instead of \begin{displaymath}...\end{displaymath} + \begin{displaymath} + MATHEMATICAL MATERIAL + \end{displaymath} - In fact, the 'math' environment is so common that it has an even -shorter form: +or - $ ... $ instead of \(...\) + \begin{equation} + MATHEMATICAL MATERIAL + \end{equation} - The '\boldmath' command changes math letters and symbols to be in a -bold font. It is used _outside_ of math mode. Conversely, the -'\unboldmath' command changes math glyphs to be in a normal font; it too -is used _outside_ of math mode. +(*note displaymath::, *note equation::). The only difference is that +with the 'equation' environment, LaTeX puts a formula number alongside +the formula. The construct '\[ MATH \]' is equivalent to +'\begin{displaymath} MATH \end{displaymath}'. These environments can +only be used in paragraph mode (*note Modes::). + + The two mathematics modes are similar, but there are some +differences. One involves the placement of subscripts and superscripts; +in display math mode they are further apart and in inline math mode they +are closer together. + + Sometimes you want the display math typographical treatment to happen +in the inline math mode. For this, the '\displaystyle' declaration +forces the size and style of the formula to be that of 'displaymath'. +Thus '\(\displaystyle \sum_{n=0}^\infty x_n\)' will have the limits +above and below the summation sign, not next to it. Another example is +that + + \begin{tabular}{r|cc} + \textsc{Name} &\textsc{Series} &\textsc{Sum} \\ \hline + Arithmetic &\( a+(a+b)+(a+2b)+\cdots+(a+(n-1)b) \) + &\( na+(n-1)n\cdot\frac{b}{2}\) \\ + Geometric &\( a+ab+ab^2+\cdots+ab^{n-1} \) + &\(\displaystyle a\cdot\frac{1-b^n}{1-b}\) \\ + \end{tabular} - The '\displaystyle' declaration forces the size and style of the -formula to be that of 'displaymath', e.g., with limits above and below -summations. For example: +because it has no '\displaystyle', the 'Arithmetic' line's fraction will +be scrunched. But, because of its '\displaystyle', the 'Geometric' +line's fraction will be easy to read, with characters the same size as +in the rest of the line. - $\displaystyle \sum_{n=0}^\infty x_n $ + The American Mathematical Society has made freely available a set of +packages that greatly expand your options for writing mathematics, +'amsmath' and 'amssymb' (also be aware of the 'mathtools' package that +is an extension to, and loads, 'amsmath'). New documents that will have +mathematical text should use these packages. Descriptions of these +packages is outside the scope of this document; see their documentation +on CTAN. * Menu: @@ -6380,7 +8370,8 @@ summations. For example: * Math symbols:: Various mathematical squiggles. * Math functions:: Math function names like sin and exp. * Math accents:: Accents in math. -* Spacing in math mode:: Thick, medium, thin and negative spaces. +* Over- and Underlining:: Things over or under formulas. +* Spacing in math mode:: Thick, medium, thin, and negative spaces. * Math miscellany:: Stuff that doesn't fit anywhere else. @@ -6389,35 +8380,65 @@ File: latex2e.info, Node: Subscripts & superscripts, Next: Math symbols, Up: 16.1 Subscripts & superscripts ============================== -In math mode, use the caret character '^' to make the EXP appear as a -superscript: '^{EXP}'. Similarly, in math mode, underscore '_{EXP}' -makes a subscript out of EXP. +Synopsis (in math mode or display math mode), one of: - In this example the '0' and '1' appear as subscripts while the '2' is -a superscript. + BASE^EXP + BASE^{EXP} - \( (x_0+x_1)^2 \) +or, one of: - To have more than one character in EXP use curly braces as in -'e^{-2x}'. + BASE_EXP + BASE_{EXP} - LaTeX handles superscripts on superscripts, and all of that stuff, in -the natural way, so expressions such as 'e^{x^2}' and 'x_{a_0}' will -look right. It also does the right thing when something has both a -subscript and a superscript. In this example the '0' appears at the -bottom of the integral sign while the '10' appears at the top. + Make EXP appear as a superscript of BASE (with the caret +character, '^') or a subscript (with underscore, '_'). - \int_0^{10} x^2 \,dx + In this example the '0''s and '1''s are subscripts while the '2''s +are superscripts. - You can put a superscript or subscript before a symbol with a -construct such as '{}_t K^2' in math mode (the initial '{}' prevents the -prefixed subscript from being attached to any prior symbols in the -expression). + \( (x_0+x_1)^2 \leq (x_0)^2+(x_1)^2 \) - Outside of math mode, a construct like 'A -test$_\textnormal{subscript}$' will produce a subscript typeset in text -mode, not math mode. Note that there are packages specialized for -writing Chemical formulas such as 'mhchem'. + To have the subscript or superscript contain more than one character, +surround the expression with curly braces, as in 'e^{-2x}'. This +example's fourth line shows curly braces used to group an expression for +the exponent. + + \begin{displaymath} + (3^3)^3=27^3=19\,683 + \qquad + 3^{(3^3)}=3^{27}=7\,625\,597\,484\,987 + \end{displaymath} + + LaTeX knows how to handle a superscript on a superscript, or a +subscript on a subscript, or supers on subs, or subs on supers. So, +expressions such as 'e^{x^2}' and 'x_{i_0}' give correct output. Note +the use in those expressions of curly braces to give the BASE a +determined EXP. If you enter '\(3^3^3\)' then you get 'Double +superscript'. + + LaTeX does the right thing when something has both a subscript and a +superscript. In this example the integral has both. They come out in +the correct place without any author intervention. + + \begin{displaymath} + \int_{x=a}^b f'(x)\,dx = f(b)-f(a) + \end{displaymath} + +Note the parentheses around 'x=a' to make the entire expression a +subscript. + + To put a superscript or subscript before a symbol, use a construct +like '{}_t K^2'. The empty curly braces '{}' give the subscript +something to attach to and keeps it from accidentally attaching to a +prior symbols. + + Using the subscript or superscript command outside of math mode or +display math mode, as in 'the expression x^2', will get you the error +'Missing $ inserted'. + + A common reason to want subscripts outside of a mathematics mode is +to typeset chemical formulas. There are packages for that such as +'mhchem'; see CTAN. File: latex2e.info, Node: Math symbols, Next: Math functions, Prev: Subscripts & superscripts, Up: Math formulas @@ -6425,18 +8446,17 @@ File: latex2e.info, Node: Math symbols, Next: Math functions, Prev: Subscript 16.2 Math symbols ================= -LaTeX provides almost any mathematical symbol you're likely to need. -For example, if you include '$\pi$' in your source, you will get the pi -symbol U+03C0. +LaTeX provides almost any mathematical or technical symbol that anyone +uses. For example, if you include '$\pi$' in your source, you will get +the pi symbol U+03C0. See the 'Comprehensive LaTeX Symbol List' at +<https://ctan.org/tex-archive/info/symbols/comprehensive/>. - Below is a list of commonly-available symbols. It is by no means an -exhaustive list. Each symbol here is described with a short phrase, and -its symbol class (which determines the spacing around it) is given in + Here is a list of commonly-used symbols. It is by no means +exhaustive. Each symbol is described with a short phrase, and its +symbol class, which determines the spacing around it, is given in parenthesis. Unless said otherwise, the commands for these symbols can -be used only in math mode. - - To redefine a command so that it can be used whatever the current -mode, see *note \ensuremath::. +be used only in math mode. To redefine a command so that it can be used +whatever the current mode, see *note \ensuremath::. '\|' U+2225 Parallel (relation). Synonym: '\parallel'. @@ -6445,7 +8465,7 @@ mode, see *note \ensuremath::. U+2135 Aleph, transfinite cardinal (ordinary). '\alpha' - U+03B1 Lower case Greek letter alpha (ordinary). + U+03B1 Lowercase Greek letter alpha (ordinary). '\amalg' U+2A3F Disjoint union (binary) @@ -6472,7 +8492,7 @@ mode, see *note \ensuremath::. '\textbackslash' for backslash outside of math mode. '\beta' - U+03B2 Lower case Greek letter beta (ordinary). + U+03B2 Lowercase Greek letter beta (ordinary). '\bigcap' U+22C2 Variable-sized, or n-ary, intersection (operator). Similar: @@ -6539,7 +8559,7 @@ mode, see *note \ensuremath::. U+22C5 Multiplication (binary). Similar: Bullet dot '\bullet'. '\chi' - U+03C7 Lower case Greek chi (ordinary). + U+03C7 Lowercase Greek chi (ordinary). '\circ' U+2218 Function composition, ring operator (binary). Similar: @@ -6575,18 +8595,18 @@ mode, see *note \ensuremath::. U+2021 Double dagger relation (binary). '\Delta' - U+0394 Greek upper case delta, used for increment (ordinary). + U+0394 Greek uppercase delta, used for increment (ordinary). '\delta' - U+03B4 Greek lower case delta (ordinary). + U+03B4 Greek lowercase delta (ordinary). '\Diamond' U+25C7 Large diamond operator (ordinary). Not available in plain TeX. In LaTeX you need to load the 'amssymb' package. '\diamond' - U+22C4 Diamond operator, or diamond bullet (binary). Similar: - large diamond '\Diamond', circle bullet '\bullet'. + U+22C4 Diamond operator (binary). Similar: large + diamond '\Diamond', circle bullet '\bullet'. '\diamondsuit' U+2662 Diamond card suit (ordinary). @@ -6599,12 +8619,12 @@ mode, see *note \ensuremath::. equal to '\Doteq'. '\downarrow' - U+2193 Down arrow, converges (relation). Similar: double line down - arrow '\Downarrow'. + U+2193 Down arrow, converges (relation). Similar: '\Downarrow' + double line down arrow. '\Downarrow' - U+21D3 Double line down arrow (relation). Similar: single line - down arrow '\downarrow'. + U+21D3 Double line down arrow (relation). Similar: '\downarrow' + single line down arrow. '\ell' U+2113 Lowercase cursive letter l (ordinary). @@ -6614,7 +8634,7 @@ mode, see *note \ensuremath::. '\varnothing'. '\epsilon' - U+03F5 Lower case lunate epsilon (ordinary). Similar to Greek text + U+03F5 Lowercase lunate epsilon (ordinary). Similar to Greek text letter. More widely used in mathematics is the script small letter epsilon '\varepsilon' U+03B5. Related: the set membership relation '\in' U+2208. @@ -6623,7 +8643,7 @@ mode, see *note \ensuremath::. U+2261 Equivalence (relation). '\eta' - U+03B7 Lower case Greek letter (ordinary). + U+03B7 Lowercase Greek letter (ordinary). '\exists' U+2203 Existential quantifier (ordinary). @@ -6638,10 +8658,10 @@ mode, see *note \ensuremath::. U+2322 Downward curving arc (ordinary). '\Gamma' - U+0393 Upper case Greek letter (ordinary). + U+0393 uppercase Greek letter (ordinary). '\gamma' - U+03B3 Lower case Greek letter (ordinary). + U+03B3 Lowercase Greek letter (ordinary). '\ge' U+2265 Greater than or equal to (relation). This is a synonym @@ -6677,8 +8697,12 @@ mode, see *note \ensuremath::. '\Im' U+2111 Imaginary part (ordinary). See: real part '\Re'. +'\imath' + Dotless i; used when you are putting an accent on an i (*note Math + accents::). + '\in' - U+2208 Set element (relation). See also: lower case lunate + U+2208 Set element (relation). See also: lowercase lunate epsilon '\epsilon'U+03F5 and small letter script epsilon '\varepsilon'. @@ -6689,20 +8713,24 @@ mode, see *note \ensuremath::. U+222B Integral (operator). '\iota' - U+03B9 Lower case Greek letter (ordinary). + U+03B9 Lowercase Greek letter (ordinary). '\Join' U+2A1D Condensed bowtie symbol (relation). Not available in Plain TeX. +'\jmath' + Dotless j; used when you are putting an accent on a j (*note Math + accents::). + '\kappa' - U+03BA Lower case Greek letter (ordinary). + U+03BA Lowercase Greek letter (ordinary). '\Lambda' - U+039B Upper case Greek letter (ordinary). + U+039B uppercase Greek letter (ordinary). '\lambda' - U+03BB Lower case Greek letter (ordinary). + U+03BB Lowercase Greek letter (ordinary). '\land' U+2227 Logical and (binary). This is a synonym for '\wedge'. See @@ -6824,7 +8852,7 @@ mode, see *note \ensuremath::. U+2213 Minus or plus (relation). '\mu' - U+03BC Lower case Greek letter (ordinary). + U+03BC Lowercase Greek letter (ordinary). '\nabla' U+2207 Hamilton's del, or differential, operator (ordinary). @@ -6850,19 +8878,19 @@ mode, see *note \ensuremath::. Synonym: '\owns'. Similar: is a member of '\in'. '\not' - U+0020U+00A0U+0338 Long solidus, or slash, used to overstrike a - following operator (relation). + U+0020 Long solidus, or slash, used to overstrike a following + operator (relation). - Many negated operators that don't require '\not' are available, + Many negated operators are available that don't require '\not', particularly with the 'amssymb' package. For example, '\notin' is - probably typographically preferable to '\not\in'. + typographically preferable to '\not\in'. '\notin' U+2209 Not an element of (relation). Similar: not subset of '\nsubseteq'. '\nu' - U+03BD Lower case Greek letter (ordinary). + U+03BD Lowercase Greek letter (ordinary). '\nwarrow' U+2196 North-west arrow (relation). @@ -6876,10 +8904,10 @@ mode, see *note \ensuremath::. (operator). '\Omega' - U+03A9 Upper case Greek letter (ordinary). + U+03A9 uppercase Greek letter (ordinary). '\omega' - U+03C9 Lower case Greek letter (ordinary). + U+03C9 Lowercase Greek letter (ordinary). '\ominus' U+2296 Minus sign, or dash, inside a circle (binary). @@ -6911,14 +8939,14 @@ mode, see *note \ensuremath::. ordinary. '\phi' - U+03D5 Lower case Greek letter (ordinary). The variant form is + U+03D5 Lowercase Greek letter (ordinary). The variant form is '\varphi' U+03C6. '\Pi' - U+03A0 Upper case Greek letter (ordinary). + U+03A0 uppercase Greek letter (ordinary). '\pi' - U+03C0 Lower case Greek letter (ordinary). The variant form is + U+03C0 Lowercase Greek letter (ordinary). The variant form is '\varpi' U+03D6. '\pm' @@ -6947,10 +8975,10 @@ mode, see *note \ensuremath::. U+221D Is proportional to (relation) '\Psi' - U+03A8 Upper case Greek letter (ordinary). + U+03A8 uppercase Greek letter (ordinary). '\psi' - U+03C8 Lower case Greek letter (ordinary). + U+03C8 Lowercase Greek letter (ordinary). '\rangle' U+27E9 Right angle, or sequence, bracket (closing). Similar: @@ -6973,9 +9001,9 @@ mode, see *note \ensuremath::. this, load the 'amsfonts' package. '\restriction' - U+21BE Restriction of a function (relation). - Synonym: '\upharpoonright'. Not available in plain TeX. In LaTeX - you need to load the 'amssymb' package. + U+21BE Restriction of a function (relation). Synonym: + '\upharpoonright'. Not available in plain TeX. In LaTeX you need + to load the 'amssymb' package. '\revemptyset' U+29B0 Reversed empty set symbol (ordinary). Related: @@ -6994,7 +9022,7 @@ mode, see *note \ensuremath::. gives better spacing). '\rho' - U+03C1 Lower case Greek letter (ordinary). The variant form is + U+03C1 Lowercase Greek letter (ordinary). The variant form is '\varrho' U+03F1. '\Rightarrow' @@ -7018,18 +9046,18 @@ mode, see *note \ensuremath::. U+2198 Arrow pointing southeast (relation). '\setminus' - U+29F5 Set difference, reverse solidus or slash, like \ (binary). - Similar: backslash '\backslash' and also '\textbackslash' outside - of math mode. + U+29F5 Set difference, reverse solidus or reverse slash, like \ + (binary). Similar: backslash '\backslash' and also + '\textbackslash' outside of math mode. '\sharp' U+266F Musical sharp (ordinary). '\Sigma' - U+03A3 Upper case Greek letter (ordinary). + U+03A3 uppercase Greek letter (ordinary). '\sigma' - U+03C3 Lower case Greek letter (ordinary). The variant form is + U+03C3 Lowercase Greek letter (ordinary). The variant form is '\varsigma' U+03C2. '\sim' @@ -7114,10 +9142,10 @@ mode, see *note \ensuremath::. U+2199 Southwest-pointing arrow (relation). '\tau' - U+03C4 Lower case Greek letter (ordinary). + U+03C4 Lowercase Greek letter (ordinary). '\theta' - U+03B8 Lower case Greek letter (ordinary). The variant form is + U+03B8 Lowercase Greek letter (ordinary). The variant form is '\vartheta' U+03D1. '\times' @@ -7190,10 +9218,10 @@ mode, see *note \ensuremath::. operator '\biguplus'. '\Upsilon' - U+03A5 Upper case Greek letter (ordinary). + U+03A5 uppercase Greek letter (ordinary). '\upsilon' - U+03C5 Lower case Greek letter (ordinary). + U+03C5 Lowercase Greek letter (ordinary). '\varepsilon' U+03B5 Small letter script epsilon (ordinary). This is more widely @@ -7206,23 +9234,23 @@ mode, see *note \ensuremath::. load the 'amssymb' package. '\varphi' - U+03C6 Variant on the lower case Greek letter (ordinary). The + U+03C6 Variant on the lowercase Greek letter (ordinary). The non-variant form is '\phi' U+03D5. '\varpi' - U+03D6 Variant on the lower case Greek letter (ordinary). The + U+03D6 Variant on the lowercase Greek letter (ordinary). The non-variant form is '\pi' U+03C0. '\varrho' - U+03F1 Variant on the lower case Greek letter (ordinary). The + U+03F1 Variant on the lowercase Greek letter (ordinary). The non-variant form is '\rho' U+03C1. '\varsigma' - U+03C2 Variant on the lower case Greek letter (ordinary). The + U+03C2 Variant on the lowercase Greek letter (ordinary). The non-variant form is '\sigma' U+03C3. '\vartheta' - U+03D1 Variant on the lower case Greek letter (ordinary). The + U+03D1 Variant on the lowercase Greek letter (ordinary). The non-variant form is '\theta' U+03B8. '\vdash' @@ -7237,10 +9265,10 @@ mode, see *note \ensuremath::. U+2016 Vertical double bar (ordinary). Similar: vertical single bar '\vert'. - For a norm symbol, you can use the 'mathtools' package and add - '\DeclarePairedDelimiter\norm{\lVert}{\rVert}' to your preamble. - This gives you three command variants for double-line vertical bars - that are correctly horizontally spaced: if in the document body you + For a norm symbol, you can use the 'mathtools' package and put in + your preamble '\DeclarePairedDelimiter\norm{\lVert}{\rVert}'. This + gives you three command variants for double-line vertical bars that + are correctly horizontally spaced: if in the document body you write the starred version '$\norm*{M^\perp}$' then the height of the vertical bars will match the height of the argument, whereas with '\norm{M^\perp}' the bars do not grow with the height of the @@ -7253,10 +9281,10 @@ mode, see *note \ensuremath::. vertical bar '\Vert'. For such that, as in the definition of a set, use '\mid' because it is a relation. - For absolute value you can use the 'mathtools' package and add - '\DeclarePairedDelimiter\abs{\lvert}{\rvert}' to your preamble. - This gives you three command variants for single-line vertical bars - that are correctly horizontally spaced: if in the document body you + For absolute value you can use the 'mathtools' package and in your + preamble put '\DeclarePairedDelimiter\abs{\lvert}{\rvert}'. This + gives you three command variants for single-line vertical bars that + are correctly horizontally spaced: if in the document body you write the starred version '$\abs*{\frac{22}{7}}$' then the height of the vertical bars will match the height of the argument, whereas with '\abs{\frac{22}{7}}' the bars do not grow with the height of @@ -7275,13 +9303,189 @@ mode, see *note \ensuremath::. U+2240 Wreath product (binary). '\Xi' - U+039E Upper case Greek letter (ordinary). + U+039E uppercase Greek letter (ordinary). '\xi' - U+03BE Lower case Greek letter (ordinary). + U+03BE Lowercase Greek letter (ordinary). '\zeta' - U+03B6 Lower case Greek letter (ordinary). + U+03B6 Lowercase Greek letter (ordinary). + + The following symbols are most often used in plain text but LaTeX +provides versions to use in mathematical text. + +'\mathdollar' + Dollar sign in math mode: $. + +'\mathparagraph' + Paragraph sign (pilcrow) in math mode, U+00B6. + +'\mathsection' + Section sign in math mode U+00A7. + +'\mathsterling' + Sterling sign in math mode: #. + +'\mathunderscore' + Underscore in math mode: _. + +* Menu: + +* Blackboard bold:: Doublestruck characters. +* Calligraphic:: Cursive characters. +* \boldmath & \unboldmath:: Symbols in boldface. +* Dots:: Ellipses, etc. + + +File: latex2e.info, Node: Blackboard bold, Next: Calligraphic, Up: Math symbols + +16.2.1 Blackboard bold +---------------------- + +Synopsis: + + \usepackage{amssymb} % in preamble + ... + \mathbb{UPPERCASE-LETTER} + + Provide blackboard bold symbols, sometimes also known as doublestruck +letters, used to denote number sets such as the natural numbers, the +integers, etc. + + Here + + \( \forall n \in \mathbb{N}, n^2 \geq 0 \) + +the '\mathbb{N}' gives blackboard bold symbol U+2115 representing the +natural numbers. + + If you use other than an uppercase letter then you do not get an +error but you get strange results, including unexpected characters. + + There are packages that give access to symbols other than just the +capital letters; look on CTAN. + + +File: latex2e.info, Node: Calligraphic, Next: \boldmath & \unboldmath, Prev: Blackboard bold, Up: Math symbols + +16.2.2 Calligraphic +------------------- + +Synopsis: + + \mathcal{UPPERCASE-LETTERS} + + Use a script-like font. + + In this example the graph identifier is output in a cursive font. + + Let the graph be \( \mathcal{G} \). + + If you use something other than an uppercase letter then you do not +get an error. Instead you get unexpected output. For instance, +'\mathcal{g}' outputs a close curly brace symbol, while '\mathcal{+}' +outputs a plus sign. + + +File: latex2e.info, Node: \boldmath & \unboldmath, Next: Dots, Prev: Calligraphic, Up: Math symbols + +16.2.3 '\boldmath' & '\unboldmath' +---------------------------------- + +Synopsis (used in paragraph mode or LR mode): + + \boldmath \( MATH \) + +or + + \unboldmath \( MATH \) + + Declarations to change the letters and symbols in MATH to be in a +bold font, or to countermand that and bring back the regular (non-bold) +default. They must be used when not in math mode or display math mode +(*note Modes::). Both commands are fragile (*note \protect::). + + In this example each '\boldmath' command takes place inside an +'\mbox', + + we have $\mbox{\boldmath \( v \)} = 5\cdot\mbox{\boldmath \( u \)$}$ + +which means '\boldmath' is only called in a text mode, here LR mode, and +explains why LaTeX must switch to math mode to set 'v' and 'u'. + + If you use either command inside math mode, as with 'Trouble: \( +\boldmath x \)', then you get something like 'LaTeX Font Warning: +Command \boldmath invalid in math mode on input line 11' and 'LaTeX Font +Warning: Command \mathversion invalid in math mode on input line 11'. + + There are many issues with '\boldmath'. New documents should use the +'bm' package provided by the LaTeX Project team. A complete description +is outside the scope of this document (see the full documentation on +CTAN) but even this small example + + \usepackage{bm} % in preamble + ... + we have $\bm{v} = 5\cdot\bm{u}$ + +shows that it is an improvement over '\boldmath'. + + +File: latex2e.info, Node: Dots, Prev: \boldmath & \unboldmath, Up: Math symbols + +16.2.4 Dots, horizontal or vertical +----------------------------------- + +Ellipses are the three dots (usually three) indicating that a pattern +continues. + + \begin{array}{cccc} + a_{0,0} &a_{0,1} &a_{0,2} &\ldots \\ + a_{1,0} &\ddots \\ + \vdots + \end{array} + + LaTeX provides these. + +'\cdots' + Horizontal ellipsis with the dots raised to the center of the line, + as in U+22EF. Used as: '\( a_0\cdot a_1\cdots a_{n-1} \)'. + +'\ddots' + Diagonal ellipsis, U+22F1. See the above array example for a + usage. + +'\ldots' + Ellipsis on the baseline, U+2026. Used as: '\( x_0,\ldots x_{n-1} + \)'. Another example is the above array example. A synonym is + '\mathellipsis'. A synonym from the 'amsmath' package is '\hdots'. + + You can also use this command outside of mathematical text, as in + 'The gears, brakes, \ldots{} are all broken'. (In a paragraph mode + or LR mode a synonym for '\ldots' is '\dots'.) + +'\vdots' + Vertical ellipsis, U+22EE. See the above array example for a usage. + + The 'amsmath' package has the command '\dots' to semantically mark up +ellipses. This example produces two different-looking outputs for the +first two uses of the '\dots' command. + + \usepackage{amsmath} % in preamble + ... + Suppose that \( p_0, p_1, \dots, p_{n-1} \) lists all of the primes. + Observe that \( p_0\cdot p_1 \dots \cdot p_{n-1} +1 \) is not a + multiple of any \( p_i \). + Conclusion: there are infinitely many primes \( p_0, p_1, \dotsc \). + +In the first line LaTeX looks to the comma following '\dots' to +determine that it should output an ellipsis on the baseline. The second +line has a '\cdot' following '\dots' so LaTeX outputs an ellipsis that +is on the math axis, vertically centered. However, the third usage has +no follow-on character so you have to tell LaTeX what to do. You can +use one of the commands: '\dotsc' if you need the ellipsis appropriate +for a comma following, '\dotsb' if you need the ellipses that fits when +the dots are followed by a binary operator or relation symbol, '\dotsi' +for dots with integrals, or '\dotso' for others. File: latex2e.info, Node: Math functions, Next: Math accents, Prev: Math symbols, Up: Math formulas @@ -7293,109 +9497,117 @@ These commands produce roman function names in math mode with proper spacing. '\arccos' - \arccos + Inverse cosine '\arcsin' - \arcsin + Inverse sine '\arctan' - \arctan + Inverse tangent '\arg' - \arg + Angle between the real axis and a point in the complex plane '\bmod' - Binary modulo operator (x \bmod y) + Binary modulo operator, used as in '\( 5\bmod 3=2 \)' '\cos' - \cos + Cosine '\cosh' - \cosh + Hyperbolic cosine '\cot' - \cot + Cotangent '\coth' - \coth + Hyperbolic cotangent '\csc' - \csc + Cosecant '\deg' - \deg + Degrees '\det' - \det + Determinant '\dim' - \dim + Dimension '\exp' - \exp + Exponential '\gcd' - \gcd + Greatest common divisor '\hom' - \hom + Homomorphism '\inf' - \inf + Infinum '\ker' - \ker + Kernel '\lg' - \lg + Base 2 logarithm '\lim' - \lim + Limit '\liminf' - \liminf + Limit inferior '\limsup' - \limsup + Limit superior '\ln' - \ln + Natural logarithm '\log' - \log + Logarithm '\max' - \max + Maximum '\min' - \min + Minimum '\pmod' - parenthesized modulus, as in (\pmod 2^n - 1) + Parenthesized modulus, as used in '\( 5\equiv 2\pmod 3 \)' '\Pr' - \Pr + Probability '\sec' - \sec + Secant '\sin' - \sin + Sine '\sinh' - \sinh + Hyperbolic sine '\sup' - \sup + sup '\tan' - \tan + Tangent '\tanh' - \tanh + Hyperbolic tangent + + The 'amsmath' package adds improvements on some of these, and also +allows you to define your own. The full documentation is on CTAN, but +briefly, you can define an identity operator with +'\DeclareMathOperator{\identity}{id}' that is like the ones above but +prints as 'id'. The starred form '\DeclareMathOperator*{\op}{op}' sets +any limits above and below, as is traditional with '\lim', '\sup', or +'\max'. -File: latex2e.info, Node: Math accents, Next: Spacing in math mode, Prev: Math functions, Up: Math formulas +File: latex2e.info, Node: Math accents, Next: Over- and Underlining, Prev: Math functions, Up: Math formulas 16.4 Math accents ================= @@ -7405,80 +9617,143 @@ math. These are different from accents in normal text (*note Accents::). '\acute' - Math acute accent: \acute{x}. + Math acute accent '\bar' - Math bar-over accent: \bar{x}. + Math bar-over accent '\breve' - Math breve accent: \breve{x}. + Math breve accent '\check' - Math ha'c<ek (check) accent: \check{x}. + Math ha'c<ek (check) accent '\ddot' - Math dieresis accent: \ddot{x}. + Math dieresis accent '\dot' - Math dot accent: \dot{x}. + Math dot accent '\grave' - Math grave accent: \grave{x}. + Math grave accent '\hat' - Math hat (circumflex) accent: \hat{x}. - -'\imath' - Math dotless i. - -'\jmath' - Math dotless j. + Math hat (circumflex) accent '\mathring' - Math ring accent: x*. + Math ring accent '\tilde' - Math tilde accent: \tilde{x}. + Math tilde accent '\vec' - Math vector symbol: \vec{x}. + Math vector symbol '\widehat' - Math wide hat accent: \widehat{x+y}. + Math wide hat accent '\widetilde' - Math wide tilde accent: \widetilde{x+y}. + Math wide tilde accent + + When you are putting an accent on an i or a j, the tradition is to +use one without a dot, '\imath' or 'jmath' (*note Math symbols::). -File: latex2e.info, Node: Spacing in math mode, Next: Math miscellany, Prev: Math accents, Up: Math formulas +File: latex2e.info, Node: Over- and Underlining, Next: Spacing in math mode, Prev: Math accents, Up: Math formulas -16.5 Spacing in math mode +16.5 Over- and Underlining +========================== + +LaTeX provides commands for making overlines or underlines, or putting +braces over or under some material. + +'\underline{TEXT}' + Underline TEXT. Works inside math mode, and outside. The line is + always completely below the text, taking account of descenders, so + in '\(\underline{y}\)' the line is lower than in + '\(\underline{x}\)'. This command is fragile (*note \protect::). + + Note that the package 'ulem' does text mode underlining and allows + line breaking as well as a number of other features. See the + documentation on CTAN. See also *note \hrulefill & \dotfill:: for + producing a line, for such things as a signature. + +'\overline{TEXT}' + Put a horizontal line over TEXT. Works inside math mode, and + outside. For example, '\overline{x+y}'. Note that this differs + from the command '\bar' (*note Math accents::). + +'\underbrace{MATH}' + Put a brace under MATH. For example, this + '(1-\underbrace{1/2)+(1/2}-1/3)' emphasizes the telescoping part. + Attach text to the brace by using subscript, '_', or superscript, + '^', as here. + + \begin{displaymath} + 1+1/2+\underbrace{1/3+1/4}_{>1/2}+ + \underbrace{1/5+1/6+1/7+1/8}_{>1/2}+\cdots + \end{displaymath} + + The superscript appears on top of the expression, and so can look + unconnected to the underbrace. + +'\overbrace{MATH}' + Put a brace over MATH, as with + '\overbrace{x+x+\cdots+x}^{\mbox{\(k\) times}}'. See also + '\underbrace'. + + The package 'mathtools' adds an over- and underbrace, as well as some +improvements on the braces. See the documentation on CTAN. + + +File: latex2e.info, Node: Spacing in math mode, Next: Math miscellany, Prev: Over- and Underlining, Up: Math formulas + +16.6 Spacing in math mode ========================= -In a 'math' environment, LaTeX ignores the spaces that you use in the -source, and instead puts in the spacing according to the normal rules -for mathematics texts. +When typesetting mathematics, LaTeX puts in spacing according to the +normal rules for mathematics texts. If you enter 'y=m x' then LaTeX +ignores the space and in the output the m is next to the x, as y=mx. - Many math mode spacing definitions are expressed in terms of the math -unit "mu" given by 1 em = 18 mu, where the em is taken from the current -math symbols family (*note Units of length::). LaTeX provides the -following commands for use in math mode: + But LaTeX's rules sometimes need tweaking. For example, in an +integral the tradition is to put a small extra space between the 'f(x)' +and the 'dx', here done with the '\,' command. + + \int_0^1 f(x)\,dx + + LaTeX provides the commands that follow for use in math mode. Many +of these spacing definitions are expressed in terms of the math unit +"mu". It is defined as 1/18em, where the em is taken from the current +math symbols family (*note Units of length::). Thus, a '\thickspace' is +something like 5/18 times the width of a 'M'. '\;' - Normally '5.0mu plus 5.0mu'. The longer name is '\thickspace'. - Math mode only. + Synonym: '\thickspace'. Normally '5.0mu plus 5.0mu'. Math mode + only. '\:' '\>' - Normally '4.0mu plus 2.0mu minus 4.0mu'. The longer name is - '\medspace'. Math mode only. + Synonym: '\medspace'. Normally '4.0mu plus 2.0mu minus 4.0mu'. + Math mode only. '\,' - Normally '3mu'. The longer name is '\thinspace'. This can be used - in both math mode and text mode. *Note \thinspace::. + Synonym: '\thinspace'. Normally '3mu', which is 1/6em. Can be + used in both math mode and text mode (*note \thinspace & + \negthinspace::). + + This space is widely used, for instance between the function and + the infinitesimal in an integral '\int f(x)\,dx' and, if an author + does this, before punctuation in a displayed equation. + + The antiderivative is + \begin{equation} + 3x^{-1/2}+3^{1/2}\,. + \end{equation} '\!' - A negative thin space. Normally '-3mu'. Math mode only. + A negative thin space. Normally '-3mu'. The '\!' command is math + mode only but the '\negthinspace' command is available for text + mode (*note \thinspace & \negthinspace::). '\quad' This is 18mu, that is, 1em. This is often used for space @@ -7490,139 +9765,203 @@ following commands for use in math mode: A length of 2 quads, that is, 36mu = 2em. It is available in both text and math mode. - In this example a thinspace separates the function from the -infinitesimal. - - \int_0^1 f(x)\,dx - File: latex2e.info, Node: Math miscellany, Prev: Spacing in math mode, Up: Math formulas -16.6 Math miscellany +16.7 Math miscellany ==================== -'\*' - A "discretionary" multiplication symbol, at which a line break is - allowed. Without the break multiplication is implicitly indicated - by a space, while in the case of a break a U+00D7 symbol is printed - immediately before the break. So +LaTeX contains a wide variety of mathematics facilities. Here are some +that don't fit into other categories. - \documentclass{article} - \begin{document} - Now \(A_3 = 0\), hence the product of all terms \(A_1\) - through \(A_4\), that is \(A_1\* A_2\* A_3 \* A_4\), is - equal to zero. - \end{document} +* Menu: - will make that sort of output (the ellipsis '[...]' is here to show - the line break at the same place as in a TeX output): +* Colon character & \colon:: Colon. +* \*:: Discretionary multiplication. +* \frac:: Fraction. +* \left & \right:: Paired delimiters. +* \sqrt:: Radicals. +* \stackrel:: Text over a relation. - Now A_3 = 0, [...] A_1 through A_4, that is A_1 A_2 \times - A_3 A_4, is equal to zero. + +File: latex2e.info, Node: Colon character & \colon, Next: \*, Up: Math miscellany -'\cdots' - A horizontal ellipsis with the dots raised to the center of the - line. +16.7.1 Colon character ':' & '\colon' +------------------------------------- -'\ddots' - A diagonal ellipsis: \ddots. +Synopsis, one of: -'\frac{NUM}{DEN}' - Produces the fraction NUM divided by DEN. + : + \colon -'\left DELIM1 ... \right DELIM2' - The two delimiters need not match; '.' acts as a "null delimiter", - producing no output. The delimiters are sized according to the - math in between. Example: '\left( \sum_{i=1}^{10} a_i \right]'. + In mathematics, the colon character, ':', is a relation. -'\mathdollar' - Dollar sign in math mode: $. + With side ratios \( 3:4 \) and \( 4:5 \), the triangle is right. -'\mathellipsis' - Ellipsis (spaced for text) in math mode: .... +Ordinary LaTeX defines '\colon' to produce the colon character with the +spacing appropriate for punctuation, as in set-builder notation +'\{x\colon 0\leq x<1\}'. -'\mathparagraph' - Paragraph sign (pilcrow) in math mode: U+00B6. + But the widely-used 'amsmath' package defines '\colon' for use in the +definition of functions 'f\colon D\to C'. So if you want the colon +character as a punctuation then use '\mathpunct{:}'. -'\mathsection' - Section sign in math mode. + +File: latex2e.info, Node: \*, Next: \frac, Prev: Colon character & \colon, Up: Math miscellany -'\mathsterling' - Sterling sign in math mode: #. +16.7.2 '\*' +----------- -'\mathunderscore' - Underscore in math mode: _. +Synopsis: -'\overbrace{MATH}' - Generates a brace over MATH. For example, - '\overbrace{x+\cdots+x}^{k \;\textrm{times}}'. + \* -'\overline{TEXT}' - Generates a horizontal line over TEX. For example, - '\overline{x+y}'. + A multiplication symbol that allows a line break. If there is a +break then LaTeX puts a '\times' symbol, U+00D7, before that break. -'\sqrt[ROOT]{ARG}' - Produces the representation of the square root of ARG. The - optional argument ROOT determines what root to produce. For - example, the cube root of 'x+y' would be typed as '\sqrt[3]{x+y}'. + In '\( A_1\* A_2\* A_3\* A_4 \)', if there is no line break then +LaTeX outputs it as though it were '\( A_1 A_2 A_3 A_4 \)'. If a line +break does happen, for example between the two middle ones, then LaTeX +sets it like '\( A_1 A_2 \times \)', followed by the break, followed by +'\( A_3 A_4 \)'. -'\stackrel{TEXT}{RELATION}' - Puts TEXT above RELATION. For example, - '\stackrel{f}{\longrightarrow}'. + +File: latex2e.info, Node: \frac, Next: \left & \right, Prev: \*, Up: Math miscellany -'\underbrace{MATH}' - Generates MATH with a brace underneath. For example, - '\underbrace{x+y+z}_{>\,0}' +16.7.3 '\frac' +-------------- -'\underline{TEXT}' - Causes TEXT, which may be either math mode or not, to be - underlined. The line is always below the text, taking account of - descenders. +Synopsis: -'\vdots' - Produces a vertical ellipsis. + \frac{NUMERATOR}{DENOMINATOR} + + Produces the fraction. Used as: '\begin{displaymath} +\frac{1}{\sqrt{2\pi\sigma}} \end{displaymath}'. In inline math mode it +comes out small; see the discussion of '\displaystyle' (*note Math +formulas::). -File: latex2e.info, Node: Modes, Next: Page styles, Prev: Math formulas, Up: Top +File: latex2e.info, Node: \left & \right, Next: \sqrt, Prev: \frac, Up: Math miscellany -17 Modes -******** +16.7.4 '\left' & '\right' +------------------------- -When LaTeX is processing your input text, it is always in one of three -modes: +Synopsis: - * Paragraph mode - * Math mode - * Left-to-right mode, called LR mode for short + \left DELIMITER1 ... \right DELIMITER2 - Mode changes occur only when entering or leaving an environment, or -when LaTeX is processing the argument of certain text-producing -commands. + Make matching parentheses, braces, or other delimiters. The +delimiters are sized according to the math they enclose. This makes a +unit vector surrounded by appropriate-height parentheses. + + \begin{equation} + \left(\begin{array}{c} + 1 \\ + 0 \\ + \end{array}\right) + + Every '\left' must have a matching '\right'. Leaving out the +'\left(' in the above gets 'Extra \right'. Leaving off the '\right)' +gets 'You can't use `\eqno' in math mode'. + + However, the two delimiters DELIMITER1 and DELIMITER2 need not match. +A common case is that you want an unmatched brace, as below. Use a +period, '.', as a null delimiter. + + \begin{equation} + f(n)=\left\{\begin{array}{ll} + 1 &\mbox{--if \(n=0\)} \\ + f(n-1)+3n^2 &\mbox{--else} + \end{array}\right. + \end{equation} + +Note that to get a curly brace as a delimiter you must prefix it with a +backslash, '\{'. + + +File: latex2e.info, Node: \sqrt, Next: \stackrel, Prev: \left & \right, Up: Math miscellany + +16.7.5 '\sqrt' +-------------- + +Synopsis, one of: + + \sqrt{ARG} + \sqrt[ROOT-NUMBER]{ARG} + + The square root, or optionally other roots, of ARG. The optional +argument ROOT-NUMBER gives the root, i.e., enter the cube root of 'x+y' +as '\sqrt[3]{x+y}'. The radical grows with the size of ARG (as the +height of the radical grows, the angle on the leftmost part gets +steeper, until for a large enough 'arg', it is vertical). + + LaTeX has a separate '\surd' character (*note Math symbols::). + + +File: latex2e.info, Node: \stackrel, Prev: \sqrt, Up: Math miscellany + +16.7.6 '\stackrel' +------------------ + +Synopsis, one of: + + \stackrel{TEXT}{RELATION} + + Put TEXT above RELATION. To put a function name above an arrow enter +'\stackrel{f}{\longrightarrow}'. + + +File: latex2e.info, Node: Modes, Next: Page styles, Prev: Math formulas, Up: Top - "Paragraph mode" is the most common; it's the one LaTeX is in when -processing ordinary text. In this mode, LaTeX breaks the input text -into lines and breaks the lines into pages. - - LaTeX is in "math mode" when it's generating a mathematical formula, -either displayed math or within a line. - - In "LR mode", as in paragraph mode, LaTeX considers the output that -it produces to be a string of words with spaces between them. However, -unlike paragraph mode, LaTeX keeps going from left to right; it never -starts a new line in LR mode. Even if you put a hundred words into an -'\mbox', LaTeX would keep typesetting them from left to right inside a -single box (and then most likely complain because the resulting box was -too wide to fit on the line). LaTeX is in LR mode when it starts making -a box with an '\mbox' command. You can get it to enter a different mode -inside the box--for example, you can make it enter math mode to put a -formula in the box. - - There are also several text-producing commands and environments for -making a box that put LaTeX into paragraph mode. The box made by one of -these commands or environments will be called a 'parbox'. When LaTeX is -in paragraph mode while making a box, it is said to be in "inner -paragraph mode" (no page breaks). Its normal paragraph mode, which it -starts out in, is called "outer paragraph mode". +17 Modes +******** + +As LaTeX processes your document, at any point it is in one of six +modes. They fall into three categories of two each, the horizontal +modes, the math modes, and the vertical modes. Some commands only work +in one mode or another (in particular, many commands only work in one of +the math modes), and error messages will refer to these. + + * "Paragraph mode" is what LaTeX is in when processing ordinary text. + It breaks the input text into lines and breaks the lines into + pages. This is the mode LaTeX is in most of the time. + + "LR mode" (for left-to-right mode; in plain TeX this is called + "restricted horizontal mode") is in effect when LaTeX starts making + a box with an '\mbox' command. As in paragraph mode, LaTeX's + output is a string of words with spaces between them. Unlike in + paragraph mode, in LR mode LaTeX never starts a new line, it just + keeps going from left to right. (Although LaTeX will not complain + that the LR box is too long, when it is finished and next tries to + put that box into a line, it could very well complain that the + finished LR box won't fit there.) + + * "Math mode" is when LaTeX is generating an inline mathematical + formula. + + "Display math mode" is when LaTeX is generating a displayed + mathematical formula. (Displayed formulas differ somewhat from + inline ones. One example is that the placement of the subscript on + '\int' differs in the two situations.) + + * "Vertical mode" is when LaTeX is building the list of lines and + other material making the output page. This is the mode LaTeX is + in when it starts a document. + + "Internal vertical mode" is in effect when LaTeX starts making a + '\vbox'. This is the vertical analogue of LR mode. + +For instance, if you begin a LaTeX article with 'Let \( x \) be ...' +then these are the modes: first LaTeX starts every document in vertical +mode, then it reads the 'L' and switches to paragraph mode, then the +next switch happens at the '\(' where LaTeX changes to math mode, and +then when it leaves the formula it pops back to paragraph mode. + + Paragraph mode has two subcases. If you use a '\parbox' command or +or a 'minipage' then LaTeX is put into paragraph mode. But it will not +put a page break here. Inside one of these boxes, called a "parbox", +LaTeX is in "inner paragraph mode". Its more usual situation, where it +can put page breaks, is "outer paragraph mode" (*note Page breaking::). * Menu: @@ -7638,29 +9977,22 @@ Synopsis: \ensuremath{FORMULA} - The '\ensuremath' command ensures that FORMULA is typeset in math -mode whatever the current mode in which the command is used. + Ensure that FORMULA is typeset in math mode. - For instance: + For instance, you can redefine commands that ordinarily can be used +only in math mode, so that they can be used both in math and in plain +text. - \documentclass{report} - \newcommand{\ab}{\ensuremath{(\delta, \varepsilon)}} - \begin{document} - Now, the \ab\ pair is equal to \(\ab = (\frac{1}{\pi}, 0)\), ... - \end{document} + \newcommand{\dx}{\ensuremath{dx}} + In $\int f(x)\, \dx$, the \dx{} is an infinitesimal. - One can redefine commands that can be used only in math mode so that -they ca be used in any mode like in the following example given for -'\leadsto': + Caution: the '\ensuremath' command is useful but not a panacea. - \documentclass{report} - \usepackage{amssymb} - \newcommand{\originalMeaningOfLeadsTo}{} - \let\originalMeaningOfLeadsTo\leadsto - \renewcommand\leadsto{\ensuremath{\originalMeaningOfLeadsTo}} - \begin{document} - All roads \leadsto\ Rome. - \end{document} + \newcommand{\alf}{\ensuremath{\alpha}} + You get an alpha in text mode: \alf. + But compare the correct spacing in $\alf+\alf$ with that in \alf+\alf. + +Best is to typeset math things in a math mode. File: latex2e.info, Node: Page styles, Next: Spaces, Prev: Modes, Up: Top @@ -7668,8 +10000,14 @@ File: latex2e.info, Node: Page styles, Next: Spaces, Prev: Modes, Up: Top 18 Page styles ************** -The '\documentclass' command determines the size and position of the -page's head and foot. The page style determines what goes in them. +The style of a page determines where LaTeX places the components of that +page, such as headers and footers, and the text body. This includes +pages in the main part of the document but also includes special pages +such as the title page of a book, a page from an index, or the first +page of an article. + + The package 'fancyhdr' is very helpful for constructing page styles. +See its documentation on CTAN. * Menu: @@ -7684,28 +10022,73 @@ File: latex2e.info, Node: \maketitle, Next: \pagenumbering, Up: Page styles 18.1 '\maketitle' ================= -The '\maketitle' command generates a title on a separate title -page--except in the 'article' class, where the title is placed at the -top of the first page. Information used to produce the title is -obtained from the following declarations: +Synopsis: + + \maketitle + + Generate a title. In the standard classes the title appears on a +separate page, except in the 'article' class where it is at the top of +the first page. (*Note Document class options:: for information about +the 'titlepage' document class option.) -'\author{NAME \and NAME2}' - The '\author' command declares the document author(s), where the - argument is a list of authors separated by '\and' commands. Use - '\\' to separate lines within a single author's entry--for example, - to give the author's institution or address. + This example shows '\maketitle' appearing in its usual place, +immediately after '\begin{document}'. + + \documentclass{article} + \title{Constructing a Nuclear Reactor Using Only Coconuts} + \author{Jonas Grumby\thanks{% + With the support of a Ginger Grant from the Roy Hinkley Society.} \\ + Skipper, \textit{Minnow} + \and + Willy Gilligan\thanks{% + Thanks to the Mary Ann Summers foundation + and to Thurston and Lovey Howell.} \\ + Mate, \textit{Minnow} + } + \date{1964-Sep-26} + \begin{document} + \maketitle + Just sit right back and you'll hear a tale, a tale of a fateful trip. + That started from this tropic port, aboard this tiny ship. The mate was + a mighty sailin' man, the Skipper brave and sure. Five passengers set + sail that day for a three hour tour. A three hour tour. + ... + + You tell LaTeX the information used to produce the title by making +the following declarations. These must come before the '\maketitle', +either in the preamble or in the document body. + +'\author{NAME1 \and NAME2 \and ...}' + Required. Declare the document author or authors. The argument is + a list of authors separated by '\and' commands. To separate lines + within a single author's entry, for instance to give the author's + institution or address, use a double backslash, '\\'. If you omit + the '\author' declaration then you get 'LaTeX Warning: No \author + given'. '\date{TEXT}' - The '\date' command declares TEXT to be the document's date. With - no '\date' command, the current date (*note \today::) is used. + Optional. Declare TEXT to be the document's date. The TEXT + doesn't need to be in a date format; it can be any text at all. If + you omit '\date' then LaTeX uses the current date (*note \today::). + To have no date, instead use '\date{}'. '\thanks{TEXT}' - The '\thanks' command produces a '\footnote' to the title, usually - used for credit acknowledgements. + Optional. Produce a footnote. You can use it in the author + information for acknowledgements, as illustrated below, but you can + also use it in the title, or any place a footnote makes sense. It + can be any text so you can use it to print an email address, or for + any purpose. '\title{TEXT}' - The '\title' command declares TEXT to be the title of the document. - Use '\\' to force a line break, as usual. + Required. Declare TEXT to be the title of the document. Get line + breaks inside TEXT with a double backslash, '\\'. If you omit the + '\title' declaration then you get 'LaTeX Error: No \title given'. + + Many publishers will provide a class to use in place of 'article' in +that example, that formats the title according to their house +requirements. To make your own, see *note titlepage::. You can either +create this as a one-off or you can include it as part of a renewed +'\maketitle' command. File: latex2e.info, Node: \pagenumbering, Next: \pagestyle, Prev: \maketitle, Up: Page styles @@ -7715,25 +10098,57 @@ File: latex2e.info, Node: \pagenumbering, Next: \pagestyle, Prev: \maketitle, Synopsis: - \pagenumbering{STYLE} + \pagenumbering{NUMBER-STYLE} - Specifies the style of page numbers, according to STYLE; also resets -the page number to 1. The STYLE argument is one of the following: + Specifies the style of page numbers, and resets the page number. The +numbering style is reflected on the page, and also in the table of +contents and other page references. This declaration has global scope +so its effect is not delimited by braces or environments. + + In this example, before the Main section the pages are numbered 'a', +etc. Starting on the page containing that section, the pages are +numbered '1', etc. + + \begin{document}\pagenumbering{alph} + ... + \section{Main}\pagenumbering{arabic} + ... + + The argument NUMBER-STYLE is one of the following (see also *note +\alph \Alph \arabic \roman \Roman \fnsymbol::). 'arabic' - arabic numerals + arabic numerals: 1, 2, ... 'roman' - lowercase Roman numerals + lowercase Roman numerals: i, ii, ... 'Roman' - uppercase Roman numerals + uppercase Roman numerals: I, II, ... 'alph' - lowercase letters + lowercase letters: a, b, ... If you have more than 26 pages then + you get 'LaTeX Error: Counter too large'. 'Alph' - uppercase letters + uppercase letters: A, B, ... If you have more than 26 pages then + you get 'LaTeX Error: Counter too large'. + +'gobble' + LaTeX does not output a page number, although it does get reset. + References to that page also are blank. (This does not work with + the popular package 'hyperref' so to have the page number not + appear you may want to instead use '\pagestyle{empty}' or + '\thispagestyle{empty}'.) + + Traditionally, if a document has front matter--preface, table of +contents, etc.--then it is numbered with lowercase Roman numerals. The +main matter of a document uses arabic. *Note \frontmatter & \mainmatter +& \backmatter::. + + If you want to address where the page number appears on the page, +see *note \pagestyle::. If you want to change the value of page number +then you will manipulate the 'page' counter (*note Counters::). File: latex2e.info, Node: \pagestyle, Next: \thispagestyle, Prev: \pagenumbering, Up: Page styles @@ -7745,44 +10160,113 @@ Synopsis: \pagestyle{STYLE} - The '\pagestyle' command specifies how the headers and footers are -typeset from the current page onwards. Values for STYLE: + Declaration that specifies how the page headers and footers are +typeset, from the current page onwards. + + A discussion with an example is below. Note first that the package +'fancyhdr' is now the standard way to manipulate headers and footers. +New documents that need to do anything other than one of the standard +options below should use this package. See its documentation on CTAN. + + Values for STYLE: 'plain' - Just a plain page number. + The header is empty. The footer contains only a page number, + centered. 'empty' - Empty headers and footers, e.g., no page numbers. + The header and footer is empty. 'headings' - Put running headers on each page. The document style specifies - what goes in the headers. + Put running headers and footers on each page. The document style + specifies what goes in there; see the discussion below. 'myheadings' Custom headers, specified via the '\markboth' or the '\markright' commands. + Some discussion of the motivation for LaTeX's mechanism will help you +work with the options 'headings' or 'myheadings'. The document source +below produces an article, two-sided, with the pagestyle 'headings'. On +this document's left hand pages, LaTeX wants (in addition to the page +number) the title of the current section. On its right hand pages LaTeX +wants the title of the current subsection. When it makes up a page, +LaTeX gets this information from the commands '\leftmark' and +'\rightmark'. So it is up to '\section' and '\subsection' to store that +information there. + + \documentclass[twoside]{article} + \pagestyle{headings} + \begin{document} + ... \section{Section 1} ... \subsection{Subsection 1.1} ... + \section{Section 2} + ... + \subsection{Subsection 2.1} + ... + \subsection{Subsection 2.2} + ... + +Suppose that the second section falls on a left page. Although when the +page starts it is in the first section, LaTeX will put 'Section 2' in +the left page header. As to the right header, if no subsection starts +before the end of the right page then LaTeX blanks the right hand +header. If a subsection does appear before the right page finishes then +there are two cases. If at least one subsection starts on the right +hand page then LaTeX will put in the right header the title of the first +subsection starting on that right page. If at least one of 2.1, 2.2, +..., starts on the left page but none starts on the right then LaTeX +puts in the right hand header the title of the last subsection to start, +that is, the one in effect during the right hand page. + + To accomplish this, in a two-sided article, LaTeX has '\section' +issue a command '\markboth', setting '\leftmark' to 'Section 2' and +setting '\rightmark' to blank. And, LaTeX has '\subsection' issue a +command '\markright', setting '\rightmark' to 'Subsection 2.1', etc. + Here are the descriptions of '\markboth' and '\markright': -'\markboth{LEFT}{RIGHT}' - Sets both the left and the right heading. A "left-hand heading" - (LEFT) is generated by the last '\markboth' command before the end - of the page, while a "right-hand heading" (RIGHT) is generated by - the first '\markboth' or '\markright' that comes on the page if - there is one, otherwise by the last one before the page. +'\markboth{LEFT-HEAD}{RIGHT-HEAD}' + Sets both the right hand and left hand heading information for + either a page style of 'headings' or 'myheadings'. A left hand + page heading LEFT-HEAD is generated by the last '\markboth' command + before the end of the page. A right hand page heading RIGHT-HEAD + is generated by the first '\markboth' or '\markright' that comes on + the page if there is one, otherwise by the last one that came + before that page. '\markright{RIGHT}' - Sets the right heading, leaving the left heading unchanged. + Sets the right hand page heading, leaving the left unchanged. File: latex2e.info, Node: \thispagestyle, Prev: \pagestyle, Up: Page styles -18.4 '\thispagestyle{STYLE}' -============================ +18.4 '\thispagestyle' +===================== + +Synopsis: + + \thispagestyle{STYLE} + + Works in the same way as the '\pagestyle' (*note \pagestyle::), +except that it changes to STYLE for the current page only. This +declaration has global scope, so its effect is not delimited by braces +or environments. + + Often the first page of a chapter or section has a different style. +For example, this LaTeX book document has the first page of the first +chapter in in 'plain' style, as is the default (*note Page styles::). + + \documentclass{book} + \pagestyle{headings} + \begin{document} + \chapter{First chapter} + ... + \chapter{Second chapter}\thispagestyle{empty} + ... -The '\thispagestyle' command works in the same manner as the -'\pagestyle' command (see previous section) except that it changes to -STYLE for the current page only. +The 'plain' style has a page number on it, centered in the footer. To +make the page entirely empty, the command '\thispagestyle{empty}' +immediately follows the second '\chapter'. File: latex2e.info, Node: Spaces, Next: Boxes, Prev: Page styles, Up: Top @@ -7790,96 +10274,205 @@ File: latex2e.info, Node: Spaces, Next: Boxes, Prev: Page styles, Up: Top 19 Spaces ********* -LaTeX has many ways to produce white (or filled) space. +LaTeX has many ways to produce white (or filled) space. Some of these +are best suited to mathematical text; see *note Spacing in math mode::. +Some spacing commands are suitable for both regular text and +mathematical text; versions of some of these commands are in this +chapter. * Menu: Horizontal space -* \hspace:: Fixed horizontal space. -* \hfill:: Stretchable horizontal space. -* \spacefactor:: Stretchability of following space -* \(SPACE) after control sequence:: Space (gobbling) after a control sequence. -* \thinspace:: One-sixth of an em. -* \/:: Insert italic correction. -* \hrulefill \dotfill:: Stretchable horizontal rule or dots. +* \enspace & \quad & \qquad:: Traditional horizontal spaces. +* \hspace:: Any horizontal space. +* \hfill:: Stretchable horizontal space. +* \hss:: Infinitely stretchable/shrinkable horizontal space. +* \spacefactor:: Stretchability of following space +* \(SPACE):: Backslash-space; and explicit space. +* ~:: Tie, an unbreakable space. +* \thinspace & \negthinspace:: One-sixth of an em, and negative one-sixth. +* \/:: Italic correction. +* \hrulefill & \dotfill:: Stretchable horizontal rule or dots. Vertical space -* \addvspace:: Add arbitrary vertical space if needed. -* \bigskip \medskip \smallskip:: Fixed vertical spaces. -* \vfill:: Infinitely stretchable vertical space. -* \vspace:: Add arbitrary vertical space. +* \bigskip & \medskip & \smallskip:: Inter-paragraph vertical spaces. +* \bigbreak & \medbreak & \smallbreak:: Inter-paragraph space and page breaks. +* \strut:: Ensure height of a line. +* \vspace:: Vertical space. +* \vfill:: Stretchable vertical space. +* \addvspace:: Add arbitrary vertical space if needed. -File: latex2e.info, Node: \hspace, Next: \hfill, Up: Spaces +File: latex2e.info, Node: \enspace & \quad & \qquad, Next: \hspace, Up: Spaces -19.1 '\hspace' +19.1 '\enspace' & '\quad' & '\qquad' +==================================== + +Synopsis, one of: + + \enspace + \quad + \qquad + + Insert a horizontal space of 1/2em, 1em, or 2em. The em is a length +defined by a font designer, often thought of as being the width of a +capital M. One advantage of describing space in ems is that it can be +more portable across documents than an absolute measurement such as +points (*note Lengths/em::). + + This puts a suitable gap between two graphics. + + \begin{center} + \includegraphics{womensmile.png}% + \qquad\includegraphics{mensmile.png} + \end{center} + +*Note Spacing in math mode:: for '\quad' and '\qquad'. These are +lengths from centuries of typesetting and so may be a better choice in +many circumstances than arbitrary lengths, such as you get with +'\hspace'. + + +File: latex2e.info, Node: \hspace, Next: \hfill, Prev: \enspace & \quad & \qquad, Up: Spaces + +19.2 '\hspace' ============== -Synopsis: +Synopsis, one of: \hspace{LENGTH} \hspace*{LENGTH} - Add the horizontal space given by LENGTH. The LENGTH is a rubber -length, that is, it may contain a 'plus' or 'minus' component, in any -unit that LaTeX understands (*note Lengths::). + Insert the horizontal space LENGTH. The LENGTH can be positive, +negative, or zero; adding negative space is like backspacing. It is a +rubber length, that is, it may contain a 'plus' or 'minus' component, or +both (*note Lengths::). Because the space is stretchable and +shrinkable, it is sometimes called "glue". + + This makes a line with 'Name:' an inch from the right margin. + + \noindent\makebox[\linewidth][r]{Name:\hspace{1in}} + + The '*'-version inserts horizontal space that non-discardable. More +precisely, when TeX breaks a paragraph into lines any white space--glues +and kerns--that come at a line break are discarded. The '*'-version +avoids that (technically, it adds a non-discardable invisible item in +front of the space). + + In this example - This command can add both positive and negative space; adding -negative space is like backspacing. + \parbox{0.8\linewidth}{% + Fill in each blank: Four \hspace*{1in} and seven years ago our + fathers brought forth on this continent, a new \hspace*{1in}, + conceived in \hspace*{1in}, and dedicated to the proposition + that all men are created \hspace*{1in}.} - Normally when TeX breaks a paragraph into lines it discards white -space (glues and kerns) that would come at the start of a line, so you -get an inter-word space or a line break between words but not both. -This command's starred version '\hspace*{...}' puts a non-discardable -invisible item in front of the space, so the space appears in the -output. +the 1 inch blank following 'conceived in' falls at the start of a line. +If you erase the '*' then LaTeX discards the blank. - This example make a one-line paragraph that puts 'Name:' an inch from -the right margin. + Here, the '\hspace' separates the three graphics. - \noindent\makebox[\linewidth]{\hspace{\fill}Name:\hspace{1in}} + \begin{center} + \includegraphics{lion.png}% comment keeps out extra space + \hspace{1cm minus 0.25cm}\includegraphics{tiger.png}% + \hspace{1cm minus 0.25cm}\includegraphics{bear.png} + \end{center} + +Because the argument to each '\hspace' has 'minus 0.25cm', each can +shrink a little if the three figures are too wide. But each space won't +shrink more than 0.25cm (*note Lengths::). -File: latex2e.info, Node: \hfill, Next: \spacefactor, Prev: \hspace, Up: Spaces +File: latex2e.info, Node: \hfill, Next: \hss, Prev: \hspace, Up: Spaces -19.2 '\hfill' +19.3 '\hfill' ============= -Produce a rubber length which has no natural space but can stretch -horizontally as far as needed (*note Lengths::). +Synopsis: + + \hfill + + Produce a rubber length which has no natural space but that can +stretch horizontally as far as needed (*note Lengths::). - The command '\hfill' is equivalent to '\hspace{\fill}'. For space -that does not disappear at line breaks use '\hspace*{\fill}' instead -(*note \hspace::). + This creates a one-line paragraph with 'Name:' on the left side of +the page and 'Quiz One' on the right. + + \noindent Name:\hfill Quiz One + + The '\hfill' command is equivalent to '\hspace{\fill}' and so the +space can be discarded at line breaks. To avoid that instead use +'\hspace*{\fill}' (*note \hspace::). + + Here the graphs are evenly spaced in the middle of the figure. + + \newcommand*{\vcenteredhbox}[1]{\begin{tabular}{@{}c@{}}#1\end{tabular}} + ... + \begin{figure} + \hspace*{\fill}% + \vcenteredhbox{\includegraphics{graph0.png}}% + \hfill\vcenteredhbox{\includegraphics{graph1.png}}% + \hspace*{\fill}% + \caption{Comparison of two graphs} \label{fig:twographs} + \end{figure} + +Note the '\hspace*''s where the space could otherwise be dropped. + + +File: latex2e.info, Node: \hss, Next: \spacefactor, Prev: \hfill, Up: Spaces + +19.4 '\hss' +=========== + +Synopsis: + + \hss + + Produce a horizontal space that is infinitely shrinkable as well as +infinitely stretchable (this command is a TeX primitive). LaTeX authors +should reach first for the '\makebox' command to get the effects of +'\hss' (*note \mbox & \makebox::). + + Here, the first line's '\hss' makes the Z stick out to the right, +overwriting the Y. In the second line the Z sticks out to the left, +overwriting the X. + + X\hbox to 0pt{Z\hss}Y + X\hbox to 0pt{\hss Z}Y + +Without the '\hss' you get something like 'Overfull \hbox (6.11111pt too +wide) detected at line 20'. -File: latex2e.info, Node: \spacefactor, Next: \(SPACE) after control sequence, Prev: \hfill, Up: Spaces +File: latex2e.info, Node: \spacefactor, Next: \(SPACE), Prev: \hss, Up: Spaces -19.3 '\spacefactor' +19.5 '\spacefactor' =================== Synopsis: \spacefactor=INTEGER - While LaTeX is making the page, to give the lines the best appearance -it may stretch or shrink the gaps between words. The '\spacefactor' -command (from Plain TeX) allows you to change the LaTeX's default -behavior. + Influence LaTeX's glue stretch and shrink behavior. Most user-level +documents do not use this command. + + While LaTeX is laying out the material, it may stretch or shrink the +gaps between words. (This space is not a character; it is called the +"interword glue"; *note \hspace::). The '\spacefactor' command (from +Plain TeX) allows you to, for instance, have the space after a period +stretch more than the space after a word-ending letter. After LaTeX places each character, or rule or other box, it sets a parameter called the "space factor". If the next thing in the input is -a space then this parameter affects how much of a horizontal gap LaTeX -will have it span. (This gap is not a character; it is called -"interword glue".) A larger space factor means that the glue gap can -stretch more and shrink less. - - Normally, the space factor is 1000; this value is in effect following -most characters, and any non-character box or math formula. But it is -3000 after a period, exclamation mark, or question mark, it is 2000 -after a colon, 1500 after a semicolon, 1250 after a comma, and 0 after a -right parenthesis or bracket, or closing double quote or single quote. -Finally, it is 999 after a capital letter. +a space then this parameter affects how much stretching or shrinking can +happen. A space factor that is larger than the normal value means that +the glue can stretch more and shrink less. Normally, the space factor +is 1000. This value is in effect following most characters, and any +non-character box or math formula. But it is 3000 after a period, +exclamation mark, or question mark, it is 2000 after a colon, 1500 after +a semicolon, 1250 after a comma, and 0 after a right parenthesis or +bracket, or closing double quote or single quote. Finally, it is 999 +after a capital letter. If the space factor F is 1000 then the glue gap will be the font's normal space value (for Computer Modern Roman 10 point this is @@ -7888,271 +10481,556 @@ then TeX adds the font's extra space value (for Computer Modern Roman 10 point this is 1.11111 points), and then the font's normal stretch value is multiplied by f /1000 and the normal shrink value is multiplied by 1000/f (for Computer Modern Roman 10 point these are 1.66666 and -1.11111 points). In short, compared to a normal space, such as the -space following a word ending in a lowercase letter, inter-sentence -spacing has a fixed extra space added and then the space can stretch 3 -times as much and shrink 1/3 as much. - - The rules for how TeX uses space factors are even more complex -because they play two more roles. In practice, there are two -consequences. First, if a period or other punctuation is followed by a -close parenthesis or close double quote then its effect is still in -place, that is, the following glue will have increased stretch and -shrink. Second, conversely, if punctuation comes after a capital letter -then its effect is not in place so you get an ordinary space. For how -to adjust to this second case, for instance if an abbreviation does not -end in a capital letter, *note \(SPACE) and \@::. +1.11111 points). + + For example, consider the period ending 'A man's best friend is his +dog.' After it, TeX puts in a fixed extra space, and also allows the +glue to stretch 3 times as much and shrink 1/3 as much, as the glue +after 'friend', which does not end in a period. + + The rules for space factors are even more complex because they play +additional roles. In practice, there are two consequences. First, if a +period or other punctuation is followed by a right parenthesis or +bracket, or right single or double quote then the spacing effect of that +period carries through those characters (that is, the following glue +will have increased stretch and shrink). Second, if punctuation comes +after a capital letter then its effect is not in place so you get an +ordinary space. This second case also affects abbreviations that do not +end in a capital letter (*note \@::). + + You can only use '\spacefactor' in paragraph mode or LR mode (*note +Modes::). You can see the current value with '\the\spacefactor' or +'\showthe\spacefactor'. + + (Comment, not really related to '\spacefactor': if you get errors +like 'You can't use `\spacefactor' in vertical mode', or 'You can't use +`\spacefactor' in math mode.', or 'Improper \spacefactor' then you have +probably tried to redefine an internal command. *Note \makeatletter & +\makeatother::.) * Menu: -* \(SPACE) and \@:: Space after a period. -* \frenchspacing:: Equal interword and inter-sentence space. -* \normalsfcodes:: Restore space factor settings to the default. +* \@:: Distinguish sentence-ending periods from abbreviations. +* \frenchspacing:: Equal interword and inter-sentence space. +* \normalsfcodes:: Restore space factor settings to the default. -File: latex2e.info, Node: \(SPACE) and \@, Next: \frenchspacing, Up: \spacefactor +File: latex2e.info, Node: \@, Next: \frenchspacing, Up: \spacefactor -19.3.1 '\(SPACE)' and '\@' --------------------------- +19.5.1 '\@' +----------- + +Synopsis: + + CAPITAL-LETTER\@. -Here, '\(SPACE)' means a backslash followed by a space. These commands -mark a punctuation character, typically a period, as either ending a -sentence or as ending an abbreviation. + Treat a period as sentence-ending, where LaTeX would otherwise think +it is part of an abbreviation. LaTeX thinks that a period ends an +abbreviation if the period comes after a capital letter, and otherwise +thinks the period ends the sentence. By default, in justifying a line +LaTeX adjusts the space after a sentence-ending period (or a question +mark, exclamation point, comma, or colon) more than it adjusts the space +between words (*note \spacefactor::). - By default, in justifying a line LaTeX adjusts the space after a -sentence-ending period (or a question mark, exclamation point, comma, or -colon) more than the space between words. *Note \spacefactor::. As -described there, LaTeX assumes that the period ends a sentence unless it -is preceded by a capital letter, in which case it takes that period for -part of an abbreviation. Note that if a sentence-ending period is -immediately followed by a right parenthesis or bracket, or right single -or double quote, then the space effect of that period follows through -that parenthesis or quote. + This example shows the two cases to remember. - So: if you have a period ending an abbreviation whose last letter is -not a capital letter, and that abbreviation is not the last word in the -sentence, then follow that period with a backslash-space ('\ ') or a tie -('~') or a '\@'. Examples are 'Nat.\ Acad.\ Science', and 'Mr.~Bean', -and '(manure, etc.\@) for sale' (note that in the last the '\@' comes -before the closing parenthesis). + The songs \textit{Red Guitar}, etc.\ are by Loudon Wainwright~III\@. - In the opposite situation, if you have a capital letter followed by a -period that does end the sentence, then put '\@' before the period. For -example, 'book by the MAA\@.' will have correct inter-sentence spacing -after the period. +The second period ends the sentence, despite that it is preceded by a +capital. We tell LaTeX that it ends the sentence by putting '\@' before +it. The first period ends the abbreviation 'etc.' but not the sentence. +The backslash-space, '\ ', produces a mid-sentence space. - For another use of '\(SPACE)', *note \(SPACE) after control -sequence::. + So: if you have a capital letter followed by a period that ends the +sentence, then put '\@' before the period. This holds even if there is +an intervening right parenthesis or bracket, or right single or double +quote, because the spacing effect of that period carries through those +characters. For example, this + + Use the \textit{Instructional Practices Guide}, + (a book by the MAA)\@. + +will have correct inter-sentence spacing after the period. + + The '\@' command is only for a text mode. If you use it outside of a +text mode then you get 'You can't use `\spacefactor' in vertical mode' +(*note Modes::). + + Comment: the converse case is a period ending an abbreviation whose +last letter is not a capital letter, and that abbreviation is not the +last word in the sentence. For that case follow the period with a +backslash-space, ('\ '), or a tie, ('~'), or '\@'. Examples are 'Nat.\ +Acad.\ Science', and 'Mr.~Bean', and '(manure, etc.\@) for sale' (note +in the last one that the '\@' comes before the closing parenthesis). -File: latex2e.info, Node: \frenchspacing, Next: \normalsfcodes, Prev: \(SPACE) and \@, Up: \spacefactor +File: latex2e.info, Node: \frenchspacing, Next: \normalsfcodes, Prev: \@, Up: \spacefactor -19.3.2 '\frenchspacing' +19.5.2 '\frenchspacing' ----------------------- -This declaration (from Plain TeX) causes LaTeX to treat inter-sentence -spacing in the same way as interword spacing. +Synopsis, one of: + + \frenchspacing + \nonfrenchspacing - In justifying the text in a line, some typographic traditions, -including English, prefer to adjust the space between sentences (or -after other punctuation marks) more than the space between words. -Following this declaration, all spaces are instead treated equally. + The first declaration causes LaTeX to treat spacing between sentences +in the same way as spacing between words in the middle of a sentence. +The second causes spacing between sentences to stretch or shrink more +(*note \spacefactor::); this is the default. - Revert to the default behavior by declaring '\nonfrenchspacing'. + Some typographic traditions, including English, prefer to adjust the +space between sentences (or spaces following a question mark, +exclamation point, comma, or colon) more than the space between words +that are in the middle of a sentence. Declaring '\frenchspacing' (the +command is from Plain TeX) switches to the tradition that all spaces are +treated equally. File: latex2e.info, Node: \normalsfcodes, Prev: \frenchspacing, Up: \spacefactor -19.3.3 '\normalsfcodes' +19.5.3 '\normalsfcodes' ----------------------- -Reset the LaTeX space factor values to the default. +Synopsis: + + \normalsfcodes + + Reset the LaTeX space factor values to the default (*note +\spacefactor::). -File: latex2e.info, Node: \(SPACE) after control sequence, Next: \thinspace, Prev: \spacefactor, Up: Spaces +File: latex2e.info, Node: \(SPACE), Next: ~, Prev: \spacefactor, Up: Spaces -19.4 '\ ' after control sequence -================================ +19.6 Backslash-space, '\ ' +========================== + +This section refers to the command consisting of two characters, a +backslash followed by a space. Synopsis: -The '\ ' command is often used after control sequences to keep them from -gobbling the space that follows, as in '\TeX\ is nice'. And, under -normal circumstances, '\'<tab> and '\'<newline> are equivalent to '\ '. -For another use of '\ ', see also *note \(SPACE) and \@::. + \ - Some people prefer to use '{}' for the same purpose, as in '\TeX{} is -nice'. This has the advantage that you can always write it the same -way, namely '\TeX{}', whether it is followed by a space or by a -punctuation mark. Compare: + Produce a space. By default it produces white space of length +3.33333pt plus 1.66666pt minus 1.11111pt. - \TeX\ is a nice system. \TeX, a nice system. + A blank is not a space. When you type a blank between words, LaTeX +produces white space. That's different from an explicit space. This +illustrates. - \TeX{} is a nice system. \TeX{}, a nice system. + \begin{tabular}{l} + Three blanks: in a row \\ + Three spaces:\ \ \ in a row \\ + \end{tabular} - Some individual commands, notably those defined with the 'xspace', -package do not follow the standard behavior. +On the first line LaTeX collapses the three blanks to output one +whitespace (it would be the same with a single blank or, for instance, +with a blank and an tab and a blank, or a blank and a newline and a +blank). But the second line asks for three spaces so the white area is +wider. Thus, the backslash-space command will create some horizontal +space. (But the best way to create horizontal space is with '\hspace'; +*Note \hspace::.) + + The backslash-space command has two main uses. First, it is often +used after control sequences to keep them from gobbling the space that +follows, as in '\TeX\ is nice'. (But the approach of using curly +parentheses, as in '\TeX{} is nice', has the advantage of still working +if the next character is a period.) + + The second common use is that it mark a period as ending an +abbreviation instead of ending a sentence, as in 'So says Prof.\ Smith' +(*note \@::). + + Under normal circumstances, '\'<tab> and '\'<newline> are equivalent +to backslash-space, '\ '. -File: latex2e.info, Node: \thinspace, Next: \/, Prev: \(SPACE) after control sequence, Up: Spaces +File: latex2e.info, Node: ~, Next: \thinspace & \negthinspace, Prev: \(SPACE), Up: Spaces -19.5 '\thinspace': Insert 1/6em -=============================== +19.7 '~' +======== + +Synopsis: + + BEFORE~AFTER + + The tie character, '~', produces a space between BEFORE and AFTER at +which the line will not be broken. By default the white space has +length 3.33333pt plus 1.66666pt minus 1.11111pt (*note Lengths::). + + Here LaTeX will not break the line between the final two words. + + Thanks to Prof.~Lerman. + +In addition, despite the period, LaTeX does not use the end-of-sentence +spacing (*note \@::). -'\thinspace' produces an unbreakable and unstretchable space that is 1/6 -of an em. This is the proper space to use between nested quotes, as in -'". + Ties prevent the end of line separation of things where that could +cause confusion. But they also reduce LaTeX's options when it breaks +lines into paragraphs, so you can use too many. They are also matters +of taste, sometimes alarmingly dogmatic taste, among readers. +Nevertheless, here are some usage models, many of them from the TeXbook. + + * Between an enumerator and its item, such as in references: + 'Chapter~12', or 'Theorem~\ref{th:Wilsons}', or + 'Figure~\ref{fig:KGraph}'. When cases are enumerated inline: + '(b)~Show that $f(x)$ is (1)~continuous, and (2)~bounded'. + + * Between a number and its unit: '$745.7.8$~watts' (the 'siunitx' + package has a special facility for this) or '144~eggs'. This + includes between a month and a date: 'October~12' or '12~Oct'. In + general, in any expressions where numbers and abbreviations or + symbols are separated by a space: 'AD~565', or '2:50~pm', or + 'Boeing~747', or '268~Plains Road', or '\$$1.4$~billion'. + + * When mathematical phrases are rendered in words: 'equals~$n$', or + 'less than~$\epsilon$', or 'given~$X$', or 'modulo~$p^e$ for all + large~$n$' (but compare 'is~$15$' with 'is $15$~times the height'). + Between mathematical symbols in apposition with nouns: + 'dimension~$d$' or 'function~$f(x)$' (but compare 'with length + $l$~or more'). When a symbol is a tightly bound object of a + preposition: 'of~$x$', or 'from $0$ to~$1$', or 'in common + with~$m$'. + + * Between symbols in series: '$1$,~$2$, or~$3$' or '$1$,~$2$, + \ldots,~$n$'. + + * Between a person's forenames and between multiple surnames: + 'Donald~E. Knuth', or 'Luis~I. Trabb~Pardo', or 'Charles~XII' (but + you must give TeX places to break the line so you may do 'Charles + Louis Xavier~Joseph de~la Vall\'ee~Poussin'). + + * Before a dash: 'pages 12~--14' or 'it is~--- it must be said~--- + plausible'. -File: latex2e.info, Node: \/, Next: \hrulefill \dotfill, Prev: \thinspace, Up: Spaces +File: latex2e.info, Node: \thinspace & \negthinspace, Next: \/, Prev: ~, Up: Spaces -19.6 '\/': Insert italic correction +19.8 '\thinspace' & '\negthinspace' =================================== -The '\/' command produces an "italic correction". This is a small space -defined by the font designer for a given character, to avoid the -character colliding with whatever follows. The italic f character -typically has a large italic correction value. +Synopsis, one of: + + \thinspace + \negthinspace + + Produce an unbreakable and unstretchable space of 1/6em and -1/6em. +These are the text mode equivalents of '\,' and '\!' (*note Spacing in +math mode/\thinspace::). You can use '\,' as a synonym for '\thinspace' +in text mode. + + The '\negthinspace' command is used in text mode mostly for fiddling +with spaces. One common use of '\thinspace' is as the space between +nested quotes. + + Killick replied, ``I heard the Captain say, `Ahoy there.'\thinspace'' + +Another use is that some style guides call for a '\thinspace' between an +ellipsis and a sentence ending period (other style guides, though, think +the three dots are quite enough already). Still another use is between +initials, as in 'D.\thinspace E.\ Knuth'. - If the following character is a period or comma, it's not necessary -to insert an italic correction, since those punctuation symbols have a -very small height. However, with semicolons or colons, as well as -normal letters, it can help. Compare f: f; (in the TeX output, the 'f's -are nicely separated) with f: f;. + +File: latex2e.info, Node: \/, Next: \hrulefill & \dotfill, Prev: \thinspace & \negthinspace, Up: Spaces + +19.9 '\/' +========= + +Synopsis: + + BEFORE-CHARACTER\/AFTER-CHARACTER + + Insert an "italic correction", a small space defined by the font +designer for each character, to avoid the character colliding with +whatever follows. When you use '\/', LaTeX takes the correction from +the font metric file, scales it by any scaling that has been applied to +the font, and then inserts that much horizontal space. - When changing fonts with commands such as '\textit{italic text}' or -'{\itshape italic text}', LaTeX will automatically insert an italic -correction if appropriate (*note Font styles::). + Here, were it not for the '\/', the BEFORE-CHARACTER italic f would +hit the AFTER-CHARACTER roman H - Despite the name, roman characters can also have an italic -correction. Compare pdfTeX (in the TeX output, there is a small space -after the 'f') with pdfTeX. + \newcommand{\companylogo}{{\it f}\/H} + +because the italic letter leans far to the right. + + If AFTER-CHARACTER is a period or comma then don't insert an italic +correction since those punctuation symbols have a very small height. +However, with semicolons or colons as well as with normal letters, the +italic correction can help. + + When you use commands such as '\textit' or '\itshape' to change +fonts, LaTeX will automatically insert any needed italic correction +(*note Font styles::). + + Roman characters can also have an italic correction. An example is +in the name 'pdf\/\TeX'. There is no concept of italic correction in math mode; spacing is done in a different way. -File: latex2e.info, Node: \hrulefill \dotfill, Next: \addvspace, Prev: \/, Up: Spaces +File: latex2e.info, Node: \hrulefill & \dotfill, Next: \bigskip & \medskip & \smallskip, Prev: \/, Up: Spaces -19.7 '\hrulefill \dotfill' -========================== +19.10 '\hrulefill' & '\dotfill' +=============================== -Produce an infinite rubber length (*note Lengths::) filled with a -horizontal rule (that is, a line) or with dots, instead of just white +Synopsis, one of: + + \hrulefill + \dotfill + + Produce an infinite horizontal rubber length (*note Lengths::) that +LaTeX fills with a rule (that is, a line) or with dots, instead of white space. - When placed between blank lines this example creates a paragraph that -is left and right justified, where the space in the middle is filled -with evenly spaced dots. + This outputs a line 2 inches long. + + Name:~\makebox[2in]{\hrulefill} - \noindent Jack Aubrey\dotfill Melbury Lodge +This example, when placed between blank lines, creates a paragraph that +is left and right justified and where the middle is filled with evenly +spaced dots. + + \noindent John Aubrey, RN \dotfill{} Melbury Lodge To make the rule or dots go to the line's end use '\null' at the start or end. To change the rule's thickness, copy the definition and adjust it, as -with '\renewcommand{\hrulefill}{\leavevmode\leaders\hrule height -1pt\hfill\kern\z@}', which changes the default thickness of 0.4pt to -1pt. Similarly, adjust the dot spacing as with -'\renewcommand{\dotfill}{\leavevmode\cleaders\hb@xt@ 1.00em{\hss .\hss -}\hfill\kern\z@}', which changes the default length of 0.33em to 1.00em. +here - -File: latex2e.info, Node: \addvspace, Next: \bigskip \medskip \smallskip, Prev: \hrulefill \dotfill, Up: Spaces + \renewcommand{\hrulefill}{% + \leavevmode\leaders\hrule height 1pt\hfill\kern\z@} -19.8 '\addvspace' -================= +which changes the default thickness of 0.4pt to 1pt. Similarly, adjust +the dot spacing as with -'\addvspace{LENGTH}' + \renewcommand{\dotfill}{% + \leavevmode\cleaders\hb@xt@1.00em{\hss .\hss }\hfill\kern\z@} - Add a vertical space of height LENGTH, which is a rubber length -(*note Lengths::). However, if vertical space has already been added to -the same point in the output by a previous '\addvspace' command then -this command will not add more space than what is needed to make the -natural length of the total vertical space equal to LENGTH. +which changes the default length of 0.33em to 1.00em. - Use this command to adjust the vertical space above or below an -environment that starts a new paragraph. For instance, a Theorem -environment is defined to begin and end with '\addvspace{...}' so that -two consecutive Theorem's are separated by one vertical space, not two. + This example produces a line for a signature. - This command is fragile (*note \protect::). + \begin{minipage}{4cm} + \centering + \hrulefill\\ + Signed + \end{minipage} - The error 'Something's wrong--perhaps a missing \item' means that you -were not in vertical mode when you invoked this command; one way to -change that is to precede this command with a '\par' command. +The line is 4cm long. -File: latex2e.info, Node: \bigskip \medskip \smallskip, Next: \vfill, Prev: \addvspace, Up: Spaces +File: latex2e.info, Node: \bigskip & \medskip & \smallskip, Next: \bigbreak & \medbreak & \smallbreak, Prev: \hrulefill & \dotfill, Up: Spaces -19.9 '\bigskip \medskip \smallskip' -=================================== +19.11 '\bigskip' & '\medskip' & '\smallskip' +============================================ + +Synopsis, one of: -These commands produce a given amount of space, specified by the -document class. + \bigskip + \medskip + \smallskip + + Produce an amount of vertical space, large or medium-sized or small. +These commands are fragile (*note \protect::). + + Here the skip suggests the passage of time (from The Golden Ocean by +O'Brian). + + Mr Saumarez would have something rude to say to him, no doubt: he + was at home again, and it was delightful. + + \bigskip + ``A hundred and fifty-seven miles and one third, in twenty-four hours,'' + said Peter. + + Each command is associated with a length defined in the document +class file. '\bigskip' The same as '\vspace{\bigskipamount}', ordinarily about one line - space, with stretch and shrink (the default for the 'book' and - 'article' classes is '12pt plus 4pt minus 4pt'). + space, with stretch and shrink. The default for the 'book' and + 'article' classes is '12pt plus 4pt minus 4pt'. '\medskip' The same as '\vspace{\medskipamount}', ordinarily about half of a - line space, with stretch and shrink (the default for the 'book' and - 'article' classes is '6pt plus 2pt minus 2pt'). + line space, with stretch and shrink. The default for the 'book' + and 'article' classes is '6pt plus 2pt minus 2pt'. '\smallskip' The same as '\vspace{\smallskipamount}', ordinarily about a quarter - of a line space, with stretch and shrink (the default for the - 'book' and 'article' classes is '3pt plus 1pt minus 1pt'). + of a line space, with stretch and shrink. The default for the + 'book' and 'article' classes is '3pt plus 1pt minus 1pt'. + + Because each command is a '\vspace', if you use on in mid-paragraph +then it will insert its vertical space between the line in which you use +it and the next line, not necessarily at the place that you use it. So +these are best between paragraphs. + + The commands '\bigbreak', '\medbreak', and '\smallbreak' are similar +but also suggest to LaTeX that this is a good place to put a page break +(*note \bigbreak & \medbreak & \smallbreak::. -File: latex2e.info, Node: \vfill, Next: \vspace, Prev: \bigskip \medskip \smallskip, Up: Spaces +File: latex2e.info, Node: \bigbreak & \medbreak & \smallbreak, Next: \strut, Prev: \bigskip & \medskip & \smallskip, Up: Spaces + +19.12 '\bigbreak' & '\medbreak' & '\smallbreak' +=============================================== + +Synopsis, one of: + + \bigbreak + \medbreak + \smallbreak + + Produce a vertical space that is big or medium-sized or small, and +suggest to LaTeX that this is a good place to break the page. (The +associated penalties are -200, -100, and -50.) -19.10 '\vfill' + *Note \bigskip & \medskip & \smallskip::, for more. These commands +produce the same vertical space but differ in that they also remove a +preceding vertical space if it is less than what they would insert (as +with '\addvspace'). In addition, they terminate a paragraph where they +are used: this example + + abc\bigbreak def ghi + + jkl mno pqr + +will output three paragraphs, the first ending in 'abc' and the second +starting, after an extra vertical space and a paragraph indent, with +'def'. + + +File: latex2e.info, Node: \strut, Next: \vspace, Prev: \bigbreak & \medbreak & \smallbreak, Up: Spaces + +19.13 '\strut' ============== -End the current paragraph and insert a vertical rubber length (*note -Lengths::) that is infinite, so it can stretch or shrink as far as -needed. +Synopsis: - It is often used in the same way as '\vspace{\fill}', except that -'\vfill' ends the current paragraph, whereas '\vspace{\fill}' adds the -infinite vertical space below its line irrespective of the paragraph -structure. In both cases that space will disappear at a page boundary; -to circumvent this see *note \vspace::. + \strut - In this example the page is filled, so the top and bottom lines -contain the text 'Lost Dog!' and the third 'Lost Dog!' is exactly -halfway between them. + Ensure that the current line has height at least '0.7\baselineskip' +and depth at least '0.3\baselineskip'. Essentially, LaTeX inserts into +the line a rectangle having zero width, +'\rule[-0.3\baselineskip]{0pt}{\baselineskip}' (*note \rule::). The +'\baselineskip' changes with the current font and fontsize. - \begin{document} - Lost Dog! - \vfill - Lost Dog! - \vfill - Lost Dog! - \end{document} + In this example the '\strut' keeps the box inside the frame from +having zero height. + + \setlength{\fboxsep}{0pt}\framebox[2in]{\strut} + + This example has four lists. In the first there is a much bigger gap +between items 2 and 3 than there is between items 1 and 2. The second +list fixes that with a '\strut' at the end of its first item's second +line. + + \setlength{\fboxsep}{0pt} + \noindent\begin{minipage}[t]{0.2\linewidth} + \begin{enumerate} + \item \parbox[t]{15pt}{test \\ test} + \item test + \item test + \end{enumerate} + \end{minipage}% + \begin{minipage}[t]{0.2\linewidth} + \begin{enumerate} + \item \parbox[t]{15pt}{test \\ test\strut} + \item test + \item test + \end{enumerate} + \end{minipage}% + \begin{minipage}[t]{0.2\linewidth} + \begin{enumerate} + \item \fbox{\parbox[t]{15pt}{test \\ test}} + \item \fbox{test} + \item \fbox{test} + \end{enumerate} + \end{minipage}% + \begin{minipage}[t]{0.2\linewidth} + \begin{enumerate} + \item \fbox{\parbox[t]{15pt}{test \\ test\strut}} + \item \fbox{test} + \item \fbox{test} + \end{enumerate} + \end{minipage}% + +The final two lists use 'fbox' to show what's happening. The third +list's '\parbox' goes only to the bottom of its second 'test', which +happens not have any characters that descend below the baseline. The +fourth list adds the strut that gives the needed extra below-baseline +space. + + The '\strut' command is often useful in graphics, such as in 'TikZ' +or 'Asymptote'. For instance, you may have a command such as +'\graphnode{NODE-NAME}' that fits a circle around NODE-NAME. However, +unless you are careful the NODE-NAME's 'x' and 'y' will produce +different-diameter circles because the characters are different sizes. +A careful '\graphnode' might insert a '\strut', then NODE-NAME, and then +draw the circle. + + The general approach of using a zero width '\rule' is useful in many +circumstances. In this table, the zero-width rule keeps the top of the +first integral from hitting the '\hline'. Similarly, the second rule +keeps the second integral from hitting the first. + + \begin{tabular}{rl} + \textsc{Integral} &\textsc{Value} \\ + \hline + $\int_0^x t\, dt$ &$x^2/2$ \rule{0em}{2.5ex} \\ + $\int_0^x t^2\, dt$ &$x^3/3$ \rule{0em}{2.5ex} + \end{tabular} + +(Although the line-ending double backslash command has an available +optional argument to put in more vertical room, that won't work here. +Changing the first double backslash to something like '\\[2.5ex]' will +put the room between the header line and the '\hline', and the integral +would still hit the line.) -File: latex2e.info, Node: \vspace, Prev: \vfill, Up: Spaces +File: latex2e.info, Node: \vspace, Next: \vfill, Prev: \strut, Up: Spaces -19.11 '\vspace{LENGTH}' -======================= +19.14 '\vspace' +=============== -Synopsis, one of these two: +Synopsis, one of: \vspace{LENGTH} \vspace*{LENGTH} - Add the vertical space LENGTH. This can be negative or positive, and -is a rubber length (*note Lengths::). + Add the vertical space LENGTH. The LENGTH can be positive, negative, +or zero. It is a rubber length--it may contain a 'plus' or 'minus' +component (*note Lengths::). + + This puts space between the two paragraphs. + + And I slept. + + \vspace{1ex plus 0.5ex} + The new day dawned cold. + +(*Note \bigskip & \medskip & \smallskip:: for common inter-paragraph +spaces.) - LaTeX removes the vertical space from '\vspace' at a page break, that -is, at the top or bottom of a page. The starred version '\vspace*{...}' -causes the space to stay. + The '*'-version inserts vertical space that non-discardable. More +precisely, LaTeX discards vertical space at a page break and the +'*'-version causes the space to stay. This example leaves space between +the two questions. - If '\vspace' is used in the middle of a paragraph (i.e., in -horizontal mode), the space is inserted _after_ the line with the -'\vspace' command. A new paragraph is not started. + Question: Find the integral of \( 5x^4+5 \). + + \vspace*{2cm plus 0.5cm} + Question: Find the derivative of \( x^5+5x+9 \). + +That space will be present even if the page break happens to fall +between the questions. + + If you use '\vspace' in the middle of a paragraph (i.e., in +horizontal mode) then the space is inserted after the line containing +the '\vspace' command; it does not start a new paragraph at the +'\vspace' command. In this example the two questions will be evenly spaced vertically on the page, with at least one inch of space below each. @@ -8166,213 +11044,500 @@ the page, with at least one inch of space below each. \end{document} -File: latex2e.info, Node: Boxes, Next: Color, Prev: Spaces, Up: Top +File: latex2e.info, Node: \vfill, Next: \addvspace, Prev: \vspace, Up: Spaces -20 Boxes -******** +19.15 '\vfill' +============== -All the predefined length parameters (*note Predefined lengths::) can be -used in the arguments of the box-making commands. +Synopsis: -* Menu: + \vfill -* \mbox:: Horizontal boxes. -* \fbox and \framebox:: Put a frame around a box. -* lrbox:: An environment like '\sbox'. -* \makebox:: Box, adjustable position. -* \parbox:: Box with text in paragraph mode. -* \raisebox:: Raise or lower text. -* \savebox:: Like '\makebox', but save the text for later use. -* \sbox:: Like '\mbox', but save the text for later use. -* \usebox:: Print saved text. + End the current paragraph and insert a vertical rubber length that is +infinite, so it can stretch or shrink as far as needed (*note +Lengths::). - -File: latex2e.info, Node: \mbox, Next: \fbox and \framebox, Up: Boxes + It is often used in the same way as '\vspace{\fill}', except that +'\vfill' ends the current paragraph whereas '\vspace{\fill}' adds the +infinite vertical space below its line, irrespective of the paragraph +structure. In both cases that space will disappear at a page boundary; +to circumvent this see the starred option in *note \vspace::. -20.1 '\mbox{TEXT}' -================== + In this example the page is filled, so the top and bottom lines +contain the text 'Lost Dog!' and the second 'Lost Dog!' is exactly +halfway between them. -The '\mbox' command creates a box just wide enough to hold the text -created by its argument. The TEXT is not broken into lines, so it can -be used to prevent hyphenation. + \begin{document} + Lost Dog! + \vfill + Lost Dog! % perfectly in the middle + \vfill + Lost Dog! + \end{document} -File: latex2e.info, Node: \fbox and \framebox, Next: lrbox, Prev: \mbox, Up: Boxes +File: latex2e.info, Node: \addvspace, Prev: \vfill, Up: Spaces -20.2 '\fbox' and '\framebox' -============================ +19.16 '\addvspace' +================== -Synopses: +Synopsis: - \fbox{TEXT} - \framebox[WIDTH][POSITION]{TEXT} + \addvspace{VERT-LENGTH} + + Add a vertical space of VERT-LENGTH. However, if there are two or +more '\addvspace''s in a sequence then together they only add the space +needed to make the natural length equal to the maximum of the +VERT-LENGTH's in that sequence. This command is fragile (*note +\protect::). The VERT-LENGTH is a rubber length (*note Lengths::). - The '\fbox' and '\framebox' commands are like '\mbox', except that -they put a frame around the outside of the box being created. + This example illustrates. The 'picture' draws a scale. In a +standard LaTeX article the length '\baselineskip' is 12pt. The two +rules here are 22pt apart: the sum of the '\baselineskip' and the 10pt +from the first 'addvspace'. + + \documentclass{article} + \usepackage{color} + \begin{document} + \setlength{\unitlength}{2pt}% + \noindent\begin{picture}(0,0)% + \multiput(0,0)(0,-1){25}{{\color{blue}\line(1,0){1}}} + \multiput(0,0)(0,-5){6}{{\color{red}\line(1,0){2}}} + \end{picture}% + \rule{0.25\linewidth}{0.1pt}% + \par\addvspace{10pt}% \addvspace{20pt}% + \par\noindent\rule{0.25\linewidth}{0.1pt}% + \end{document} - In addition, the '\framebox' command allows for explicit -specification of the box width with the optional WIDTH argument (a -dimension), and positioning with the optional POSITION argument. +Now uncomment the second '\addvspace'. It does not make the gap 20pt +longer; instead the gap is the sum of '\baselineskip' and 20pt. So +'\addvspace' in a sense does the opposite of its name -- it makes sure +that multiple vertical spaces do not accumulate, but instead that only +the largest one is used. - Both commands produce a rule of thickness '\fboxrule' (default -'0.4pt'), and leave a space of '\fboxsep' (default '3pt') between the -rule and the contents of the box. + LaTeX uses this command to adjust the vertical space above or below +an environment that starts a new paragraph. For instance, a 'theorem' +environment begins and ends with '\addvspace' so that two consecutive +'theorem''s are separated by one vertical space, not two. - *Note \framebox (picture)::, for the '\framebox' command in the -'picture' environment. + A error 'Something's wrong--perhaps a missing \item' pointing to an +'\addvspace' means that you were not in vertical mode when you hit this +command. One way to change that is to precede '\addvspace' with a +'\par' command (*note \par::), as in the above example. -File: latex2e.info, Node: lrbox, Next: \makebox, Prev: \fbox and \framebox, Up: Boxes +File: latex2e.info, Node: Boxes, Next: Color, Prev: Spaces, Up: Top -20.3 'lrbox' -============ +20 Boxes +******** -Synopsis: +At its core, LaTeX puts things in boxes and then puts the boxes on a +page. So these commands are central. - \begin{lrbox}{\CMD} - TEXT - \end{lrbox} + There are many packages on CTAN that are useful for manipulating +boxes. One useful adjunct to the commands here is 'adjustbox'. - This is the environment form of *note '\sbox': \sbox. +* Menu: - The TEXT inside the environment is saved in the box '\CMD', which -must have been declared with '\newsavebox'. +* \mbox & \makebox:: Horizontal boxes. +* \fbox & \framebox:: Put a frame around a box. +* \parbox:: Box with text in paragraph mode. +* \raisebox:: Raise or lower text. +* \sbox & \savebox:: Like '\makebox' but save the text for later. +* lrbox:: Environment version of '\sbox'. +* \usebox:: Print saved text. -File: latex2e.info, Node: \makebox, Next: \parbox, Prev: lrbox, Up: Boxes +File: latex2e.info, Node: \mbox & \makebox, Next: \fbox & \framebox, Up: Boxes -20.4 '\makebox' -=============== +20.1 '\mbox' & '\makebox' +========================= -Synopsis: +Synopsis, one of: + \mbox{TEXT} + \makebox{TEXT} + \makebox[WIDTH]{TEXT} \makebox[WIDTH][POSITION]{TEXT} - The '\makebox' command creates a box just wide enough to contain the -TEXT specified. The width of the box can be overridden by the optional -WIDTH argument. The position of the text within the box is determined -by the optional POSITION argument, which may take the following values: + Create a box, a container for material. The TEXT is is typeset in LR +mode (*note Modes::) so it is not broken into lines. The '\mbox' +command is robust, while '\makebox' is fragile (*note \protect::). + + Because 'text' is not broken into lines, you can use '\mbox' to +prevent hyphenation. In this example, LaTeX will not hyphenate the +table name, 'T-4'. + + See Table~\mbox{T-4} + + The first two command versions, '\mbox' and '\makebox', are roughly +equivalent. They create a box just wide enough to contain the TEXT. +(They are like plain TeX's '\hbox'.) + + In the third version the optional argument WIDTH specifies the width +of the box. Note that the space occupied by the text need not equal the +width of the box. For one thing, TEXT can be too small; this creates a +full-line box + + \makebox[\linewidth]{Chapter Exam} + +with 'Chapter Exam' centered. But TEXT can also be too wide for WIDTH. +See the example below of zero-width boxes. + + In the WIDTH argument you can use the following lengths that refer to +the dimension of the box that LaTeX gets on typesetting TEXT: '\depth', +'\height', '\width', '\totalheight' (this is the box's height plus its +depth). For example, to make a box with the text stretched to double +the natural size you can say this. + + \makebox[2\width]{Get a stretcher} + + For the fourth command version the optional argument POSITION gives +position of the text within the box. It may take the following values: 'c' - Centered (default). + The TEXT is centered (default). + 'l' - Flush left. + The TEXT is flush left. + 'r' Flush right. + 's' - Stretch (justify) across entire WIDTH; TEXT must contain - stretchable space for this to work. + Stretch the interword space in TEXT across the entire WIDTH. The + TEXT must contain stretchable space for this to work. For + instance, this could head a press release: + '\noindent\makebox[\textwidth][s]{\large\hfil IMMEDIATE\hfil + RELEASE\hfil}' + + A common use of '\makebox' is to make zero-width text boxes. This +puts the value of the quiz questions to the left of those questions. + + \newcommand{\pts}[1]{\makebox[0em][r]{#1 points\hspace*{1em}}} + \pts{10}What is the air-speed velocity of an unladen swallow? + + \pts{90}An African or European swallow? + + + The right edge of the output '10 points ' (note the ending space) +will be just before the 'What' (note the space after 'points'). You can +use '\makebox' similarly when making graphics, such as in 'TikZ' or +'Asymptote', where you put the edge of the text at a known location, +regardless of the length of that text. + + For boxes with frames see *note \fbox & \framebox::. For colors +see *note Colored boxes::. + + There is a related version of '\makebox' that is used within the +'picture' environment, where the length is given in terms of +'\unitlength' (*note \makebox (picture)::). + + If you put a double-backslash into TEXT then LaTeX will not give you +a new line; for instance '\makebox{abc def \\ ghi}' outputs 'abc defghi' +while '\makebox{abc def \par ghi}' outputs 'abc def ghi', but neither go +to a second line. To get multiple lines see *note \parbox:: and *note +minipage::. + + +File: latex2e.info, Node: \fbox & \framebox, Next: \parbox, Prev: \mbox & \makebox, Up: Boxes + +20.2 '\fbox' & '\framebox' +========================== + +Synopses, one of: + + \fbox{TEXT} + \framebox{TEXT} + \framebox[WIDTH]{TEXT} + \framebox[WIDTH][POSITION]{TEXT} + + Create a box with an enclosing frame, four lines surrounding the +space. These commands are the same as '\mbox' and '\makebox' except for +the frame (*note \mbox & \makebox::). The '\fbox' command is robust, +the '\framebox' command is fragile (*note \protect::). + + \fbox{Warning! No work shown, no credit given.} + +LaTeX puts the text into a box that cannot be split or hyphenated. +Around that box, separated from it by a small gap, are four lines making +a frame. + + The first two command invocations, '\fbox{...}' and '\framebox{...}', +are roughly the same. As to the third and fourth invocations, the +optional arguments allow you to specify the box width as WIDTH and the +position of the text inside that box as POSITION. *Note \mbox & +\makebox:: for the full description but here is an example creating an +empty box that is 1/4in wide. + + \setlength{\fboxsep}{0pt}\framebox[0.25in]{\strut}} + +The '\strut' inserts a vertical height of '\baselineskip' (*note +\strut::). + + These parameters determine the frame layout. + +'\fboxrule' + The thickness of the lines around the enclosed box. The default is + 0.2pt. Change it with a command such as + '\setlength{\fboxrule}{0.8pt}' (*note \setlength::). + +'\fboxsep' + The distance from the frame to the enclosed box. The default is + 3pt. Change it with a command such as '\setlength{\fboxsep}{0pt}' + (*note \setlength::). Setting it to 0pt is useful sometimes: this + will put a frame around the picture with no white border. + + {\setlength{\fboxsep}{0pt} + \framebox{% + \includegraphics[width=0.5\textwidth]{prudence.jpg}}} + + The extra curly braces keep the effect of the '\setlength' local. - '\makebox' is also used within the 'picture' environment *note -\makebox (picture)::. + As with '\mbox' and '\makebox', LaTeX will not break lines in TEXT. +But this example has LaTeX break lines to make a paragraph, and then +frame the result. + + \framebox{% + \begin{minipage}{0.6\linewidth} + My dear, here we must run as fast as we can, just to stay in place. + And if you wish to go anywhere you must run twice as fast as that. + \end{minipage}} + + *Note Colored boxes:: for colors other than black and white. + + The 'picture' environment has a version of this command where the +units depend on 'picture''s '\unitlength' (*note \framebox (picture)::). -File: latex2e.info, Node: \parbox, Next: \raisebox, Prev: \makebox, Up: Boxes +File: latex2e.info, Node: \parbox, Next: \raisebox, Prev: \fbox & \framebox, Up: Boxes -20.5 '\parbox' +20.3 '\parbox' ============== -Synopsis: +Synopses, one of: - \parbox[POSITION][HEIGHT][INNER-POS]{WIDTH}{TEXT} + \parbox{WIDTH}{CONTENTS} + \parbox[POSITION]{WIDTH}{CONTENTS} + \parbox[POSITION][HEIGHT]{WIDTH}{CONTENTS} + \parbox[POSITION][HEIGHT][INNER-POS]{WIDTH}{CONTENTS} - The '\parbox' command produces a box whose contents are created in -"paragraph mode". It should be used to make a box small pieces of text, -with nothing fancy inside. In particular, you shouldn't use any -paragraph-making environments inside a '\parbox' argument. For larger -pieces of text, including ones containing a paragraph-making -environment, you should use a 'minipage' environment (*note minipage::). + Produce a box of text that is WIDTH wide. Use this command to make a +box of small pieces of text, of a single paragraph. This command is +fragile (*note \protect::). - '\parbox' has two mandatory arguments: + \begin{picture}(0,0) + ... + \put(1,2){\parbox{1.75in}{\raggedright Because the graph is a line on + this semilog paper, the relationship is + exponential.}} + \end{picture} -WIDTH - the width of the parbox; -TEXT - the text that goes inside the parbox. + The CONTENTS are processed in a text mode (*note Modes::) so LaTeX +will break lines to make a paragraph. But it won't make multiple +paragraphs; for that, use a 'minipage' environment (*note minipage::). - By default LaTeX will position vertically a parbox so its center -lines up with the center of the surrounding text line. When the -optional POSITION argument is present and equal either to 't' or 'b', -this allows you respectively to align either the top or bottom line in -the parbox with the baseline of the surrounding text. You may also -specify 'm' for POSITION to get the default behaviour. + The options for '\parbox' (except for CONTENTS) are the same as those +for 'minipage'. For convenience a summary of the options is here but +see *note minipage:: for a complete description. - The optional HEIGHT argument overrides the natural height of the box. + There are two required arguments. The WIDTH is a rigid length (*note +Lengths::). It sets the width of the box into which LaTeX typesets +CONTENTS. The CONTENTS is the text that is placed in that box. It +should not have any paragraph-making components. - The INNER-POS argument controls the placement of the text inside the -box, as follows; if it is not specified, POSITION is used. + There are three optional arguments, POSITION, HEIGHT, and INNER-POS. +The POSITION gives the vertical alignment of the 'parbox' with respect +to the surrounding material. The possible values are 'c' or 'm' to make +the vertical center of the 'parbox' lines up with the center of the +adjacent line (this is the default), or 't' to match the top line of the +'parbox' with the baseline of the surrounding material, or 'b' to match +the bottom line. -'t' - text is placed at the top of the box. -'c' - text is centered in the box. -'b' - text is placed at the bottom of the box. -'s' - stretch vertically; the text must contain vertically stretchable - space for this to work. + The optional argument HEIGHT overrides the natural height of the box. + + The optional argument INNER-POS controls the placement of CONTENT +inside the 'parbox'. Its default is the value of POSITION. Its +possible values are: 't' to put the CONTENT at the top of the box, 'c' +to put it in the vertical center, 'b' to put it at the bottom of the +box, and 's' to stretch it out vertically (for this, the text must +contain vertically stretchable space). -File: latex2e.info, Node: \raisebox, Next: \savebox, Prev: \parbox, Up: Boxes +File: latex2e.info, Node: \raisebox, Next: \sbox & \savebox, Prev: \parbox, Up: Boxes -20.6 '\raisebox' +20.4 '\raisebox' ================ -Synopsis: +Synopsis, one of: + \raisebox{DISTANCE}{TEXT} + \raisebox{DISTANCE}[HEIGHT]{TEXT} \raisebox{DISTANCE}[HEIGHT][DEPTH]{TEXT} - The '\raisebox' command raises or lowers TEXT. The first mandatory -argument specifies how high TEXT is to be raised (or lowered if it is a -negative amount). TEXT itself is processed in LR mode. + Raise or lower TEXT. This command is fragile (*note \protect::). + + This example makes a command for the restriction of a function by +lowering the vertical bar symbol. + + \newcommand\restricted[1]{\raisebox{-.5ex}{$|$}_{#1}} + $f\restricted{A}$ + + The first mandatory argument DISTANCE specifies how far to raise the +second mandatory argument TEXT. This is a rigid length (*note +Lengths::). If it is negative then it lowers TEXT. The TEXT is +processed in LR mode so it cannot contain line breaks (*note Modes::). The optional arguments HEIGHT and DEPTH are dimensions. If they are -specified, LaTeX treats TEXT as extending a certain distance above the -baseline (HEIGHT) or below (DEPTH), ignoring its natural height and -depth. +specified, they override the natural height and depth of the box LaTeX +gets by typesetting TEXT. + + In the arguments DISTANCE, HEIGHT, and DEPTH you can use the +following lengths that refer to the dimension of the box that LaTeX gets +on typesetting TEXT: '\depth', '\height', '\width', '\totalheight' (this +is the box's height plus its depth). + + This will align two graphics on their top (*note Graphics::). + + \usepackage{graphicx} \usepackage{calc} % in preamble + ... + \begin{center} + \raisebox{1ex-\height}{% + \includegraphics[width=0.4\linewidth]{lion.png}} + \qquad + \raisebox{1ex-\height}{% + \includegraphics[width=0.4\linewidth]{meta.png}} + \end{center} + +The first '\height' is the height of 'lion.png' while the second is the +height of 'meta.png'. -File: latex2e.info, Node: \savebox, Next: \sbox, Prev: \raisebox, Up: Boxes +File: latex2e.info, Node: \sbox & \savebox, Next: lrbox, Prev: \raisebox, Up: Boxes -20.7 '\savebox' -=============== +20.5 '\sbox' & '\savebox' +========================= -Synopsis: +Synopsis, one of: + + \sbox{BOX-CMD}{TEXT} + \savebox{BOX-CMD}{TEXT} + \savebox{BOX-CMD}[WIDTH]{TEXT} + \savebox{BOX-CMD}[WIDTH][POS]{TEXT} + + Typeset TEXT just as with '\makebox' (*note \mbox & \makebox::) +except that LaTeX does not output it but instead saves it in a storage +bin named BOX-CMD. The bin name BOX-CMD begins with a backslash, '\'. +You must have previously allocated the bin BOX-CMD with '\newsavebox' +(*note \newsavebox::).The '\sbox' command is robust while '\savebox' is +fragile (*note \protect::). + + This creates and uses a bin. + + \newsavebox{\fullname} + \sbox{\fullname}{John Jacob Jingleheimer Schmidt} + ... + \usebox{\fullname}! His name is my name, too! + Whenever we go out, the people always shout! + There goes \\usebox{\fullname}! Ya da da da da da da. + +One advantage of using and reusing a bin over a '\newcommand' is +efficiency, that LaTeX need not repeatedly retypeset the contents. See +the example below. + + The first two command invocations, '\sbox{BOX-CMD}{TEXT}' and +'\savebox{BOX-CMD}{TEXT}', are roughly equivalent. As to the third and +fourth, the optional arguments allow you to specify the box width as +WIDTH, and the position of the text inside that box as POSITION. *Note +\mbox & \makebox:: for the full description. + + In the '\sbox' and '\savebox' commands the TEXT is typeset in LR mode +so it does not have line breaks (*note Modes::). If you use these then +LaTeX doesn't give you an error but it ignores what you want: if you +enter '\sbox{\newbin}{test \\ test}' and '\usebox{\newbin}' then you get +'testtest', while if you enter '\sbox{\newbin}{test \par test}' and +'\usebox{\newbin}' then you get 'test test', but no error or warning. +To fix this use a '\parbox' or 'minipage' as here. + + \savebox{\abin}{% + \begin{minipage}{\linewidth} + \begin{enumerate} + \item First item + \item Second item + \end{enumerate} + \end{minipage}} + ... + \usebox{\abin} + + As an example of the efficiency of reusing a bin's contents, this +puts the same picture on each page of the document by putting it in the +header. LaTeX only typesets it once. + + \usepackage{graphicx} % all this in the preamble + \newsavebox{\sealbin} + \savebox{\sealbin}{% + \setlength{\unitlength}{1in}% + \begin{picture}(0,0)% + \put(1.5,-2.5){% + \begin{tabular}{c} + \includegraphics[height=2in]{companylogo.png} \\ + Office of the President + \end{tabular}} + \end{picture}% + } + \markright{\usebox{\sealbin}} + \pagestyle{headings} - \savebox{\BOXCMD}[WIDTH][POS]{TEXT} +The 'picture' environment is good for fine-tuning the placement. - This command typeset TEXT in a box just as with '\makebox' (*note -\makebox::), except that instead of printing the resulting box, it saves -it in the box labeled \BOXCMD, which must have been declared with -'\newsavebox' (*note \newsavebox::). + If the bin has not already been defined then you get something like +'Undefined control sequence. <argument> \nobin'. -File: latex2e.info, Node: \sbox, Next: \usebox, Prev: \savebox, Up: Boxes +File: latex2e.info, Node: lrbox, Next: \usebox, Prev: \sbox & \savebox, Up: Boxes -20.8 '\sbox{\BOXCMD}{TEXT}' -=========================== +20.6 'lrbox' +============ Synopsis: - \sbox{\BOXCMD}{TEXT} + \begin{lrbox}{BOX-CMD} + TEXT + \end{lrbox} - '\sbox' types TEXT in a box just as with '\mbox' (*note \mbox::) -except that instead of the resulting box being included in the normal -output, it is saved in the box labeled \BOXCMD. \BOXCMD must have been -previously declared with '\newsavebox' (*note \newsavebox::). + The TEXT inside the environment is saved in the bin 'BOX-CMD'. The +BOX-CMD must begin with a backslash. You must create this bin in +advance with '\newsavebox' (*note \newsavebox::). This is the +environment form of the '\sbox' and '\savebox' commands, and is +equivalent to them. *Note \sbox & \savebox:: for the full information. + + In this example the environment is convenient for entering the +'tabular'. + + \newsavebox{\jhbin} + \begin{lrbox}{\jhbin} + \begin{tabular}{c} + \includegraphics[height=1in]{jh.png} \\ + Jim Hef{}feron + \end{tabular} + \end{lrbox} + ... + \usebox{\jhbin} -File: latex2e.info, Node: \usebox, Prev: \sbox, Up: Boxes +File: latex2e.info, Node: \usebox, Prev: lrbox, Up: Boxes -20.9 '\usebox{\BOXCMD}' -======================= +20.7 '\usebox' +============== Synopsis: - \usebox{\BOXCMD} + \usebox{BOX-CMD} - '\usebox' produces the box most recently saved in the bin \BOXCMD by -a '\savebox' command (*note \savebox::). + Produce the box most recently saved in the bin BOX-CMD by the +commands '\sbox' or '\savebox', or the 'lrbox' environment. *Note \sbox +& \savebox:: for more information and examples. (Note that BOX-CMD +starts with a backslash.) This command is robust (*note \protect::). File: latex2e.info, Node: Color, Next: Graphics, Prev: Boxes, Up: Top @@ -8401,8 +11566,8 @@ significantly extends the capabilities described here, including adding File: latex2e.info, Node: Color package options, Next: Color models, Up: Color -21.1 Color package options -========================== +21.1 'color' package options +============================ Synopsis (must be in the document preamble): @@ -8514,9 +11679,11 @@ Synopsis: \definecolor{NAME}{MODEL}{SPECIFICATION} - Give the name NAME to the color. For example, after -'\definecolor{silver}{rgb}{0.75,0.75,0.74}' you can use that color name -with 'Hi ho, \textcolor{silver}{Silver}!'. + Give the name NAME to the color. For example, after this + + \definecolor{silver}{rgb}{0.75,0.75,0.74} + +you can use that color name with 'Hi ho, \textcolor{silver}{Silver}!'. This example gives the color a more abstract name, so it could change and not be misleading. @@ -8538,17 +11705,18 @@ Synopses: \textcolor{NAME}{...} \textcolor[COLOR MODEL]{COLOR SPECIFICATION}{...} - or +or \color{NAME} \color[COLOR MODEL]{SPECIFICATION} The affected text gets the color. This line - \textcolor{magenta}{My name is Ozymandias, king of kings:} Look on my works, ye Mighty, and despair! + \textcolor{magenta}{My name is Ozymandias, king of kings:} + Look on my works, ye Mighty, and despair! - causes the first half to be in magenta while the rest is in black. -You can use a color declared with '\definecolor' in exactly the same way +causes the first half to be in magenta while the rest is in black. You +can use a color declared with '\definecolor' in exactly the same way that we just used the builtin color 'magenta'. \definecolor{MidlifeCrisisRed}{rgb}{1.0,0.11,0.0} @@ -8570,9 +11738,12 @@ the vertical and horizontal lines. \end{tabular} \end{center} - You can use color in equations. A document might have -'\definecolor{highlightcolor}{RGB}{225,15,0}' in the preamble, and then -contain this equation. + You can use color in equations. A document might have this +definition in the preamble + + \definecolor{highlightcolor}{RGB}{225,15,0} + +and then contain this equation. \begin{equation} \int_a^b \textcolor{highlightcolor}{f'(x)}\,dx=f(b)-f(a) @@ -8582,7 +11753,8 @@ contain this equation. style but sometimes you want a one-off. Those are the second forms in the synopses. - Colors of \textcolor[rgb]{0.33,0.14,0.47}{Purple} and {\color[rgb]{0.72,0.60,0.37} Gold} for the team + Colors of \textcolor[rgb]{0.33,0.14,0.47}{Purple} and + {\color[rgb]{0.72,0.60,0.37} Gold} for the team. The format of COLOR SPECIFICATION depends on the color model (*note Color models::). For instance, while 'rgb' takes three numbers, 'gray' @@ -8594,7 +11766,7 @@ takes only one. \textcolor{green}{kind of \textcolor{blue}{blue}} - has a final word that is blue, not a combination of blue and green. +has a final word that is blue, not a combination of blue and green. File: latex2e.info, Node: Colored boxes, Next: Colored pages, Prev: Colored text, Up: Commands for color @@ -8605,19 +11777,19 @@ File: latex2e.info, Node: Colored boxes, Next: Colored pages, Prev: Colored t Synopses: \colorbox{NAME}{...} - \colorbox[MODEL NAME]{BOX BACKGROUND COLOR SPECIFICATION}{...} + \colorbox[MODEL NAME]{BOX BACKGROUND COLOR}{...} - or +or \fcolorbox{FRAME COLOR}{BOX BACKGROUND COLOR}{...} - \fcolorbox[MODEL NAME]{FRAME COLOR SPECIFICATION}{BOX BACKGROUND COLOR SPECIFICATION}{...} + \fcolorbox[MODEL NAME]{FRAME COLOR}{BOX BACKGROUND COLOR}{...} Make a box with the stated background color. The '\fcolorbox' command puts a frame around the box. For instance this Name:~\colorbox{cyan}{\makebox[5cm][l]{\strut}} - makes a cyan-colored box that is five centimeters long and gets its +makes a cyan-colored box that is five centimeters long and gets its depth and height from the '\strut' (so the depth is '-.3\baselineskip' and the height is '\baselineskip'). This puts white text on a blue background. @@ -8625,7 +11797,7 @@ background. \colorbox{blue}{\textcolor{white}{Welcome to the machine.}} The '\fcolorbox' commands use the same parameters as '\fbox' (*note -\fbox and \framebox::), '\fboxrule' and '\fboxsep', to set the thickness +\fbox & \framebox::), '\fboxrule' and '\fboxsep', to set the thickness of the rule and the boundary between the box interior and the surrounding rule. LaTeX's defaults are '0.4pt' and '3pt', respectively. @@ -8698,7 +11870,7 @@ external to LaTeX, that generate a graphic that you include using the commands of this chapter. Two that use a programming language are Asymptote and MetaPost. One that uses a graphical interface is Xfig. Full description of these systems is outside the scope of this document; -see their documentation. +see their documentation on CTAN. * Menu: @@ -8709,14 +11881,14 @@ see their documentation. File: latex2e.info, Node: Graphics package options, Next: Graphics package configuration, Up: Graphics -22.1 Graphics package options -============================= +22.1 'graphics' package options +=============================== Synopsis (must be in the document preamble): \usepackage[COMMA-SEPARATED OPTION LIST]{graphics} - or +or \usepackage[COMMA-SEPARATED OPTION LIST]{graphicx} @@ -8776,21 +11948,21 @@ with a '.def' extension, such as 'pdftex.def'. File: latex2e.info, Node: Graphics package configuration, Next: Commands for graphics, Prev: Graphics package options, Up: Graphics -22.2 Graphics package configuration -=================================== +22.2 'graphics' package configuration +===================================== These commands configure the way LaTeX searches the file system for the graphic. The behavior of file system search code is necessarily platform -dependent. In this document we cover Linux, Macintosh, and Windows, as -those systems are typically configured. For other situations consult +dependent. In this document we cover GNU/Linux, Macintosh, and Windows, +as those systems are typically configured. For other situations consult the documentation in 'grfguide.pdf', or the LaTeX source, or your TeX distribution's documentation. * Menu: -* \graphicspath:: Directories to search. +* \graphicspath:: Directories to search. * \DeclareGraphicsExtensions:: File types, such as JPG or EPS. * \DeclareGraphicsRule:: How to handle file types. @@ -8837,9 +12009,9 @@ the current directory, ... \usepackage{lion.png} - for each of the listed directories, LaTeX concatenates it with the -file name and searches for the result, checking for 'pix/lion.png' and -then '../pix/lion.png'. This algorithm means that the '\graphicspath' +for each of the listed directories, LaTeX concatenates it with the file +name and searches for the result, checking for 'pix/lion.png' and then +'../pix/lion.png'. This algorithm means that the '\graphicspath' command does not recursively search subdirectories: if you issue '\graphicspath{{a/}}' and the graphic is in 'a/b/lion.png' then LaTeX will not find it. It also means that you can use absolute paths such as @@ -8849,8 +12021,8 @@ means that the document is not portable. (You could preserve portability by adjusting your TeX system settings configuration file parameter 'TEXINPUTS'; see the documentation of your system.) - You can use '\graphicspath' in the preamble or in the document body. -You can use it more than once. For debugging, show its value with + You can use '\graphicspath' anywhere in the document. You can use it +more than once. Show its value with '\makeatletter\typeout{\Ginput@path}\makeatother'. The directories are taken with respect to the base file. That is, @@ -8881,24 +12053,25 @@ files. ... \includegraphics{lion} % will find lion.png before lion.pdf - Because the file name 'lion' does not have a period, LaTeX uses the +Because the file name 'lion' does not have a period, LaTeX uses the extension list. For each directory in the graphics path (*note \graphicspath::), LaTeX will try the extensions in the order given. If it does not find such a file after trying all the directories and extensions then it reports '! LaTeX Error: File `'lion'' not found'. Note that you must include the periods at the start of the extensions. - Because Linux and Macintosh filenames are case sensitive, the list of -file extensions is case sensitive on those platforms. The Windows -platform is not case sensitive. + Because GNU/Linux and Macintosh filenames are case sensitive, the +list of file extensions is case sensitive on those platforms. The +Windows platform is not case sensitive. You are not required to include '\DeclareGraphicsExtensions' in your document; the printer driver has a sensible default. For example, the -most recent 'pdftex.def' has the extension list -''.png,.pdf,.jpg,.mps,.jpeg,.jbig2,.jb2,.PNG,.PDF,.JPG,.JPEG,.JBIG2,.JB2''. +most recent 'pdftex.def' has this extension list. + + .png,.pdf,.jpg,.mps,.jpeg,.jbig2,.jb2,.PNG,.PDF,.JPG,.JPEG,.JBIG2,.JB2 - You can use this command in the preamble or in the document body. -You can use it more than once. For debugging, show its value with + You can use this command anywhere in the document. You can use it +more than once. Show its value with '\makeatletter\typeout{\Gin@extensions}\makeatother'. @@ -8924,7 +12097,7 @@ input the file. \DeclareGraphicsRule{*}{mps}{*}{} - tells LaTeX that it should handle as MetaPost output any file with an +tells LaTeX that it should handle as MetaPost output any file with an extension not covered by another rule, so it covers 'filename.1', 'filename.2', etc. @@ -9028,13 +12201,13 @@ over-print the surrounding area. \includegraphics{plot.pdf} \end{center} - will incorporate into the document the graphic in 'plot.pdf', -centered and at its nominal size. You can also give a path to the file, -as with '\includegraphics{graphics/plot.pdf}'. To specify a list of -locations to search for the file, *note \graphicspath::. +will incorporate into the document the graphic in 'plot.pdf', centered +and at its nominal size. You can also give a path to the file, as with +'\includegraphics{graphics/plot.pdf}'. To specify a list of locations +to search for the file, *note \graphicspath::. - If your filename includes spaces then put it in double quotes, as -with '\includegraphics{"sister picture.jpg"}'. + If your filename includes spaces then put it in double quotes. An +example is '\includegraphics{"sister picture.jpg"}'. The '\includegraphics{FILENAME}' command decides on the type of graphic by splitting FILENAME on the first dot. You can use FILENAME @@ -9068,14 +12241,13 @@ caption. ... \begin{center} \includegraphics{pix/nix.png} - \captionof{figure}{The spirit of the night} \label{pix:nix} % if you want a caption + \captionof{figure}{The spirit of the night} \label{pix:nix} % optional \end{center} This example puts a box with a graphic side by side with one having text, with the two vertically centered. - \newcommand*{\vcenteredhbox}[1]{\begingroup - \setbox0=\hbox{#1}\parbox{\wd0}{\box0}\endgroup} + \newcommand*{\vcenteredhbox}[1]{\begin{tabular}{@{}c@{}}#1\end{tabular}} ... \begin{center} \vcenteredhbox{\includegraphics[width=0.4\textwidth]{plot}} @@ -9108,10 +12280,10 @@ a key-value form, as here. \includegraphics[angle=90,width=1in]{lion} \end{center} - The options are read left-to-right. So the first graphic above is -made one inch wide and then rotated, while the second is rotated and -then made one inch wide. Thus, unless the graphic is perfectly square, -the two will end with different widths and heights. +The options are read left-to-right. So the first graphic above is made +one inch wide and then rotated, while the second is rotated and then +made one inch wide. Thus, unless the graphic is perfectly square, the +two will end with different widths and heights. There are many options. The primary ones are listed first. @@ -9136,9 +12308,9 @@ graphic. The graphic will be shown so its bounding box is this height. You can use the standard TeX dimensions (*note Units of length::), and also convenient are '\pageheight' and '\textheight' (*note Page - layout parameters::). For instance, + layout parameters::). For instance, the command '\includegraphics[height=0.25\textheight]{godel}' will make the - graphic be a quarter of the height of the text area. + graphic a quarter of the height of the text area. 'totalheight' The graphic will be shown so its bounding box has this height plus @@ -9147,22 +12319,24 @@ graphic. height but a large depth. 'keepaspectratio' - If set to 'true', or just specified as with - '\includegraphics[...,keepaspectratio,...]{...}' and you give as - options both 'width' and 'height' (or 'totalheight'), then LaTeX - will make the graphic is as large as possible without distortion. - That is, LaTeX will ensure that neither is the graphic wider than - 'width' nor taller than 'height' (or 'totalheight'). + If set to 'true', or just specified as here + + \includegraphics[...,keepaspectratio,...]{...} + + and you give as options both 'width' and 'height' (or + 'totalheight'), then LaTeX will make the graphic is as large as + possible without distortion. That is, LaTeX will ensure that + neither is the graphic wider than 'width' nor taller than 'height' + (or 'totalheight'). 'scale' - Factor by which to scale the graphic. Specifying - '\includegraphics[scale=2.0]{...}' makes the graphic twice its - nominal size. This number may be any value; a number between 1 - and 0 will shrink the graphic and a negative number will reflect - it. + Factor by which to scale the graphic. To make a graphic twice its + nominal size, enter '\includegraphics[scale=2.0]{...}'. This + number may be any value; a number between 1 and 0 will shrink the + graphic and a negative number will reflect it. 'angle' - Rotate the picture. The angle is taken in degrees and + Rotate the graphic. The angle is taken in degrees and counterclockwise. The graphic is rotated about its 'origin'; see that option. For a complete description of how rotated material is typeset, *note \rotatebox::. @@ -9171,9 +12345,9 @@ graphic. The point of the graphic about which the rotation happens. Possible values are any string containing one or two of: 'l' for left, 'r' for right, 'b' for bottom, 'c' for center, 't' for top, - and 'B' for baseline. Thus, + and 'B' for baseline. Thus, entering the command '\includegraphics[angle=180,origin=c]{moon}' will turn the picture - upside down from the center, while + upside down about that picture's center, while the command '\includegraphics[angle=180,origin=lB]{LeBateau}' will turn its picture upside down about its left baseline. (The character 'c' gives the horizontal center in 'bc' or 'tc', but gives the vertical @@ -9201,10 +12375,13 @@ graphic. also the 'viewport' option. 'clip' - If set to 'true', or just specified as with - '\includegraphics[...,clip,...]{...}', then the graphic is cropped - to the bounding box. You can get this effect by instead using the - starred form of the command, as '\includegraphics*[...]{...}'. + If set to 'true', or just specified as here + + \includegraphics[...,clip,...]{...} + + then the graphic is cropped to the bounding box. This is the same + as using the starred form of the command, + '\includegraphics*[...]{...}'. 'page' Give the page number of a multi-page PDF file. The default is @@ -9227,8 +12404,9 @@ graphic. 'interpolate' Enable or disable interpolation of raster images by the viewer. - Can be set with 'interpolate=true' or just specified as with - '\includegraphics[...,interpolate,...]{...}'. + Can be set with 'interpolate=true' or just specified as here. + + \includegraphics[...,interpolate,...]{...} 'quiet' Do not write information to the log. You can set it with @@ -9236,11 +12414,13 @@ graphic. '\includegraphics[...,quite,...]{...}', 'draft' - If you set it with 'draft=true' or just specified it with - '\includegraphics[...,draft,...]{...}', then the graphic will not - appear in the document, possibly saving color printer ink. - Instead, LaTeX will put an empty box of the correct size with the - filename printed in it. + If you set it with 'draft=true' or just specify it with + + \includegraphics[...,draft,...]{...} + + then the graphic will not appear in the document, possibly saving + color printer ink. Instead, LaTeX will put an empty box of the + correct size with the filename printed in it. These options address the bounding box for Encapsulated PostScript graphic files, which have a size specified with a line '%%BoundingBox' @@ -9265,17 +12445,21 @@ points, 1/72 inch. For example, if an '.eps' file has the line 'natwidth, natheight' An alternative for 'bb'. Setting - '\includegraphics[...,natwidth=1in,natheight=0.618in,...]{...}' is - the same as setting 'bb=0 0 1in 0.618in'. + + \includegraphics[...,natwidth=1in,natheight=0.618in,...]{...} + + is the same as setting 'bb=0 0 1in 0.618in'. 'hiresbb' If set to 'true', or just specified as with - '\includegraphics[...,hiresbb,...]{...}', then LaTeX will look for - '%%HiResBoundingBox' lines instead of '%%BoundingBox' lines. (The - 'BoundingBox' lines use only natural numbers while the - 'HiResBoundingBox' lines use decimals; both use units equivalent to - TeX's big points, 1/72 inch.) To override a prior setting of - 'true', you can set it to 'false'. + + \includegraphics[...,hiresbb,...]{...} + + then LaTeX will look for '%%HiResBoundingBox' lines instead of + '%%BoundingBox' lines. (The 'BoundingBox' lines use only natural + numbers while the 'HiResBoundingBox' lines use decimals; both use + units equivalent to TeX's big points, 1/72 inch.) To override a + prior setting of 'true', you can set it to 'false'. These following options allow a user to override LaTeX's method of choosing the graphic type based on the filename extension. An example @@ -9296,7 +12480,9 @@ the file 'lion.xxx' as though it were 'lion.png'. For more on these, 'command' Specify a command to be applied to this file. Only use this in - conjunction with the option 'type'. + conjunction with the option 'type'. *Note Command line options:: + for a discussion of enabling the '\write18' functionality to run + external commands. File: latex2e.info, Node: \rotatebox, Next: \scalebox, Prev: \includegraphics, Up: Commands for graphics @@ -9345,15 +12531,17 @@ you can get the same effect without needing this package, except for the 'origin' The point of the MATERIAL's box about which the rotation happens. - Possible values are any string containing one or two of: 'l' for + Possible value is any string containing one or two of: 'l' for left, 'r' for right, 'b' for bottom, 'c' for center, 't' for top, - and 'B' for baseline. Thus, - '\includegraphics[angle=180,origin=c]{moon}' will turn the picture - upside down from the center, while - '\includegraphics[angle=180,origin=lB]{LeBateau}' will turn its - picture upside down about its left baseline. (The character 'c' - gives the horizontal center in 'bc' or 'tc' but gives the vertical - center in 'lc' or 'rc'.) The default is 'lB'. + and 'B' for baseline. Thus, the first line here + + \includegraphics[angle=180,origin=c]{moon} + \includegraphics[angle=180,origin=lB]{LeBateau} + + will turn the picture upside down from the center while the second + will turn its picture upside down about its left baseline. (The + character 'c' gives the horizontal center in 'bc' or 'tc' but gives + the vertical center in 'lc' or 'rc'.) The default is 'lB'. 'x, y' Specify an arbitrary point of rotation with '\rotatebox[x=TeX @@ -9388,10 +12576,13 @@ the first text and doubles the size of the second. If you do not specify the optional VERTICAL FACTOR then it defaults to the same value as the HORIZONTAL FACTOR. - You can use this command to resize a graphic, as with -'\scalebox{0.5}{\includegraphics{lion}}'. If you use the 'graphicx' -package then you can accomplish the same thing with optional arguments -to '\includegraphics' (*note \includegraphics::). + You can use this command to resize a graphic, as here. + + \scalebox{0.5}{\includegraphics{lion}} + +If you use the 'graphicx' package then you can accomplish the same thing +with optional arguments to '\includegraphics' (*note +\includegraphics::). The '\reflectbox' command abbreviates '\scalebox{-1}[1]{MATERIAL}'. Thus, 'Able was I\reflectbox{Able was I}' will show the phrase 'Able was @@ -9445,7 +12636,7 @@ meaning do not correspond to simple characters you can type. * Symbols by font position:: Inserting font symbols by number. * Text symbols:: Inserting other non-letter symbols in text. * Accents:: Inserting accents. -* Additional Latin letters:: Inserting other non-English characters. +* Additional Latin letters:: Inserting other non-English characters. * \rule:: Inserting lines and rectangles. * \today:: Inserting today's date. @@ -9455,34 +12646,31 @@ File: latex2e.info, Node: Reserved characters, Next: Upper and lower case, Up 23.1 Reserved characters ======================== -LaTeX sets aside the following characters for special purposes (for -example, the percent sign '%' is for comments) so they are called +LaTeX sets aside the following characters for special purposes. For +example, the percent sign '%' is for comments. They are called "reserved characters" or "special characters". # $ % & { } _ ~ ^ \ If you want a reserved character to be printed as itself, in the text body font, for all but the final three characters in that list simply -put a backslash '\' in front of the character. Thus, '\$1.23' will -produce '$1.23' in your output. +put a backslash '\' in front of the character. Thus, typing '\$1.23' +will produce '$1.23' in your output. As to the last three characters, to get a tilde in the text body font use '\~{}' (omitting the curly braces would result in the next character receiving a tilde accent). Similarly, to get a get a text body font -circumflex use '\^{}'. A text body font backslash results from -'\textbackslash{}'. +circumflex use '\^{}'. To get a backslash in the font of the text body, +enter '\textbackslash{}'. - To produce the reserved characters in a typewriter font use -'\verb!!', as below. + To produce the reserved characters in a typewriter font use '\verb!!' +as below (the double backslash '\\' is only there to split the lines). \begin{center} \# \$ \% \& \{ \} \_ \~{} \^{} \textbackslash \\ \verb!# $ % & { } _ ~ ^ \! \end{center} - In that example the double backslash '\\' is only there to split the -lines. - File: latex2e.info, Node: Upper and lower case, Next: Symbols by font position, Prev: Reserved characters, Up: Special insertions @@ -9553,17 +12741,18 @@ File: latex2e.info, Node: Text symbols, Next: Accents, Prev: Symbols by font LaTeX provides commands to generate a number of non-letter symbols in running text. Some of these, especially the more obscure ones, are not -available in OT1; you may need to load the 'textcomp' package. +available in OT1. Unless you are using XeLaTeX or LuaLaTeX then you may +need to load the 'textcomp' package. '\copyright' '\textcopyright' - The copyright symbol, (C). + (C) The copyright symbol. '\dag' - The dagger symbol (in text). + U+2020 The dagger symbol (in text). '\ddag' - The double dagger symbol (in text). + U+2021 The double dagger symbol (in text). '\LaTeX' The LaTeX logo. @@ -9575,158 +12764,166 @@ available in OT1; you may need to load the 'textcomp' package. '\guillemotright (>>)' '\guilsinglleft (<)' '\guilsinglright (>)' - Double and single angle quotation marks, commonly used in French: - <<, >>, <, >. + <<, >>, <, > Double and single angle quotation marks, commonly used + in French. '\ldots' '\dots' '\textellipsis' - An ellipsis (three dots at the baseline): '...'. '\ldots' and - '\dots' also work in math mode. + ... An ellipsis (three dots at the baseline): '\ldots' and '\dots' + also work in math mode. '\lq' - Left (opening) quote: '. + ' Left (opening) quote. '\P' '\textparagraph' - Paragraph sign (pilcrow): U+00B6. + U+00B6 Paragraph sign (pilcrow). '\pounds' '\textsterling' - English pounds sterling: #. + # English pounds sterling. '\quotedblbase (,,)' '\quotesinglbase (,)' - Double and single quotation marks on the baseline: ,, and ,. + ,, and , Double and single quotation marks on the baseline. '\rq' - Right (closing) quote: '. + ' Right (closing) quote. '\S' - \itemx \textsection Section sign: U+00A7. +'\textsection' + U+00A7 Section sign. '\TeX' The TeX logo. '\textasciicircum' - ASCII circumflex: ^. + ^ ASCII circumflex. '\textasciitilde' - ASCII tilde: ~. + ~ ASCII tilde. '\textasteriskcentered' - Centered asterisk: *. + * Centered asterisk. '\textbackslash' - Backslash: \. + \ Backslash. '\textbar' - Vertical bar: |. + | Vertical bar. '\textbardbl' - Double vertical bar. + U+23F8 Double vertical bar. '\textbigcircle' - Big circle symbol. + U+25EF Big circle symbol. '\textbraceleft' - Left brace: {. + { Left brace. '\textbraceright' - Right brace: }. + } Right brace. '\textbullet' - Bullet: *. + * Bullet. '\textcircled{LETTER}' - LETTER in a circle, as in (R). + U+24B6 Circle around LETTER. '\textcompwordmark' '\textcapitalcompwordmark' '\textascendercompwordmark' - Composite word mark (invisible). The '\textcapital...' form has - the cap height of the font, while the '\textascender...' form has - the ascender height. + Used to separate letters that would normally ligature. For + example, 'f\textcompwordmark i' produces 'fi' without a ligature. + This is most useful in non-English languages. The + '\textcapitalcompwordmark' form has the cap height of the font + while the '\textascendercompwordmark' form has the ascender height. '\textdagger' - Dagger: \dag. + U+2020 Dagger. '\textdaggerdbl' - Double dagger: \ddag. + U+2021 Double dagger. '\textdollar (or '\$')' - Dollar sign: $. + $ Dollar sign. '\textemdash (or '---')' - Em-dash: -- (for punctuation). + -- Em-dash (used for punctuation, as in 'The playoffs --- if you + are fortunate enough to make the playoffs --- is more like a + sprint.'). '\textendash (or '--')' - En-dash: - (for ranges). + - En-dash (used for ranges, as in 'See pages 12--14'). '\texteuro' - The Euro symbol: Euro. + + The Euro symbol: Euro. For an alternative glyph design, try the + 'eurosym' package; also, most fonts nowadays come with their own + Euro symbol (Unicode U+20AC). '\textexclamdown (or '!`')' - Upside down exclamation point: !. + ! Upside down exclamation point. '\textgreater' - Greater than: >. + > Greater than symbol. '\textless' - Less than: <. + < Less than symbol. '\textleftarrow' - Left arrow. + U+2190 Left arrow. '\textordfeminine' '\textordmasculine' - Feminine and masculine ordinal symbols: a, o. + a, o Feminine and masculine ordinal symbols. '\textperiodcentered' - Centered period: U+00B7. + U+00B7 Centered period. '\textquestiondown (or '?`')' - Upside down question mark: ?. + ? Upside down question mark. '\textquotedblleft (or '``')' - Double left quote: ". + " Double left quote. '\textquotedblright (or '''')' - Double right quote: ". + " Double right quote. '\textquoteleft (or '`')' - Single left quote: '. + ' Single left quote. '\textquoteright (or ''')' - Single right quote: '. + ' Single right quote. '\textquotesingle' - Straight single quote. (From TS1 encoding.) + U+0027 Straight single quote. (From TS1 encoding.) '\textquotestraightbase' '\textquotestraightdblbase' Single and double straight quotes on the baseline. '\textregistered' - Registered symbol: (R). + (R) Registered symbol. '\textrightarrow' - Right arrow. + U+2192 Right arrow. '\textthreequartersemdash' - "Three-quarters" em-dash, between en-dash and em-dash. + U+FE58 "Three-quarters" em-dash, between en-dash and em-dash. '\texttrademark' - Trademark symbol: U+2122. + U+2122 Trademark symbol. '\texttwelveudash' - "Two-thirds" em-dash, between en-dash and em-dash. + U+FE58 "Two-thirds" em-dash, between en-dash and em-dash. '\textunderscore' - Underscore: _. + _ Underscore. '\textvisiblespace' - Visible space symbol. + U+2423 Visible space symbol. File: latex2e.info, Node: Accents, Next: Additional Latin letters, Prev: Text symbols, Up: Special insertions @@ -9735,97 +12932,89 @@ File: latex2e.info, Node: Accents, Next: Additional Latin letters, Prev: Text ============ LaTeX has wide support for many of the world's scripts and languages, -through the 'babel' package and related support. This section does not -attempt to cover all that support. It merely lists the core LaTeX -commands for creating accented characters. +through the 'babel' package and related support if you are using +pdfLaTeX, or 'polyglossia' if you are using XeLaTeX or LuaLaTeX. This +section does not cover that support. It only lists the core LaTeX +commands for creating accented characters. The '\capital...' commands +shown here produce alternative forms for use with capital letters. +These are not available with OT1. + + Below, to make them easier to find, the accents are all illustrated +with lowercase 'o'. - The '\capital...' commands produce alternative forms for use with -capital letters. These are not available with OT1. + Note that '\i' produces a dotless i, and '\j' produces a dotless j. +These are often used in place of their dotted counterparts when they are +accented. '\"' '\capitaldieresis' - Produces an umlaut (dieresis), as in o". + o" Umlaut (dieresis). '\'' '\capitalacute' - Produces an acute accent, as in o'. In the 'tabbing' environment, - pushes current column to the right of the previous column (*note - tabbing::). + o' Acute accent. '\.' - Produces a dot accent over the following, as in o.. + o. Dot accent. '\=' '\capitalmacron' - Produces a macron (overbar) accent over the following, as in o=. + o= Macron (overbar) accent. '\^' '\capitalcircumflex' - Produces a circumflex (hat) accent over the following, as in o^. + o^ Circumflex (hat) accent. '\`' '\capitalgrave' - Produces a grave accent over the following, as in o`. In the - 'tabbing' environment, move following text to the right margin - (*note tabbing::). + o` Grave accent. '\~' '\capitaltilde' - Produces a tilde accent over the following, as in n~. + n~ Tilde accent. '\b' - Produces a bar accent under the following, as in o_. See also - '\underbar' hereinafter. + o_ Bar accent underneath. + + Related to this, '\underbar{TEXT}' produces a bar under TEXT. The + argument is always processed in LR mode (*note Modes::). The bar + is always a fixed position under the baseline, thus crossing + through descenders. See also '\underline' in *note Math + miscellany::. '\c' '\capitalcedilla' - Produces a cedilla accent under the following, as in c,. + c, Cedilla accent underneath. '\d' '\capitaldotaccent' - Produces a dot accent under the following, as in .o. + .o Dot accent underneath. '\H' '\capitalhungarumlaut' - Produces a long Hungarian umlaut accent over the following, as in - o''. - -'\i' - Produces a dotless i, as in 'i'. - -'\j' - Produces a dotless j, as in 'j'. + o'' Long Hungarian umlaut accent. '\k' '\capitalogonek' - Produces a letter with ogonek, as in 'o;'. Not available in the - OT1 encoding. + o; Ogonek. Not available in the OT1 encoding. '\r' '\capitalring' - Produces a ring accent, as in 'o*'. + o* Ring accent. '\t' '\capitaltie' '\newtie' '\capitalnewtie' - Produces a tie-after accent, as in 'oo['. The '\newtie' form is - centered in its box. + oo[ Tie-after accent. The '\newtie' form is centered in its box. '\u' '\capitalbreve' - Produces a breve accent, as in 'o('. - -'\underbar' - Not exactly an accent, this produces a bar under the argument text. - The argument is always processed in horizontal mode. The bar is - always a fixed position under the baseline, thus crossing through - descenders. See also '\underline' in *note Math miscellany::. See - also '\b' above. + o( Breve accent. '\v' '\capitalcaron' - Produces a ha'c<ek (check, caron) accent, as in 'o<'. + o< Ha'c<ek (check, caron) accent. File: latex2e.info, Node: Additional Latin letters, Next: \rule, Prev: Accents, Up: Special insertions @@ -9833,8 +13022,8 @@ File: latex2e.info, Node: Additional Latin letters, Next: \rule, Prev: Accent 23.6 Additional Latin letters ============================= -Here are the basic LaTeX commands for inserting letters (beyond A-Z) -extending the Latin alphabet, used primarily in languages other than +Here are the basic LaTeX commands for inserting letters beyond A-Z that +extend the Latin alphabet, used primarily in languages other than English. '\aa' @@ -9893,21 +13082,37 @@ File: latex2e.info, Node: \rule, Next: \today, Prev: Additional Latin letters 23.7 '\rule' ============ -Synopsis: +Synopsis, one of: + \rule{WIDTH}{THICKNESS} \rule[RAISE]{WIDTH}{THICKNESS} - The '\rule' command produces "rules", that is, lines or rectangles. -The arguments are: + Produce a "rule", a filled-in rectangle. -RAISE - How high to raise the rule (optional). + This produces a rectangular blob, sometimes called a Halmos symbol, +often used to mark the end of a proof. -WIDTH - The length of the rule (mandatory). + \newcommand{\qedsymbol}{\rule{0.4em}{2ex}} -THICKNESS - The thickness of the rule (mandatory). +The 'amsthm' package includes this command, with a somewhat +different-looking symbol. + + The mandatory arguments give the horizontal WIDTH and vertical +THICKNESS of the rectangle. They are rigid lengths (*note Lengths::). +The optional argument RAISE is also a rigid length, and tells LaTeX how +much to raise the rule above the baseline, or lower it if the length is +negative. + + This produces a line, a rectangle that is wide but not tall. + + \noindent\rule{\textwidth}{0.4pt} + +The line is the width of the page and 0.4 points tall. This line +thickness is common in LaTeX. + + A rule that has zero width, or zero thickness, will not show up in +the output, but can cause LaTeX to change the output around it. *Note +\strut:: for examples. File: latex2e.info, Node: \today, Prev: \rule, Up: Special insertions @@ -9915,14 +13120,16 @@ File: latex2e.info, Node: \today, Prev: \rule, Up: Special insertions 23.8 '\today' ============= -The '\today' command produces today's date, in the format 'MONTH DD, -YYYY'; for example, 'July 4, 1976'. It uses the predefined counters -'\day', '\month', and '\year' (*note \day \month \year::) to do this. -It is not updated as the program runs. +Synopsis: + + \today + + Produce today's date in the format 'MONTH DD, YYYY'. An example of a +date in that format is 'July 4, 1976'. - Multilingual packages like 'babel' or classes like 'lettre', among -others, will localize '\today'. For example, the following will output -'4 juillet 1976': + Multilingual packages such as 'babel' or 'polyglossia', or classes +such as 'lettre', will localize '\today'. For example, the following +will output '4 juillet 1976': \year=1976 \month=7 \day=4 \documentclass{minimal} @@ -9931,8 +13138,15 @@ others, will localize '\today'. For example, the following will output \today \end{document} - The 'datetime' package, among others, can produce a wide variety of -other date formats. +'\today' uses the counters '\day', '\month', and '\year' (*note \day & +\month & \year::). + + A number of package on CTAN work with dates. One is 'datetime' +package which can produce a wide variety of date formats, including ISO +standards. + + The date is not updated as the LaTeX process runs, so in principle +the date could be incorrect by the time the program finishes. File: latex2e.info, Node: Splitting the input, Next: Front/back matter, Prev: Special insertions, Up: Top @@ -9940,77 +13154,243 @@ File: latex2e.info, Node: Splitting the input, Next: Front/back matter, Prev: 24 Splitting the input ********************** -A large document requires a lot of input. Rather than putting the whole -input in a single large file, it's more efficient to split it into -several smaller ones. Regardless of how many separate files you use, -there is one that is the "root file"; it is the one whose name you type -when you run LaTeX. +LaTeX lets you split a large document into several smaller ones. This +can simplify editing or allow multiple authors to work on the document. +It can also speed processing. + + Regardless of how many separate files you use, there is always one +"root file", on which LaTeX compilation starts. This shows such a file +with five included files. + + \documentclass{book} + \includeonly{ % comment out lines below to omit compiling + pref, + chap1, + chap2, + append, + bib + } + \begin{document} + \frontmatter + \include{pref} + \mainmatter + \include{chap1} + \include{chap2} + \appendix + \include{append} + \backmatter + \include{bib} + \end{document} - *Note filecontents::, for an environment that allows bundling an -external file to be created with the main document. +This will bring in material from 'pref.tex', 'chap1.tex', 'chap2.tex', +'append.tex', and 'bib.tex'. If you compile this file, and then comment +out all of the lines inside '\includeonly{...}' except for 'chap1,' and +compile again, then LaTeX will only process the material in the first +chapter. Thus, your output will appear more quickly and be shorter to +print. However, the advantage of the '\includeonly' command is that +LaTeX will retain the page numbers and all of the cross reference +information from the other parts of the document so these will appear in +your output correctly. + + *Note Larger book template:: for another example of '\includeonly'. * Menu: -* \include:: Conditionally include a file. -* \includeonly:: Determine which files are included. -* \input:: Unconditionally include a file. +* \endinput:: Stop including material from a file. +* \include & \includeonly:: Conditionally include files. +* \input:: Unconditionally include a file. -File: latex2e.info, Node: \include, Next: \includeonly, Up: Splitting the input +File: latex2e.info, Node: \endinput, Next: \include & \includeonly, Up: Splitting the input -24.1 '\include' -=============== +24.1 '\endinput' +================ Synopsis: - \include{FILE} + \endinput - If no '\includeonly' command is present, the '\include' command -executes '\clearpage' to start a new page (*note \clearpage::), then -reads FILE, then does another '\clearpage'. + When you '\include{filename}', inside 'filename.tex' the material +after '\endinput' will not be included. This command is optional; if +'filename.tex' has no '\endinput' then LaTeX will read all of the file. - Given an '\includeonly' command, the '\include' actions are only run -if FILE is listed as an argument to '\includeonly'. See *note -\includeonly::. + For example, suppose that a document's root file has '\input{chap1}' +and this is 'chap1.tex'. - The '\include' command may not appear in the preamble or in a file -read by another '\include' command. + \chapter{One} + This material will appear in the document. + \endinput + This will not appear. + + This can be useful for putting documentation or comments at the end +of a file, or for avoiding junk characters that can be added during +mailing. It is also useful for debugging: one strategy to localize +errors is to put '\endinput' halfway through the included file and see +if the error disappears. Now, knowing which half contains the error, +moving '\endinput' to halfway through that area further narrows down the +location. This process rapidly finds the offending line. + + After reading '\endinput', LaTeX continues to read to the end of the +line, so something can follow this command and be read nonetheless. +This allows you, for instance, to close an '\if...' with a '\fi'. -File: latex2e.info, Node: \includeonly, Next: \input, Prev: \include, Up: Splitting the input +File: latex2e.info, Node: \include & \includeonly, Next: \input, Prev: \endinput, Up: Splitting the input -24.2 '\includeonly' -=================== +24.2 '\include' & '\includeonly' +================================ Synopsis: - \includeonly{FILE1,FILE2,...} + \includeonly{ % in document preamble + ... + FILENAME, + ... + } + ... + \include{FILENAME} % in document body + + Bring material from the external file 'FILENAME.tex' into a LaTeX +document. + + The '\include' command does three things: it executes '\clearpage' +(*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'. + + \documentclass{book} + \includeonly{ + preamble, + articles, + amendments + } + \begin{document} + \include{preamble} + \include{articles} + \include{amendments} + \end{document} + +The file 'preamble.tex' contains no special code; you have just +excerpted the chapter from 'consitution.tex' and put it in a separate +file just for editing convenience. + + \chapter{Preamble} + We the People of the United States, + in Order to form a more perfect Union, ... + +Running LaTeX on 'constitution.tex' makes the material from the three +files appear in the document but also generates the auxiliary files +'preamble.aux', 'articles.aux', and 'amendments.tex'. These contain +information such as page numbers and cross-references (*note Cross +references::). If you now comment out '\includeonly''s lines with +'preamble' and 'amendments' and run LaTeX again then the resulting +document shows only the material from 'articles.tex', not the material +from 'preamble.tex' or 'amendments.tex'. Nonetheless, all of the +auxiliary information from the omitted files is still there, including +the starting page number of the chapter. + + If the document preamble does not have '\includeonly' then LaTeX will +include all the files you call for with '\include' commands. + + The '\include' command makes a new page. To avoid that, see *note +\input:: (which, however, does not retain the auxiliary information). + + *Note Larger book template:: for another example using '\include' and +'\includeonly'. That example also uses '\input' for some material that +will not necessarily start on a new page. + + File names can involve paths. - The '\includeonly' command controls which files will be read by -subsequent '\include' commands. The list of filenames is -comma-separated. Each element FILE1, FILE2, ... must exactly match a -filename specified in a '\include' command for the selection to be -effective. + \documentclass{book} + \includeonly{ + chapters/chap1, + } + \begin{document} + \include{chapters/chap1} + \end{document} + + To make your document portable across distributions and platforms you +should avoid spaces in the file names. The tradition is to instead use +dashes or underscores. Nevertheless, for the name 'amo amas amat', this +works under TeX Live on GNU/Linux: + + \documentclass{book} + \includeonly{ + "amo\space amas\space amat" + } + \begin{document} + \include{"amo\space amas\space amat"} + \end{document} + + and this works under MiKTeX on Windows: + + \documentclass{book} + \includeonly{ + {"amo amas amat"} + } + \begin{document} + \include{{"amo amas amat"}} + \end{document} - This command can only appear in the preamble. + You cannot use '\include' inside a file that is being included or you +get 'LaTeX Error: \include cannot be nested.' The '\include' command +cannot appear in the document preamble; you will get 'LaTeX Error: +Missing \begin{document}'. + + If a file that you '\include' does not exist, for instance if you +'\include{athiesm}' but you meant '\include{atheism}', then LaTeX does +not give you an error but will warn you 'No file athiesm.tex.' (It will +also create 'athiesm.aux'.) + + If you '\include' the root file in itself then you first get 'LaTeX +Error: Can be used only in preamble.' Later runs get 'TeX capacity +exceeded, sorry [text input levels=15]'. To fix this, you must remove +the inclusion '\include{root}' but also delete the file 'ROOT.aux' and +rerun LaTeX. -File: latex2e.info, Node: \input, Prev: \includeonly, Up: Splitting the input +File: latex2e.info, Node: \input, Prev: \include & \includeonly, Up: Splitting the input 24.3 '\input' ============= Synopsis: - \input{FILE} + \input{FILENAME} + + LaTeX processes the file as if its contents were inserted in the +current file. For a more sophisticated inclusion mechanism see *note +\include & \includeonly::. + + If FILENAME does not end in '.tex' then LaTeX first tries the +filename with that extension; this is the usual case. If FILENAME ends +with '.tex' then LaTeX looks for the filename as it is. + + For example, this + + \input{macros} - The '\input' command causes the specified FILE to be read and -processed, as if its contents had been inserted in the current file at -that point. +will cause LaTeX to first look for 'macros.tex'. If it finds that file +then it processes its contents as thought they had been copy-pasted in. +If there is no file of the name 'macros.tex' then LaTeX tries the name +'macros', without an extension. (This may vary by distribution.) - If FILE does not end in '.tex' (e.g., 'foo' or 'foo.bar'), it is -first tried with that extension ('foo.tex' or 'foo.bar.tex'). If that -is not found, the original FILE is tried ('foo' or 'foo.bar'). + To make your document portable across distributions and platforms you +should avoid spaces in the file names. The tradition is to instead use +dashes or underscores. Nevertheless, for the name 'amo amas amat', this +works under TeX Live on GNU/Linux: + + \input{"amo\space amas\space amat"} + + and this works under MiKTeX on Windows: + + \input{{"amo amas amat"}} File: latex2e.info, Node: Front/back matter, Next: Letters, Prev: Splitting the input, Up: Top @@ -10020,41 +13400,114 @@ File: latex2e.info, Node: Front/back matter, Next: Letters, Prev: Splitting t * Menu: -* Tables of contents:: -* Glossaries:: -* Indexes:: +* Table of contents etc.:: Table of contents, list of figures, list of tables. +* Indexes:: Generate an index. +* Glossaries:: Generate a glossary. -File: latex2e.info, Node: Tables of contents, Next: Glossaries, Up: Front/back matter +File: latex2e.info, Node: Table of contents etc., Next: Indexes, Up: Front/back matter -25.1 Tables of contents -======================= +25.1 Table of contents etc. +=========================== -A table of contents is produced with the '\tableofcontents' command. -You put the command right where you want the table of contents to go; -LaTeX does the rest for you. A previous run must have generated a -'.toc' file. +Synopsis, one of: - The '\tableofcontents' command produces a heading, but it does not -automatically start a new page. If you want a new page after the table -of contents, write a '\newpage' command after the '\tableofcontents' -command. + \tableofcontents + \listoffigures + \listoftables - The analogous commands '\listoffigures' and '\listoftables' produce a -list of figures and a list of tables (from '.lof' and '.lot' files), -respectively. Everything works exactly the same as for the table of -contents. + Produce a table of contents, or list of figures, or list of tables. +Put the command in the input file where you want the table or list to +go. You do not type the entries; for example, typically the table of +contents entries are automatically generated from the sectioning +commands '\chapter', etc. + + This example illustrates the first command, '\tableofcontents'. +LaTeX will produce a table of contents on the book's first page. + + \documentclass{book} + % \setcounter{tocdepth}{1} + \begin{document} + \tableofcontents\newpage + ... + \chapter{...} + ... + \section{...} + ... + \subsection{...} + ... + \end{document} + +Uncommenting the second line would cause that table to contain chapter +and section listings but not subsection listings, because the '\section' +command has level 1. *Note Sectioning:: for level numbers of the +sectioning units. For more on the 'tocdepth' *note +Sectioning/tocdepth::. + + Another example of the use of '\tableofcontents' is in *note Larger +book template::. + + If you want a page break after the table of contents, write a +'\newpage' command after the '\tableofcontents' command, as above. + + To make the table of contents LaTeX stores the information in an +auxiliary file named 'ROOT-FILE.toc' (*note Splitting the input::). For +example, this LaTeX file 'test.tex' + + \documentclass{article} + \begin{document} + \tableofcontents\newpage + \section{First section} + \subsection{First subsection} + ... + +writes the following line to 'test.toc'. + + \contentsline {section}{\numberline {1}First section}{2} + \contentsline {subsection}{\numberline {1.1}First subsection}{2} + +The 'section' or 'subsection' is the sectioning unit. The hook +'\numberline' lets you to change how the information appears in the +table of contents. Of its two arguments, '1' or '1.1' is the sectioning +unit number and 'First section' or 'First subsection' is the title. +Finally, '2' is the page number on which the sectioning units start. + + One consequence of this auxiliary file storage strategy is that to +get the contents page correct you must run LaTeX twice, once to store +the information and once to get it. In particular, the first time that +you run LaTeX on a new document, the table of contents page will be +empty except for its 'Contents' header. Just run it again. - The command '\nofiles' overrides these commands, and _prevents_ any -of these lists from being generated. + The commands '\listoffigures' and '\listoftables' produce a list of +figures and a list of tables. They work the same way as the contents +commands; for instance, these work with information stored in '.lof' and +'.lot' files. + + To change the header for the table of contents page do something like +the first line here. + + \renewcommand{\contentsname}{Table of contents} + \renewcommand{\listfigurename}{Plots} + \renewcommand{\listtablename}{Tables} + +Similarly, the other two lines will do the other two. +Internationalization packages such as 'babel' or 'polyglossia' will +change the headers depending on the chosen base language. + + CTAN has many packages for the table of contents and lists of figures +and tables. One convenient one for adjusting some aspects of the +default, such as spacing, is 'tocloft'. And, 'tocbibbind' will +automatically add the bibliography, index, etc. to the table of +contents. * Menu: * \addcontentsline:: Add an entry to table of contents, etc. * \addtocontents:: Add text directly to table of contents file, etc. +* \nofiles:: Prevent writing to auxiliary files. -File: latex2e.info, Node: \addcontentsline, Next: \addtocontents, Up: Tables of contents +File: latex2e.info, Node: \addcontentsline, Next: \addtocontents, Up: Table of contents etc. 25.1.1 '\addcontentsline' ------------------------- @@ -10063,111 +13516,635 @@ Synopsis: \addcontentsline{EXT}{UNIT}{TEXT} - The '\addcontentsline' command adds an entry to the specified list or -table where: + Add an entry to the file specified by EXT. Usually EXT is one of +'toc' for the table of contents, 'lof' for the list of figures, or 'lot' +for the list of tables. + + The following will result in an 'Appendices' line in the table of +contents. + + \addcontentsline{toc}{section}{\protect\textbf{Appendices}} + +It will appear at the same indentation level as the sections, will be in +boldface, and will be assigned the page number associated with the point +where it appears in the input file. + + The '\addcontentsline' command writes information to the file +'ROOT-NAME.EXT'. It writes that information as the text of the command +'\contentsline{UNIT}{TEXT}{NUM}', where 'NUM' is the current value of +counter 'UNIT'. The most common case is the table of contents and there +NUM is the page number of the first page of UNIT. + + This command is invoked by the sectioning commands '\chapter', etc., +and also by '\caption' inside a float environment. But it is also used +by authors. For example, in a book to have the preface unnumbered, you +may use the starred '\chapter*'. But that does not put in table of +contents information, so you can enter it manually, as here. + + \chapter*{Preface} + \addcontentsline{toc}{chapter}{\protect\numberline{}Preface} + +In the '.toc' file LaTeX will put the line '\contentsline +{chapter}{\numberline {}Preface}{3}'; note the page number '3'. + + All of the arguments for '\addcontentsline' are required. EXT - The filename extension of the file on which information is to be - written, typically one of: 'toc' (table of contents), 'lof' (list - of figures), or 'lot' (list of tables). + Typically one of the strings 'toc' for the table of contents, 'lof' + for the list of figures, or 'lot' for the list of tables. The + filename extension of the information file. UNIT - The name of the sectional unit being added, typically one of the - following, matching the value of the EXT argument: + A string that depends on the value of the EXT argument: 'toc' - The name of the sectional unit: 'part', 'chapter', 'section', - 'subsection', 'subsubsection'. + For the table of contents, this is the name of a sectional + unit: 'part', 'chapter', 'section', 'subsection', etc. + 'lof' For the list of figures: 'figure'. + 'lot' For the list of tables: 'table'. TEXT - The text of the entry. + The text of the entry. You must '\protect' any commands that are + fragile (*note \protect::). - What is written to the '.EXT' file is the command -'\contentsline{UNIT}{TEXT}{NUM}', where 'NUM' is the current value of -counter 'UNIT'. + The '\addcontentsline' command has an interaction with '\include' +(*note \include & \includeonly::). If you use them at the same level, +as with '\addcontentsline{...}{...}{...}\include{...}' then lines in the +table of contents can come out in the wrong order. The solution is to +move '\addcontentsline' into the file being included. + + If you use a UNIT that LaTeX does not recognize, as here + + \addcontentsline{toc}{setcion}{\protect\textbf{Appendices}} + +then you don't get an error but the formatting in the table of contents +will not make sense. -File: latex2e.info, Node: \addtocontents, Prev: \addcontentsline, Up: Tables of contents +File: latex2e.info, Node: \addtocontents, Next: \nofiles, Prev: \addcontentsline, Up: Table of contents etc. 25.1.2 '\addtocontents' ----------------------- -The '\addtocontents'{EXT}{TEXT} command adds text (or formatting -commands) directly to the '.EXT' file that generates the table of -contents or lists of figures or tables. +Synopsis: + + \addtocontents{EXT}{TEXT} + + Add TEXT, which may be text or formatting commands, directly to the +auxiliary file with extension EXT. This is most commonly used for the +table of contents so that is the discussion here, but this also applies +to the list of figures and list of tables. + + This will put some vertical space in the table of contents after the +'Contents' header. + + \tableofcontents\newpage + \addtocontents{toc}{\protect\vspace*{3ex}} + + The '\addtocontents' command has two arguments. Both are required. EXT - The extension of the file on which information is to be written, - typically one of: 'toc' (table of contents), 'lof' (list of - figures), or 'lot' (list of tables). + Typically one of: 'toc' for the table of contents, 'lof' for the + list of figures, or 'lot' for the list of tables. The extension of + the file holding the information. TEXT - The text to be written. + The text, and possibly commands, to be written. + + The sectioning commands such as '\chapter' use the '\addcontentsline' +command to store information. This command creates lines in the '.toc' +auxiliary file containing the '\contentsline' command (*note +\addcontentsline::). In contrast, the command '\addtocontents' puts +material directly in that file. + + The '\addtocontents' command has an interaction with '\include' +(*note \include & \includeonly::). If you use them at the same level, +as with '\addtocontents{...}{...}\include{...}' then lines in the table +of contents can come out in the wrong order. The solution is to move +'\addtocontents' into the file being included. -File: latex2e.info, Node: Glossaries, Next: Indexes, Prev: Tables of contents, Up: Front/back matter +File: latex2e.info, Node: \nofiles, Prev: \addtocontents, Up: Table of contents etc. -25.2 Glossaries -=============== +25.1.3 '\nofiles' +----------------- -The command '\makeglossary' enables creating glossaries. +Synopsis: - The command '\glossary{TEXT}' writes a glossary entry for TEXT to an -auxiliary file with the '.glo' extension. + \nofiles - Specifically, what gets written is the command -'\glossaryentry{TEXT}{PAGENO}', where PAGENO is the current '\thepage' -value. + Prevent LaTeX from writing any auxiliary files. The only output will +be the '.log' and '.pdf' (or '.dvi') files. This command must go in the +preamble. + + Because of the '\nofiles' command this example will not produce a +'.toc' file. + + \documentclass{book} + \nofiles + \begin{document} + \tableofcontents\newpage + \chapter{...} + ... - The 'glossary' package on CTAN provides support for fancier -glossaries. +LaTeX will not erase any existing auxiliary files, so if you insert the +'\nofiles' command after you have run the file and gotten a '.toc' then +the table of contents page will continue to show the old information. -File: latex2e.info, Node: Indexes, Prev: Glossaries, Up: Front/back matter +File: latex2e.info, Node: Indexes, Next: Glossaries, Prev: Table of contents etc., Up: Front/back matter -25.3 Indexes +25.2 Indexes ============ -The command '\makeindex' enables creating indexes. Put this in the -preamble. +This document has an index. - The command '\index{TEXT}' writes an index entry for TEXT to an -auxiliary file named with the '.idx' extension. + \documentclass{article} + \usepackage{makeidx} \makeindex + ... + \begin{document} + ... + Recall Wilson's Theorem: \index{Wilson's Theorem} + a number \( n>1 \) is prime if and only if the factorial of \( n-1 \) + is congruent to \( -1 \) modulo~\( n \). + ... + \printindex + ... - Specifically, what gets written is the command -'\indexentry{TEXT}{PAGENO}', where PAGENO is the current '\thepage' -value. +The '\usepackage{makeidx}' and '\makeindex' in the preamble bring in the +relevant commands. + + Producing an index is a three stage process. First, in the document +body you declare index entries with the '\index' command (*note +\index::). When you run LaTeX, the '\index' writes its information to +an auxiliary file 'ROOT-NAME.idx'. Next, to alphabetize and to do other +manipulations you run an external command, typically 'makeindex' or +'xindy' (*note makeindex::). These output a file 'ROOT-NAME.ind'. +Finally, you bring the information back into your document and typeset +it with the '\printindex' command (*note \printindex::). + + There are many packages that apply to indexing commands. The +'showidx' package causes each index entries to be shown in the margin on +the page where the entry appears. This can help in preparing the index. +The 'multind' package supports multiple indexes. See also the TeX FAQ +entry on this topic, +<http://www.tex.ac.uk/cgi-bin/texfaq2html?label=multind>. - To generate a index entry for 'bar' that says 'See foo', use a -vertical bar: '\index{bar|see{foo}}'. Use 'seealso' instead of 'see' to -make a 'See also' entry. +* Menu: - The text 'See' is defined by the macro '\seename', and 'See also' by -the macro '\alsoname'. These can be redefined for other languages. +* \index:: Declare an index entry. +* makeindex:: Alphabetize index entries. +* \printindex:: Put the index here. - The generated '.idx' file is then sorted with an external command, -usually either 'makeindex' (<http://mirror.ctan.org/indexing/makeindex>) -or (the multi-lingual) 'xindy' (<http://xindy.sourceforge.net>). This -results in a '.ind' file, which can then be read to typeset the index. + +File: latex2e.info, Node: \index, Next: makeindex, Up: Indexes - The index is usually generated with the '\printindex' command. This -is defined in the 'makeidx' package, so '\usepackage{makeidx}' needs to -be in the preamble. +25.2.1 '\index' +--------------- - The rubber length '\indexspace' is inserted before each new letter in -the printed index; its default value is '10pt plus5pt minus3pt'. +Synopsis: - The 'showidx' package causes each index entries to be shown in the -margin on the page where the entry appears. This can help in preparing -the index. + \index{INDEX-ENTRY-STRING} - The 'multind' package supports multiple indexes. See also the TeX -FAQ entry on this topic, -<http://www.tex.ac.uk/cgi-bin/texfaq2html?label=multind>. + Declare an entry in the index. This command is fragile (*note +\protect::). + + For example, as described in *note Indexes::, one way to get an index +from what's below is to compile the document with 'pdflatex test', then +process the index entries with 'makeindex test', and then compile again +with 'pdflatex test'. + + W~Ackermann (1896--1962).\index{Ackermann} + ... + Ackermann function\index{Ackermann!function} + ... + rate of growth\index{Ackermann!function!growth rate} + +All three index entries will get a page number, such as 'Ackermann, 22'. +LaTeX will format the second as a subitem of the first, on the line +below it and indented, and the third as a subitem of the second. Three +levels deep is as far as you can nest subentries. (If you add +'\index{Ackermann!function!growth rate!comparison}' then 'makeindex' +says 'Scanning input file test.idx....done (4 entries accepted, 1 +rejected)' and nothing appears in the index). + + If you enter a second '\index' with the same INDEX-ENTRY-STRING then +you will get a single index entry with two page numbers (unless they +happen to fall on the same page). Thus, adding 'as for +Ackermann.\index{Ackermann}' later in the same document as above will +give an index entry like 'Ackermann, 22, 151'. Also, you can enter the +index entries in any order, so for instance '\index{Ackermann!function}' +could come before '\index{Ackermann}'. + + Get a page range in the output, like 'Hilbert, 23--27', as here. + + W~Ackermann (1896--1962).\index{Ackermann} + ... + D~Hilbert (1862--1943)\index{Ackermann!Hilbert\(} + ... + disapproved of his marriage.\index{Ackermann!Hilbert\)} + +If the beginning and ending of the page range are equal then the system +just gives a single page entry, not a range. + + If you index subentries but not a main entry, as with +'\index{Jones!program}' and '\index{Jones!results}', then the output is +the item 'Jones' with no comma or page number, followed by two subitems, +like 'program, 50' and 'results, 51'. + + Generate a index entry that says 'See' by using a vertical bar +character: '\index{Ackermann!function|see{P\'eter's function}}'. You +can instead get 'See also' with 'seealso'. (The text 'See' is defined +by '\seename', and 'See also' by '\alsoname'. You can redefine these +either by using an internationalization package such as 'babel' or +'polyglossia', or directly as with '\renewcommand{\alsoname}[1]{Also see +#1}'.) + + The 'See' feature is part of a more general functionality. After the +vertical bar you can put the name of a one-input command, as in +'\index{group|textit}' (note the missing backslash on the '\textit' +command) and the system will apply that command to the page number, here +giving something like '\textit{7}'. You can define your own one-input +commands, such as '\newcommand{\definedpage}[1]{{\color{blue}#1}}' and +then '\index{Ackermann!function|definedpage}' will give a blue page +number (*note Color::). Another, less practical, example is this, + + \newcommand\indexownpage[1]{#1, \thepage} + ... Epimenides.\index{self-reference|indexownpage} + +which creates an entry citing the page number of its own index listing. + + The two functions just described combine, as here + + \index{Ackermann!function|(definedpage} + ... + \index{Ackermann!function|)} + +which outputs an index entry like 'function, 23--27' where the page +number range is in blue. + + Consider an index entry such as 'U+03B1-ring'. Entering it as +'$\alpha$-ring' will cause it to be alphabetized according to the dollar +sign. You can instead enter it using an at-sign, as +'\index{alpha-ring@$\alpha$-ring}'. If you specify an entry with an +at-sign separating two strings, 'POS@TEXT', then POS gives the +alphabetical position of the entry while TEXT produces the text of the +entry. Another example is that '\index{Saint Michael's College@SMC}' +produces an index entry 'SMC' alphabetized into a different location +than its spelling would naturally give it. + + To put a '!', or '@', or '|' character in an index entry, preceding +it with a double quote, '"'. (The double quote gets deleted before +alphabetization.) + + A number of packages on CTAN have additional functionality beyond +that provided by 'makeidx'. One is 'index', which allows for multiple +indices and contains a command '\index*{INDEX-ENTRY-STRING}' that prints +the INDEX-ENTRY-STRING as well as indexing it. + + The '\index' command writes the indexing information to the file +'ROOT-NAME.idx' file. Specifically, it writes text of the command +'\indexentry{INDEX-ENTRY-STRING}{PAGE-NUM}', where where PAGE-NUM is the +value of the '\thepage' counter. On occasion, when the '\printindex' +command is confused, you have to delete this file to start with a fresh +slate. + + If you omit the closing brace of an '\index' command then you get a +message like this. + + Runaway argument? {Ackermann!function + ! Paragraph ended before \@wrindex was complete. + + +File: latex2e.info, Node: makeindex, Next: \printindex, Prev: \index, Up: Indexes + +25.2.2 'makeindex' +------------------ + +Synopsis, one of: + + makeindex FILENAME + makeindex -s STYLE-FILE FILENAME + makeindex OPTIONS FILENAME0 ... + + Sort, and otherwise process, the index information in the auxiliary +file FILENAME. This is a command line program. It takes one or more +raw index files, 'FILENAME.idx' files, and produces the actual index +file, the 'FILENAME.ind' file that is input by '\printindex' (*note +\printindex::). + + The first form of the command suffices for many uses. The second +allows you to format the index by using an "index style file", a '.isty' +file. The third form is the most general; see the full documentation on +CTAN. + + This is a simple '.isty' file. + + % book.isty + % $ makeindex -s book.isty -p odd book.idx + % creates the index as book.ind, starting on an odd page. + preamble + "\\pagestyle{empty} + \\small + \\begin{theindex} + \\thispagestyle{empty}" + + postamble + "\n + \\end{theindex}" + + The description here covers only some of the index formatting +possibilities in STYLE-FILE. For a full list see the documentation on +CTAN. + + A style file consists of a list of pairs: SPECIFIER and ATTRIBUTE. +These can appear in the file in any order. All of the ATTRIBUTES are +strings, except where noted. Strings are surrounded with double quotes, +'"', and the maximum length of a string is 144 characters. The '\n' is +for a newline and '\t' is for a tab. Backslashes are escaped with +another backslash, '\\'. If a line begins with a percent sign, '%', +then it is a comment. + +'preamble' + Preamble of the output file. Defines the context in which the + index is formatted. Default: '"\\begin{theindex}\n"'. + +'postamble' + Postamble of the output file. Default: '"\n\n\\end{theindex}\n"'. + +'group_skip' + Traditionally index items are broken into groups, typically a group + for entries starting with 'a', etc. This specifier gives what is + inserted when a new group begins. Default: '"\n\n \\indexspace\n"' + ('\indexspace' is a rubber length with default value '10pt plus5pt + minus3pt'). + +'lethead_flag' + An integer. It governs what is inserted for a new group or letter. + If it is 0 (which is the default) then other than 'group_skip' + nothing will be inserted before the group. If it is is positive + then at a new letter the 'lethead_prefix' and 'lethead_suffix' will + be inserted, with that letter in uppercase between them. If it is + negative then what will be inserted is the letter in lowercase. + The default is 0. + +'lethead_prefix' + If a new group begins with a different letter then this is the + prefix inserted before the new letter header. Default: '""' + +'lethead_suffix' + If a group begins with a different letter then this is the suffix + inserted after the new letter header. Default: '""'. + +'item_0' + What is put between two level 0 items. Default: '"\n \\item "'. + +'item_1' + Put between two level 1 items. Default: '"\n \\subitem "'. + +'item_2' + put between two level 2 items. Default: '"\n \\subsubitem "'. + +'item_01' + What is put between a level 0 item and a level 1 item. Default: + '"\n \\subitem "'. + +'item_x1' + What is put between a level 0 item and a level 1 item in the case + that the level 0 item doesn't have any page numbers (as in + '\index{aaa|see{bbb}}'). Default: '"\n \\subitem "'. + +'item_12' + What is put between a level 1 item and a level 2 item. Default: + '"\n \\subsubitem "'. + +'item_x2' + What is put between a level 1 item and a level 2 item, if the + level 1 item doesn't have page numbers. Default: '"\n \\subsubitem + "'. + +'delim_0' + Delimiter put between a level 0 key and its first page number. + Default: a comma followed by a blank, '", "'. + +'delim_1' + Delimiter put between a level 1 key and its first page number. + Default: a comma followed by a blank, '", "'. + +'delim_2' + Delimiter between a level 2 key and its first page number. + Default: a comma followed by a blank, '", "'. + +'delim_n' + Delimiter between two page numbers for the same key (at any level). + Default: a comma followed by a blank, '", "'. + +'delim_r' + What is put between the starting and ending page numbers of a + range. Default: '"--"'. + +'line_max' + An integer. Maximum length of an index entry's line in the output, + beyond which the line wraps. Default: '72'. + +'indent_space' + What is inserted at the start of a wrapped line. Default: + '"\t\t"'. + +'indent_length' + A number. The length of the wrapped line indentation. The default + 'indent_space' is two tabs and each tab is eight spaces so the + default here is '16'. + +'page_precedence' + A document may have pages numbered in different ways. For example, + a book may have front matter pages numbered in lowercase roman + while main matter pages are in arabic. This string specifies the + order in which they will appear in the index. The 'makeindex' + command supports five different types of numerals: lowercase roman + 'r', and numeric or arabic 'n', and lowercase alphabetic 'a', and + uppercase roman 'R', and uppercase alphabetic 'A'. Default: + '"rnaRA"'. + + There are a number of other programs that do the job 'makeindex' +does. One is 'xindy', which does internationalization and can process +indexes for documents marked up using LaTeX and a number of other +languages. It is is highly configurable, both in markup terms and in +terms of the collating order of the text. See the documentation on +CTAN. + + +File: latex2e.info, Node: \printindex, Prev: makeindex, Up: Indexes + +25.2.3 '\printindex' +-------------------- + +Synopsis: + + \printindex + + Place the index into the output. + + To get an index you must first include +'\usepackage{makeidx}\makeindex' in the document preamble and compile +the document, then run the system command 'makeindex', and then compile +the document again. *Note Indexes:: for further discussion and an +example of the use of '\printindex'. + + +File: latex2e.info, Node: Glossaries, Prev: Indexes, Up: Front/back matter + +25.3 Glossaries +=============== + +Synopsis: + + \usepackage{glossaries} \makeglossaries + ... + \newglossaryentry{LABEL}{SETTINGS} + ... + \gls{LABEL}. + ... + \printglossaries + + The 'glossaries' package allows you to make glossaries, including +multiple glossaries, as well as lists of acronyms. + + To get the output from this example, compile the document (for +instance with 'pdflatex filename'), then run the command line command +'makeglossaries filename', and then compile the document again. + + \documentclass{...} + \usepackage{glossaries} \makeglossaries + \newglossaryentry{tm}{% + name={Turing machine}, + description={A model of a machine that computes. The model is simple + but can compute anything any existing device can compute. + It is the standard model used in Computer Science.}, + } + \begin{document} + Everything begins with the definition of a \gls{tm}. + ... + \printglossaries + \end{document} + +That gives two things. In the main text it outputs '... definition of a +Turing machine'. In addition, in a separate sectional unit headed +'Glossary' there appears a description list. In boldface it says +'Turing machine' and the rest of the item says in normal type 'A model +of a machine ... Computer Science'. + + The command '\makeglossary' opens the file that will contain the +entry information, 'ROOT-FILE.glo'. Put the '\printglossaries' command +where you want the glossaries to appear in your document. + + The 'glossaries' package is very powerful. For instance, besides the +commands '\newglossaryentry' and '\gls', there are similar commands for +a list of acronyms. See the package documentations on CTAN. + +* Menu: + +* \newglossaryentry:: Declare the content of a glossary entry. +* \gls:: Give a page reference for a glossary entry. + + +File: latex2e.info, Node: \newglossaryentry, Next: \gls, Up: Glossaries + +25.3.1 '\newglossaryentry' +-------------------------- + +Synopsis, one of: + + \newglossaryentry{LABEL} + { + name={NAME}, + description={DESCRIPTION}, + OTHER OPTIONS, ... + } + + or + + \longnewglossaryentry{LABEL} + { + name={NAME}, + OTHER OPTIONS ..., + } + {DESCRIPTION} + + Declare a new entry for a glossary. The LABEL must be unique for the +document. The settings associated with the label are pairs: +'KEY=VALUE'. + + This puts the blackboard bold symbol for the real numbers U+211D in +the glossary. + + \newglossaryentry{R} + { + name={\ensuremath{\mathbb{R}}}, + description={the real numbers}, + } + + Use the second command form if the DESCRIPTION spans more than one +paragraph. + + For a full list of KEYs see the package documentation on CTAN but +here are a few. + +'name' + (Required.) The word, phrase, or symbol that you are defining. + +'description' + (Required.) The description that will appear in the glossary. If + this has more than one paragraph then you must use the second + command form given in the synopsis. + +'plural' + The plural form of NAME. Refer to the plural form using '\glspl' + or '\Glspl' (*note \gls::). + +'sort' + How to place this entry in the list of entries that the glossary + holds. + +'symbol' + A symbol, such as a mathematical symbol, besides the name. + + +File: latex2e.info, Node: \gls, Prev: \newglossaryentry, Up: Glossaries + +25.3.2 '\gls' +------------- + +Synopsis, one of: + + \gls{LABEL} + \glspl{LABEL} + \Gls{LABEL} + \Glspl{LABEL} + + Refer to a glossary entry. The entries are declared with +'\newglossaryentry' (*note \newglossaryentry::). + + This + + \newglossaryentry{N}{% + name={the natural numbers}, + description={The numbers $0$, $1$, $2$, $\ldots$\@}, + symbol={\ensuremath{\mathbb{N}}}, + } + ... + Consider \gls{N}. + +gives the output 'Consider the natural numbers'. + + The second command form '\glspl{LABEL}' produces the plural of NAME +(by default it tries adding an 's'). The third form capitalizes the +first letter of NAME, as does the fourth form, which also takes the +plural. File: latex2e.info, Node: Letters, Next: Terminal input/output, Prev: Front/back matter, Up: Top @@ -10178,7 +14155,7 @@ File: latex2e.info, Node: Letters, Next: Terminal input/output, Prev: Front/b Synopsis: \documentclass{letter} - \address{SENDER ADDRESS} + \address{SENDERS ADDRESS} % return address \signature{SENDER NAME} \begin{document} \begin{letter}{RECIPIENT ADDRESS} @@ -10186,18 +14163,17 @@ Synopsis: LETTER BODY \closing{CLOSING TEXT} \end{letter} - ... more letters ... + ... \end{document} Produce one or more letters. Each letter is in a separate 'letter' environment, whose argument RECIPIENT ADDRESS often contains multiple lines separated with a double -backslash ('\\'). For example, you might have: +backslash, ('\\'). For example, you might have: - \begin{letter}{Mr. Joe Smith \\ - 2345 Princess St. \\ - Edinburgh, EH1 1AA} + \begin{letter}{Ninon de l'Enclos \\ + l'h\^otel Sagonne} ... \end{letter} @@ -10209,7 +14185,7 @@ whether there is one or more, so these are best put in the preamble. As with the recipient address, often SENDER ADDRESS contains multiple lines separated by a double backslash ('\\'). LaTeX will put the SENDER NAME under the closing, after a vertical space for the traditional -hand-written signature; it also can contain multiple lines. +hand-written signature. Each 'letter' environment body begins with a required '\opening' command such as '\opening{Dear Madam or Sir:}'. The LETTER BODY text is @@ -10223,13 +14199,13 @@ is receiving a copy of the letter with a command like '\cc{the Boss \\ the Boss's Boss}'. There's a similar '\encl' command for a list of enclosures. And, you can add a postscript with '\ps'. - LaTeX's default is to indent the signature and the '\closing' above -it by a length of '\longindentation'. By default this is -'0.5\textwidth'. To make them flush left, put -'\setlength{\longindentation}{0em}' in your preamble. + LaTeX's default is to indent the sender name and the closing above it +by a length of '\longindentation'. By default this is '0.5\textwidth'. +To make them flush left, put '\setlength{\longindentation}{0em}' in your +preamble. To set a fixed date use something like -'\renewcommand{\today}{2015-Oct-12}'. If put in your preamble then it +'\renewcommand{\today}{1958-Oct-12}'. If put in your preamble then it will apply to all the letters. This example shows only one 'letter' environment. The three lines @@ -10275,19 +14251,18 @@ Synopsis: \address{SENDERS ADDRESS} - Specifies the return address as it appears on the letter and on the + Specify the return address, as it appears on the letter and on the envelope. Separate multiple lines in SENDERS ADDRESS with a double -backslash '\\'. +backslash, '\\'. Because it can apply to multiple letters this declaration is often put in the preamble. However, it can go anywhere, including inside an individual 'letter' environment. - This command is optional: without the '\address' declaration the -letter is formatted with some blank space on top, for copying onto -pre-printed letterhead paper. (*Note Overview::, for details on your -local implementation.) With the '\address' declaration, it is formatted -as a personal letter. + This command is optional: if you do not use it then the letter is +formatted with some blank space on top, for copying onto pre-printed +letterhead paper. If you do use the '\address' declaration then it is +formatted as a personal letter. Here is an example. @@ -10302,13 +14277,13 @@ File: latex2e.info, Node: \cc, Next: \closing, Prev: \address, Up: Letters Synopsis: - \cc{FIRST NAME \\ + \cc{NAME0 \\ ... } Produce a list of names to which copies of the letter were sent. This command is optional. If it appears then typically it comes after -'\closing'. Separate multiple lines with a double backslash '\\', as -in: +'\closing'. Put the names on different lines by separating them with a +double backslash, '\\', as in: \cc{President \\ Vice President} @@ -10323,8 +14298,9 @@ Synopsis: \closing{TEXT} - Usually at the end of a letter, above the handwritten signature, -there is a '\closing' (although this command is optional). For example, + Produce the letter's closing. This is optional, but usual. It +appears at the end of a letter, above a handwritten signature. For +example: \closing{Regards,} @@ -10341,10 +14317,10 @@ Synopsis: Produce a list of things included with the letter. This command is optional; when it is used, it typically is put after '\closing'. -Separate multiple lines with a double backslash '\\'. +Separate multiple lines with a double backslash, '\\'. \encl{License \\ - Passport } + Passport} File: latex2e.info, Node: \location, Next: \makelabels, Prev: \encl, Up: Letters @@ -10356,8 +14332,8 @@ Synopsis: \location{TEXT} - The TEXT appears centered at the bottom of the each page. It only -appears if the page style is 'firstpage'. + The TEXT appears centered at the bottom of the page. It only appears +if the page style is 'firstpage'. File: latex2e.info, Node: \makelabels, Next: \name, Prev: \location, Up: Letters @@ -10367,22 +14343,57 @@ File: latex2e.info, Node: \makelabels, Next: \name, Prev: \location, Up: Let Synopsis: - \makelabels + \makelabels % in preamble - Create a sheet of address labels from the recipient addresses, one -for each letter. This sheet will be output before the letters, with the -idea that you can copy it to a sheet of peel-off labels. This command -goes in the preamble. + Optional, for a document that contains 'letter' environments. If you +just put '\makelabels' in the preamble then at the end of the document +you will get a sheet with labels for all the recipients, one for each +letter environment, that you can copy to a sheet of peel-off address +labels. Customize the labels by redefining the commands '\startlabels', -'\mlabel', and '\returnaddress' in the preamble. The command -'\startlabels' sets the width, height, number of columns, etc., of the -page onto which the labels are printed. The command '\mlabel{SENDER -ADDRESS}{RECIPIENT ADDRESS}' produces the two labels (or one, if you -choose to ignore the SENDER ADDRESS). The SENDER ADDRESS is the value -returned by the macro '\returnaddress' while RECIPIENT ADDRESS is the -value passed in the argument to the 'letter' environment. By default -'\mlabel' ignores the first argument, the SENDER ADDRESS. +'\mlabel', and '\returnaddress' (and perhaps '\name') in the preamble. +The command '\startlabels' sets the width, height, number of columns, +etc., of the page onto which the labels are printed. The command +'\mlabel{RETURN ADDRESS}{RECIPIENT ADDRESS}' produces the two labels (or +one, if you choose to ignore the RETURN ADDRESS) for each letter +environment. The first argument, RETURN ADDRESS, is the value returned +by the macro '\returnaddress'. The second argument, RECIPIENT ADDRESS, +is the value passed in the argument to the 'letter' environment. By +default '\mlabel' ignores the first argument, the RETURN ADDRESS, +causing the default behavior described in the prior paragraph. + + This illustrates customization. Its output includes a page with two +columns having two labels each. + + \documentclass{letter} + \renewcommand*{\returnaddress}{Fred McGuilicuddy \\ + Oshkosh, Mineola 12305} + \newcommand*\originalMlabel{} + \let\originalMlabel\mlabel + \def\mlabel#1#2{\originalMlabel{}{#1}\originalMlabel{}{#2}} + \makelabels + ... + \begin{document} + \begin{letter}{A Einstein \\ + 112 Mercer Street \\ + Princeton, New Jersey, USA 08540} + ... + \end{letter} + \begin{letter}{K G\"odel \\ + 145 Linden Lane \\ + Princeton, New Jersey, USA 08540} + ... + \end{letter} + \end{document} + +The first column contains the return address twice. The second column +contains the address for each recipient. + + The package 'envlab' makes formatting the labels easier, with +standard sizes already provided. The preamble lines +'\usepackage[personalenvelope]{envlab}' and '\makelabels' are all that +you need to print envelopes. File: latex2e.info, Node: \name, Next: \opening, Prev: \makelabels, Up: Letters @@ -10394,8 +14405,8 @@ Synopsis: \name{NAME} - Sender's name, used for printing on the envelope together with the -return address. + Optional. Sender's name, used for printing on the envelope together +with the return address. File: latex2e.info, Node: \opening, Next: \ps, Prev: \name, Up: Letters @@ -10405,11 +14416,10 @@ File: latex2e.info, Node: \opening, Next: \ps, Prev: \name, Up: Letters Synopsis: - \opening{TEXT} + \opening{SALUTATION} - This command is required. It starts a letter, following the -'\begin{letter}{...}'. The mandatory argument TEXT is the text that -starts your letter. For instance: + Required. Follows the '\begin{letter}{...}'. The argument +SALUTATION is mandatory. For instance: \opening{Dear John:} @@ -10442,23 +14452,29 @@ Synopsis: The sender's name. This command is optional, although its inclusion is usual. - The argument text appears at the end of the letter, after the closing -and after a vertical space for the traditional hand-written signature. -Separate multiple lines with a double backslash '\\'. For example: + The argument text appears at the end of the letter, after the +closing. LaTeX leaves some vertical space for a handwritten signature. +Separate multiple lines with a double backslash, '\\'. For example: \signature{J Fred Muggs \\ White House} LaTeX's default for the vertical space from the '\closing' text down -to the '\signature' text is '6\medskipamount', which is six times 0.7em. +to the '\signature' text is '6\medskipamount', which is six times +'\medskipamount' (where '\medskipamount' is equal to a '\parskip', which +in turn is defined by default here to 0.7em). This command is usually in the preamble, to apply to all the letters in the document. To have it apply to one letter only, put it inside a 'letter' environment and before the '\closing'. - You can include a graphic in the signature, for instance with -'\signature{\vspace{-6\medskipamount}\includegraphics{sig.png}\\ My -name}' (this requires writing '\usepackage{graphicx}' in the preamble). + You can include a graphic in the signature as here. + + \signature{\vspace{-6\medskipamount}\includegraphics{sig.png}\\ + My name} + +For this you must put '\usepackage{graphicx}' in the preamble (*note +Graphics::). File: latex2e.info, Node: \telephone, Prev: \signature, Up: Letters @@ -10489,38 +14505,86 @@ File: latex2e.info, Node: Terminal input/output, Next: Command line, Prev: Le File: latex2e.info, Node: \typein, Next: \typeout, Up: Terminal input/output -27.1 '\typein[CMD]{MSG}' -======================== +27.1 '\typein' +============== -Synopsis: +Synopsis, one of: + + \typein{PROMPT-MSG} + \typein[CMD]{PROMPT-MSG} + + Print PROMPT-MSG on the terminal and cause LaTeX to stop and wait for +you to type a line of input. This line of input ends when you hit the +return key. + + For example, this + + As long as I live I shall never forget \typein{Enter student name:} + +coupled with this command line interaction + + Enter student name: + + \@typein=Aphra Behn + +gives the output '... never forget Aphra Behn'. + + The first command version, '\typein{PROMPT-MSG}', causes the input +you typed to be processed as if it had been included in the input file +in place of the '\typein' command. + + In the second command version the optional argument 'CMD' argument +must be a command name -- it must begin with a backslash, \. This +command name is then defined or redefined to be the input that you +typed. For example, this - \typein[\CMD]{MSG} + \typein[\student]{Enter student name:} + \typeout{Recommendation for \student .} - '\typein' prints MSG on the terminal and causes LaTeX to stop and -wait for you to type a line of input, ending with return. If the -optional '\CMD' argument is omitted, the typed input is processed as if -it had been included in the input file in place of the '\typein' -command. If the '\CMD' argument is present, it must be a command name. -This command name is then defined or redefined to be the typed input. +gives this output on the command line, + + Enter student name: + + \student=John Dee + Recommendation for John Dee. + +where the user has entered 'John Dee.' File: latex2e.info, Node: \typeout, Prev: \typein, Up: Terminal input/output -27.2 '\typeout{MSG}' -==================== +27.2 '\typeout' +=============== Synopsis: \typeout{MSG} - Prints 'msg' on the terminal and in the 'log' file. Commands in -'msg' that are defined with '\newcommand' or '\renewcommand' (among -others) are replaced by their definitions before being printed. + Print 'msg' on the terminal and in the 'log' file. + + This + + \newcommand{\student}{John Dee} + \typeout{Recommendation for \student .} + +outputs 'Recommendation for John Dee'. Like what happens here with +'\student', commands that are defined with '\newcommand' or +'\renewcommand' (among others) are replaced by their definitions before +being printed. LaTeX's usual rules for treating multiple spaces as a single space -and ignoring spaces after a command name apply to 'msg'. A '\space' -command in 'msg' causes a single space to be printed, independent of -surrounding spaces. A '^^J' in 'msg' prints a newline. +and ignoring spaces after a command name apply to 'msg'. As above, use +the command '\space' to get a single space, independent of surrounding +spaces. Use '^^J' to get a newline. Get a percent character with +'\csname @percentchar\endcsname'. + + This command can be useful for simple debugging, as here: + + \newlength{\jhlength} + \setlength{\jhlength}{5pt} + \typeout{The length is \the\jhlength.} + +produces on the command line 'The length is 5.0pt'. File: latex2e.info, Node: Command line, Next: Document templates, Prev: Terminal input/output, Up: Top @@ -10528,26 +14592,228 @@ File: latex2e.info, Node: Command line, Next: Document templates, Prev: Termi 28 Command line *************** -The input file specification indicates the file to be formatted; TeX -uses '.tex' as a default file extension. If you omit the input file -entirely, TeX accepts input from the terminal. You can also specify -arbitrary LaTeX input by starting with a backslash. For example, this -processes 'foo.tex' without pausing after every error: +Synopsis (from a terminal command line): - latex '\nonstopmode\input foo.tex' + pdflatex OPTIONS ARGUMENT - With many, but not all, implementations, command-line options can -also be specified in the usual Unix way, starting with '-' or '--'. For -a list of those options, try 'latex --help'. + Run LaTeX on ARGUMENT. In place of 'pdflatex' you can also use +'xelatex', or 'lualatex', or 'dviluatex', or 'latex'. - If LaTeX stops in the middle of the document and gives you a '*' -prompt, it is waiting for input. You can type '\stop' (and return) and -it will prematurely end the document. + For example, this will run LaTeX on the file 'thesis.tex', creating +the output 'thesis.pdf'. - *Note TeX engines::, for other system commands invoking LaTeX. + pdflatex thesis + +Note that '.tex' is the default file extension. + + pdfTeX is a development of the original TeX program, as are XeTeX and +LuaTeX (*note TeX engines::). They are completely backward compatible. +But the original program had a custom output format, DVI, while the +newer ones can output directly to PDF. This allows them to take +advantage of the extra features in PDF such as hyperlinks, support for +modern image formats such as JPG and PNG, and ubiquitous viewing +programs. In short, if you run 'pdflatex' or 'xelatex' or 'lualatex' +then you will by default get PDF and have access to all its modern +features. If you run 'latex', or 'dvilualatex', then you will get DVI. +The description here assumes pdfLaTeX. + + *Note Command line options::, for a selection of the most useful +command line options. As to ARGUMENT, the usual case is that it does +not begin with a backslash, so the system takes it to be the name of a +file and it compiles that file. If ARGUMENT begins with a backslash +then the system will interpret it as a line of LaTeX input, which can be +used for special effects (*note Command line input::). + + If you gave no arguments or options then 'pdflatex' prompts for input +from the terminal. You can escape from this by entering '<control>-D'. + + If LaTeX finds an error in your document then by default it stops and +asks you about it. *Note Recovering from errors:: for an outline of +what to do. + +* Menu: + +* Command line options:: Read text from the terminal. +* Command line input:: Write text to the terminal. +* Recovering from errors:: When something goes wrong. -File: latex2e.info, Node: Document templates, Next: Concept Index, Prev: Command line, Up: Top +File: latex2e.info, Node: Command line options, Next: Command line input, Up: Command line + +28.1 Command line options +========================= + +These are the command-line options relevant to ordinary document +authoring. For a full list, try running 'latex --help' from the command +line. + + With many implementations you can specify command line options by +prefixing them with '-' or '--'. This is the case for both TeX Live +(and MacTeX) and MiKTeX. We will use both conventions interchangeably. + +'-version' + Show the current version, like 'pdfTeX 3.14159265-2.6-1.40.16 (TeX + Live 2015/Debian)' along with a small amount of additional + information, and exit. + +'-help' + Give a brief usage message that is useful as a prompt and exit. + +'-interaction=MODE' + TeX compiles a document in one of four interaction modes: + 'batchmode', 'nonstopmode', 'scrollmode', 'errorstopmode'. In + "errorstop mode" (the default), TeX stops at each error and asks + for user intervention. In "batch mode" it prints nothing on the + terminal, errors are scrolled as if the user hit '<return>' at + every error, and missing files cause the job to abort. In "nonstop + mode", diagnostic message appear on the terminal but as in batch + mode there is no user interaction. In "scroll mode", TeX only + stops for missing files or keyboard input. + + For instance, starting LaTeX with this command line + + pdflatex -interaction=batchmode FILENAME + + eliminates most terminal output. + +'-jobname=STRING' + Set the value of TeX's 'jobname' to the string. The log file and + output file will then be named 'STRING.log' and 'STRING.pdf'. + + When you run 'pdflatex OPTIONS ARGUMENT', if ARGUMENT does not + start with a backslash then TeX considers it the name of a file to + input. Otherwise it waits for the first '\input' instruction and + the name of the input file will be the job name. This is used to + name the log file the output file. This option overrides that + process and directly specifies the name. *Note Command line + input:: for an example of its use. + +'-output-directory=DIRECTORY' + Write files in the directory DIRECTORY. It must already exist. + +'shell-escape' +'no-shell-escape' +'enable-write18' +'disable-write18' + Enable or disable '\write18{SHELL COMMAND}'. The first two options + are for with TeX Live or MacTeX while the second two are for + MiKTeX. + + Sometimes you want to run external system commands from inside a + LaTeX file. For instance the package 'sagetex' allows you to have + the mathematics software system Sage do calculations or draw graphs + and then incorporate that output in your document. For this TeX + provides the '\write18' command. + + But with this functionality enabled, security issues could happen + if you compiled a LaTeX file from the Internet. By default + '\write18' is disabled. (More precisely, by default TeX Live, + MacTeX, and MiKTeX only allow the execution of a limited number of + TeX-related programs, which they distribute.) + + If you invoke LaTeX with the option 'no-shell-escape', and in your + document you call '\write18{ls -l}', then you do not get an error + but the log file says 'runsystem(ls -l)...disabled'. + +'-halt-on-error' + Stop processing at the first error. + +'-file-line-error' +'-no-file-line-error' + Enable or disable 'FILENAME:LINENO:ERROR'-style error messages. + These are only available with TeX Live or MacTeX. + + +File: latex2e.info, Node: Command line input, Next: Recovering from errors, Prev: Command line options, Up: Command line + +28.2 Command line input +======================= + +As part of the command line invocation 'pdflatex OPTIONS ARGUMENT' you +can specify arbitrary LaTeX input by starting ARGUMENT with a backslash. +This allows you to do some special effects. + + For example, this file (which uses the 'hyperref' package for +hyperlinks) can produce two kinds of output, one for paper and one for a +PDF. + + \ifdefined\paperversion % in preamble + \newcommand{\urlcolor}{black} + \else + \newcommand{\urlcolor}{blue} + \fi + \usepackage[colorlinks=true,urlcolor=\urlcolor]{hyperref} + ... + \href{https://www.ctan.org}{CTAN} % in body + ... + +Compiling this document 'book.tex' with the command line 'pdflatex test' +will give the 'CTAN' link in blue. But compiling it with 'pdflatex +"\def\paperversion{}\input test.tex"' has the link in black. (Note the +use of double quotes to prevent interpretation of the symbols by the +command line shell; your system may do this differently.) + + In a similar way, from the single file 'main.tex' you can compile two +different versions. + + pdflatex -jobname=students "\def\student{}\input{main}" + pdflatex -jobname=teachers "\def\teachers{}\input{main}" + +The 'jobname' option is there because otherwise both files would be +called 'main.pdf' and the second would overwrite the first. + + A final example. This loads the package 'graphicx' with the option +'draft' + + pdflatex -jobname=aa "\RequirePackage[draft]{graphicx}\input{aa.tex}" + +so the graphic files are read for their size information but not +incorporated into the PDF. (The 'jobname' option is needed because +otherwise the output file would be 'graphicx.pdf', as '\RequirePackage' +does an '\input' of its own.) + + +File: latex2e.info, Node: Recovering from errors, Prev: Command line input, Up: Command line + +28.3 Recovering from errors +=========================== + +If LaTeX finds an error in your document then it gives you an error +message and prompts you with a question mark, '?'. For instance, +running LaTeX on this file + + \newcommand{\NP}{\ensuremath{\textbf{NP}}} + The \PN{} problem is a million dollar one. + +causes it show this, and wait for input. + + ! Undefined control sequence. + l.5 The \PN + {} problem is a million dollar one. + ? + +The simplest thing is to enter 'x' and '<return>' and fix the typo. You +could instead enter '?' and '<return>' to see other options. + + There are two other error scenarios. The first is that you forgot to +include the '\end{document}' or misspelled it. In this case LaTeX gives +you a '*' prompt. You can get back to the command line by typing +'\stop' and '<return>'. + + The last scenario is that you mistyped the file name. For instance, +instead of 'pdflatex test' you might type 'pdflatex tste'. + + ! I can't find file `tste'. + <*> tste + + (Press Enter to retry, or Control-D to exit) + Please type another input file name: + +The simplest thing is to enter '<Contol>' and 'd' (holding them down at +the same time), and just fix the command line. + + +File: latex2e.info, Node: Document templates, Next: Index, Prev: Command line, Up: Top Appendix A Document templates ***************************** @@ -10559,11 +14825,13 @@ be useful. Additional template resources are listed at * Menu: * beamer template:: +* article template:: * book template:: +* Larger book template:: * tugboat template:: -File: latex2e.info, Node: beamer template, Next: book template, Up: Document templates +File: latex2e.info, Node: beamer template, Next: article template, Up: Document templates A.1 'beamer' template ===================== @@ -10597,11 +14865,37 @@ features, but here is a basic template: <http://robjhyndman.com/hyndsight/beamer/>. -File: latex2e.info, Node: book template, Next: tugboat template, Prev: beamer template, Up: Document templates +File: latex2e.info, Node: article template, Next: book template, Prev: beamer template, Up: Document templates + +A.2 'article' template +====================== + +\documentclass{article} +\title{Article Class Template} +\author{Alex Author} + +\begin{document} +\maketitle + +\section{First section} +Some text. + +\subsection{First section, first subsection} +Additional text. + +\section{Second section} +Some more text. +\end{document} + + +File: latex2e.info, Node: book template, Next: Larger book template, Prev: article template, Up: Document templates -A.2 'book' template +A.3 'book' template =================== +This is a straightforward template for a book. See *Note Larger book +template:: for a more elaborate one. + \documentclass{book} \title{Book Class Template} \author{Alex Author} @@ -10620,9 +14914,62 @@ The end. \end{document} -File: latex2e.info, Node: tugboat template, Prev: book template, Up: Document templates +File: latex2e.info, Node: Larger book template, Next: tugboat template, Prev: book template, Up: Document templates + +A.4 Larger 'book' template +========================== + +This is a more elaborate template for a book. It has '\frontmatter', +'\mainmatter', and '\backmatter' to control the typography of the three +main areas of a book (*note \frontmatter & \mainmatter & \backmatter::). +The book has a bibliography and an index. + + Notable is that it uses '\include' and '\includeonly' (*note +Splitting the input::). While you are working on a chapter you can +comment out all the other chapter entries from the argument to +'\includeonly'. That will speed up compilation without losing any +information such as cross-references. (Material that does not need to +come on a new page is brought in with '\input' instead of '\include'. +You don't get the cross-reference benefit this way.) + +\documentclass[titlepage]{book} +\usepackage{makeidx}\makeindex + +\title{Book Class Template} +\author{Alex Author} + +\includeonly{% + frontcover, + preface, + chap1, + ... + } +\begin{document} +\frontmatter +\include{frontcover} + % maybe comment out while drafting: +\maketitle \input{dedication} \input{copyright} +\tableofcontents +\include{preface} +\mainmatter +\include{chap1} +... +\appendix +\include{appena} +... +\backmatter +\bibliographystyle{apalike} +\addcontentsline{toc}{chapter}{Bibliography} +\bibliography +\addcontentsline{toc}{chapter}{Index} +\printindex +\include{backcover} +\end{document} + + +File: latex2e.info, Node: tugboat template, Prev: Larger book template, Up: Document templates -A.3 'tugboat' template +A.5 'tugboat' template ====================== 'TUGboat' is the journal of the TeX Users Group, @@ -10709,958 +15056,118 @@ Email \verb|tugboat@tug.org| if problems or questions. \end{document} -File: latex2e.info, Node: Concept Index, Next: Command Index, Prev: Document templates, Up: Top +File: latex2e.info, Node: Index, Prev: Document templates, Up: Top -Concept Index -************* +Index +***** * Menu: -* * prompt: Command line. (line 18) +* &: tabular. (line 32) +* * prompt: Recovering from errors. + (line 23) * *-form of environment commands: \newenvironment & \renewenvironment. - (line 14) + (line 27) * *-form of sectioning commands: Sectioning. (line 31) * *-form, defining new commands: \newcommand & \renewcommand. - (line 14) -* .glo file: Glossaries. (line 8) -* .idx file: Indexes. (line 9) -* .ind file: Indexes. (line 23) -* 'see' and 'see also' index entries: Indexes. (line 16) -* abstracts: abstract. (line 6) -* accents: Accents. (line 6) -* accents, mathematical: Math accents. (line 6) -* accessing any character of a font: Symbols by font position. - (line 6) -* acute accent: Accents. (line 20) -* acute accent, math: Math accents. (line 11) -* additional packages, loading: Additional packages. (line 6) -* ae ligature: Additional Latin letters. - (line 16) -* algorithm2e package: tabbing. (line 144) -* align environment, from amsmath: eqnarray. (line 6) -* aligning equations: eqnarray. (line 6) -* alignment via tabbing: tabbing. (line 6) -* amsmath package: array. (line 40) -* amsmath package <1>: displaymath. (line 22) -* amsmath package, replacing eqnarray: eqnarray. (line 6) -* appendix, creating: Sectioning. (line 37) -* aring: Additional Latin letters. - (line 12) -* arrays, math: array. (line 6) -* arrow, left, in text: Text symbols. (line 131) -* arrow, right, in text: Text symbols. (line 166) -* ascender height: Text symbols. (line 99) -* ASCII circumflex, in text: Text symbols. (line 64) -* ASCII tilde, in text: Text symbols. (line 67) -* asterisk, centered, in text: Text symbols. (line 70) -* at clause, in font definitions: \newfont. (line 23) -* author, for titlepage: \maketitle. (line 12) -* auxiliary file: Output files. (line 33) -* babel package: thebibliography. (line 29) -* babel package <1>: Accents. (line 6) -* background, colored: Colored pages. (line 6) -* backslash, in text: Text symbols. (line 73) -* bar, double vertical, in text: Text symbols. (line 79) -* bar, vertical, in text: Text symbols. (line 76) -* bar-over accent: Accents. (line 29) -* bar-over accent, math: Math accents. (line 14) -* bar-under accent: Accents. (line 46) -* basics of LaTeX: Overview. (line 6) -* beamer template and class: beamer template. (line 6) -* beginning of document hook: \AtBeginDocument. (line 6) -* bibliography format, open: Document class options. - (line 67) -* bibliography, creating (automatically): Using BibTeX. (line 6) -* bibliography, creating (manually): thebibliography. (line 6) -* bibTeX, using: Using BibTeX. (line 6) -* big circle symbols, in text: Text symbols. (line 82) -* Big point: Units of length. (line 20) -* black boxes, omitting: Document class options. - (line 53) -* bold font: Font styles. (line 71) -* bold math: Font styles. (line 130) -* bold typewriter, avoiding: description. (line 34) -* box, allocating new: \newsavebox. (line 6) -* box, colored: Colored boxes. (line 6) -* boxes: Boxes. (line 6) -* brace, left, in text: Text symbols. (line 85) -* brace, right, in text: Text symbols. (line 88) -* breaking lines: Line breaking. (line 6) -* breaking pages: Page breaking. (line 6) -* breve accent: Accents. (line 86) -* breve accent, math: Math accents. (line 17) -* bug reporting: About this document. (line 21) -* bullet symbol: Math symbols. (line 114) -* bullet, in text: Text symbols. (line 91) -* bulleted lists: itemize. (line 6) -* calligraphic letters for math: Font styles. (line 74) -* cap height: Text symbols. (line 99) -* caron accent: Accents. (line 97) -* catcode: \makeatletter and \makeatother. - (line 18) -* category code, character: \makeatletter and \makeatother. - (line 18) -* cc list, in letters: \cc. (line 6) -* cedilla accent: Accents. (line 51) -* centered asterisk, in text: Text symbols. (line 70) -* centered equations: Document class options. - (line 57) -* centered period, in text: Text symbols. (line 138) -* centering text, declaration for: \centering. (line 6) -* centering text, environment for: center. (line 6) -* Centimeter: Units of length. (line 24) -* character category code: \makeatletter and \makeatother. - (line 18) -* characters, accented: Accents. (line 6) -* characters, case: Upper and lower case. - (line 6) -* characters, non-English: Additional Latin letters. - (line 6) -* characters, reserved: Reserved characters. (line 6) -* characters, special: Reserved characters. (line 6) -* check accent: Accents. (line 97) -* check accent, math: Math accents. (line 20) -* Cicero: Units of length. (line 33) -* circle symbol, big, in text: Text symbols. (line 82) -* circled letter, in text: Text symbols. (line 94) -* circumflex accent: Accents. (line 33) -* circumflex accent, math: Math accents. (line 32) -* circumflex, ASCII, in text: Text symbols. (line 64) -* citation key: \bibitem. (line 12) -* class and package commands: Class and package commands. - (line 6) -* class and package difference: Class and package construction. - (line 15) -* class and package structure: Class and package structure. - (line 6) -* class file example: Class and package structure. - (line 36) -* class file layout: Class and package structure. - (line 6) -* class options: Document class options. - (line 6) -* class options <1>: Class and package structure. - (line 6) -* class options <2>: Class and package commands. - (line 66) -* classes of documents: Document classes. (line 6) -* closing letters: \closing. (line 6) -* closing quote: Text symbols. (line 55) -* code, typesetting: verbatim. (line 6) -* color: Color. (line 6) -* color <1>: Define colors. (line 6) -* color <2>: Colored text. (line 6) -* color <3>: Colored boxes. (line 6) -* color <4>: Colored pages. (line 6) -* color models: Color models. (line 6) -* color package commands: Commands for color. (line 6) -* color package options: Color package options. - (line 6) -* color, define: Define colors. (line 6) -* colored boxes: Colored boxes. (line 6) -* colored page: Colored pages. (line 6) -* colored text: Colored text. (line 6) -* command line: Command line. (line 6) -* command syntax: LaTeX command syntax. - (line 6) -* commands, class and package: Class and package commands. - (line 6) -* commands, defining new ones: \newcommand & \renewcommand. - (line 6) -* commands, defining new ones <1>: \providecommand. (line 6) -* commands, document class: Class and package construction. - (line 6) -* commands, graphics package: Commands for graphics. - (line 6) -* commands, ignore spaces: \ignorespaces & \ignorespacesafterend. - (line 6) -* commands, redefining: \newcommand & \renewcommand. - (line 6) -* commands, star-variants: \@ifstar. (line 6) -* composite word mark, in text: Text symbols. (line 99) -* computer programs, typesetting: verbatim. (line 6) -* configuration, graphics package: Graphics package configuration. - (line 6) -* contents file: Output files. (line 43) -* copyright symbol: Text symbols. (line 12) -* counters, a list of: Counters. (line 6) -* counters, defining new: \newcounter. (line 6) -* counters, getting value of: \value. (line 6) -* counters, printing: \alph \Alph \arabic \roman \Roman \fnsymbol. - (line 6) -* counters, setting: \setcounter. (line 6) -* creating pictures: picture. (line 6) -* creating tables: table. (line 6) -* credit footnote: \maketitle. (line 22) -* cross references: Cross references. (line 6) -* cross references, resolving: Output files. (line 33) -* cross referencing with page number: \pageref. (line 6) -* cross referencing, symbolic: \ref. (line 6) -* currency, dollar: Text symbols. (line 110) -* currency, euro: Text symbols. (line 119) -* dagger, double, in text: Text symbols. (line 107) -* dagger, in text: Text symbols. (line 15) -* dagger, in text <1>: Text symbols. (line 104) -* date, for titlepage: \maketitle. (line 18) -* date, today's: \today. (line 6) -* datetime package: \today. (line 22) -* define color: Define colors. (line 6) -* defining a new command: \newcommand & \renewcommand. - (line 6) -* defining a new command <1>: \providecommand. (line 6) -* defining new environments: \newenvironment & \renewenvironment. - (line 6) -* defining new fonts: \newfont. (line 6) -* defining new theorems: \newtheorem. (line 6) -* definitions: Definitions. (line 6) -* description lists, creating: description. (line 6) -* design size, in font definitions: \newfont. (line 23) -* Didot point: Units of length. (line 30) -* dieresis accent: Accents. (line 16) -* difference between class and package: Class and package construction. - (line 15) -* discretionary hyphenation: \discretionary. (line 6) -* discretionary multiplication: Math miscellany. (line 7) -* displaying quoted text with paragraph indentation: quotation and quote. - (line 6) -* displaying quoted text without paragraph indentation: quotation and quote. - (line 6) -* document class commands: Class and package construction. - (line 6) -* document class options: Document class options. - (line 6) -* document class, defined: Starting and ending. (line 14) -* document classes: Document classes. (line 6) -* document templates: Document templates. (line 6) -* dollar sign: Text symbols. (line 110) -* dot accent: Accents. (line 25) -* dot over accent, math: Math accents. (line 26) -* dot-over accent: Accents. (line 25) -* dot-under accent: Accents. (line 55) -* dotless i: Accents. (line 63) -* dotless i, math: Math accents. (line 35) -* dotless j: Accents. (line 66) -* dotless j, math: Math accents. (line 38) -* double angle quotation marks: Text symbols. (line 30) -* double dagger, in text: Text symbols. (line 18) -* double dagger, in text <1>: Text symbols. (line 107) -* double dot accent, math: Math accents. (line 23) -* double guillemets: Text symbols. (line 30) -* double left quote: Text symbols. (line 144) -* double low-9 quotation mark: Text symbols. (line 52) -* double quote, straight base: Text symbols. (line 160) -* double right quote: Text symbols. (line 147) -* double spacing: Low-level font commands. - (line 118) -* double vertical bar, in text: Text symbols. (line 79) -* e-dash: Text symbols. (line 116) -* e-TeX: TeX engines. (line 12) -* ellipsis: Text symbols. (line 36) -* em: Units of length. (line 38) -* em-dash: Text symbols. (line 113) -* em-dash, three-quarters: Text symbols. (line 169) -* em-dash, two-thirds: Text symbols. (line 175) -* emphasis: Font styles. (line 59) -* enclosure list: \encl. (line 6) -* end of document hook: \AtEndDocument. (line 6) -* ending and starting: Starting and ending. (line 6) -* engines, TeX: TeX engines. (line 6) -* enlarge current page: \enlargethispage. (line 6) -* enumitem package: list. (line 24) -* environment: Starting and ending. (line 22) -* environment, theorem-like: \newtheorem. (line 6) -* environments: Environments. (line 6) -* environments, defining: \newenvironment & \renewenvironment. - (line 6) -* EPS files: Graphics package configuration. - (line 6) -* EPS files <1>: \includegraphics. (line 6) -* equation number, cross referencing: \ref. (line 6) -* equation numbers, left vs. right: Document class options. - (line 63) -* equation numbers, omitting: eqnarray. (line 41) -* equations, aligning: eqnarray. (line 6) -* equations, environment for: equation. (line 6) -* equations, flush left vs. centered: Document class options. - (line 57) -* es-zet German letter: Additional Latin letters. - (line 52) -* eth, Icelandic letter: Additional Latin letters. - (line 20) -* etoolbox package: Class and package commands. - (line 110) -* euro symbol: Text symbols. (line 119) -* ex: Units of length. (line 38) -* exclamation point, upside-down: Text symbols. (line 122) -* exponent: Subscripts & superscripts. - (line 6) -* extended Latin: Additional Latin letters. - (line 6) -* external files, writing: filecontents. (line 6) -* families, of fonts: Low-level font commands. - (line 21) -* fancyvrb package: tabbing. (line 144) -* feminine ordinal symbol: Text symbols. (line 135) -* figure number, cross referencing: \ref. (line 6) -* figures, footnotes in: minipage. (line 21) -* figures, inserting: figure. (line 6) -* file, root: Splitting the input. (line 9) -* fixed-width font: Font styles. (line 92) -* flafter package: Floats. (line 82) -* float package: Floats. (line 52) -* float page: Floats. (line 58) -* flush left equations: Document class options. - (line 57) -* flushing floats and starting a page: \clearpage. (line 6) -* font catalogue: Low-level font commands. - (line 21) -* font commands, low-level: Low-level font commands. - (line 6) -* font size: Low-level font commands. - (line 101) -* font sizes: Font sizes. (line 6) -* font styles: Font styles. (line 6) -* font symbols, by number: Symbols by font position. - (line 6) -* fonts: Fonts. (line 6) -* fonts, new commands for: \newfont. (line 6) -* footer style: \pagestyle. (line 6) -* footer, parameters for: Page layout parameters. - (line 6) -* footmisc package: Footnotes in section headings. - (line 10) -* footnote number, cross referencing: \ref. (line 6) -* footnote parameters: Footnote parameters. (line 6) -* footnotes in figures: minipage. (line 21) -* footnotes, creating: Footnotes. (line 6) -* Footnotes, in a minipage: \footnote. (line 35) -* Footnotes, in a table: Footnotes in a table. - (line 6) -* footnotes, in section headings: Footnotes in section headings. - (line 6) -* footnotes, symbols instead of numbers: \footnote. (line 23) -* formulas, environment for: equation. (line 6) -* formulas, math: Math formulas. (line 6) -* forward reference: Cross references. (line 22) -* forward references, resolving: Output files. (line 33) -* fragile commands: \protect. (line 6) -* French quotation marks: Text symbols. (line 30) -* functions, math: Math functions. (line 6) -* geometry package: Document class options. - (line 40) -* geometry package <1>: Document class options. - (line 44) -* global options: Document class options. - (line 6) -* global options <1>: Additional packages. (line 15) -* glossaries: Glossaries. (line 6) -* glossary package: Glossaries. (line 15) -* glue register, plain TeX: \newlength. (line 6) -* graphics: Graphics. (line 6) -* graphics <1>: Graphics package configuration. - (line 6) -* graphics <2>: \includegraphics. (line 6) -* graphics package: Graphics. (line 6) -* graphics package <1>: Graphics package configuration. - (line 6) -* graphics package <2>: \includegraphics. (line 6) -* graphics package commands: Commands for graphics. - (line 6) -* graphics package options: Graphics package options. - (line 6) -* graphics packages: \line. (line 13) -* graphics, resizing: \scalebox. (line 6) -* graphics, resizing <1>: \resizebox. (line 6) -* graphics, scaling: \scalebox. (line 6) -* graphics, scaling <1>: \resizebox. (line 6) -* grave accent: Accents. (line 37) -* grave accent, math: Math accents. (line 29) -* greater than symbol, in text: Text symbols. (line 125) -* greek letters: Math symbols. (line 6) -* group, and environments: Environments. (line 18) -* ha'c<ek accent, math: Math accents. (line 20) -* hacek accent: Accents. (line 97) -* hat accent: Accents. (line 33) -* hat accent, math: Math accents. (line 32) -* header style: \pagestyle. (line 6) -* header, parameters for: Page layout parameters. - (line 6) -* hello, world: Starting and ending. (line 6) -* here, putting floats: Floats. (line 52) -* hungarian umlaut accent: Accents. (line 59) -* hyphenation, defining: \hyphenation. (line 6) -* hyphenation, discretionary: \discretionary. (line 6) -* hyphenation, forcing: \- (hyphenation). (line 6) -* hyphenation, preventing: \mbox. (line 6) -* Icelandic eth: Additional Latin letters. - (line 20) -* Icelandic thorn: Additional Latin letters. - (line 56) -* ij letter, Dutch: Additional Latin letters. - (line 32) -* implementations of TeX: TeX engines. (line 6) -* importing graphics: \includegraphics. (line 6) -* in-line formulas: math. (line 6) -* including graphics: \includegraphics. (line 6) -* indent, forcing: \indent. (line 6) -* indent, suppressing: \noindent. (line 6) -* indentation of paragraphs, in minipage: minipage. (line 17) -* index entries, 'see' and 'see also': Indexes. (line 16) -* indexes: Indexes. (line 6) -* infinite horizontal stretch: \hfill. (line 6) -* infinite vertical stretch: \vfill. (line 6) -* input file: Splitting the input. (line 6) -* input/output, to terminal: Terminal input/output. - (line 6) -* inserting figures: figure. (line 6) -* insertions of special characters: Special insertions. (line 6) -* italic correction: \/. (line 6) -* italic font: Font styles. (line 77) -* JPEG files: Graphics package configuration. - (line 6) -* JPEG files <1>: \includegraphics. (line 6) -* JPG files: Graphics package configuration. - (line 6) -* JPG files <1>: \includegraphics. (line 6) -* justification, ragged left: \raggedleft. (line 6) -* justification, ragged right: \raggedright. (line 6) -* Knuth, Donald E.: Overview. (line 6) -* label: Cross references. (line 9) -* labelled lists, creating: description. (line 6) -* Lamport TeX: Overview. (line 24) -* Lamport, Leslie: Overview. (line 6) -* landscape orientation: Document class options. - (line 60) -* LaTeX logo: Text symbols. (line 21) -* LaTeX overview: Overview. (line 6) -* LaTeX Project team: About this document. (line 17) -* LaTeX vs. LaTeX2e: About this document. (line 13) -* LaTeX2e logo: Text symbols. (line 24) -* Latin letters, additional: Additional Latin letters. - (line 6) -* layout commands: Layout. (line 6) -* layout, page parameters for: Page layout parameters. - (line 6) -* left angle quotation marks: Text symbols. (line 30) -* left arrow, in text: Text symbols. (line 131) -* left brace, in text: Text symbols. (line 85) -* left quote: Text symbols. (line 40) -* left quote, double: Text symbols. (line 144) -* left quote, single: Text symbols. (line 150) -* left-hand equation numbers: Document class options. - (line 63) -* left-justifying text: \raggedright. (line 6) -* left-justifying text, environment for: flushleft. (line 6) -* left-to-right mode: Modes. (line 6) -* length command: \setlength. (line 10) -* lengths, adding to: \addtolength. (line 6) -* lengths, allocating new: \newlength. (line 6) -* lengths, defining and using: Lengths. (line 6) -* lengths, predefined: Predefined lengths. (line 6) -* lengths, setting: \setlength. (line 6) -* less than symbol, in text: Text symbols. (line 128) -* letters, accented: Accents. (line 6) -* letters, additional Latin: Additional Latin letters. - (line 6) -* letters, ending: \closing. (line 6) -* letters, starting: \opening. (line 6) -* letters, writing: Letters. (line 6) -* line break, forcing: \\. (line 6) -* line breaking: Line breaking. (line 6) -* line breaks, forcing: \linebreak & \nolinebreak. - (line 6) -* line breaks, preventing: \linebreak & \nolinebreak. - (line 6) -* lines in tables: tabular. (line 6) -* lining numerals: Font styles. (line 134) -* lining text up in tables: tabular. (line 6) -* lining text up using tab stops: tabbing. (line 6) -* list items, specifying counter: \usecounter. (line 6) -* list of figures file: Output files. (line 43) -* list of tables file: Output files. (line 43) -* listings package: tabbing. (line 144) -* lists of items: itemize. (line 6) -* lists of items, generic: list. (line 6) -* lists of items, numbered: enumerate. (line 6) -* loading additional packages: Additional packages. (line 6) -* log file: Output files. (line 28) -* logo, LaTeX: Text symbols. (line 21) -* logo, LaTeX2e: Text symbols. (line 24) -* logo, TeX: Text symbols. (line 61) -* long command: Class and package commands. - (line 23) -* low-9 quotation marks, single and double: Text symbols. (line 52) -* low-level font commands: Low-level font commands. - (line 6) -* Lower case: Upper and lower case. - (line 6) -* LR mode: Modes. (line 6) -* ltugboat class: tugboat template. (line 6) -* LuaTeX: TeX engines. (line 29) -* m-width: Units of length. (line 38) -* macro package, LaTeX as: Overview. (line 11) -* macron accent: Accents. (line 29) -* macron accent, math: Math accents. (line 14) -* macros2e package: \makeatletter and \makeatother. - (line 39) -* Madsen, Lars: eqnarray. (line 6) -* makeidx package: Indexes. (line 28) -* makeindex program: Indexes. (line 23) -* making a title page: titlepage. (line 6) -* making paragraphs: Making paragraphs. (line 6) -* marginal notes: Marginal notes. (line 6) -* masculine ordinal symbol: Text symbols. (line 135) -* math accents: Math accents. (line 6) -* math formulas: Math formulas. (line 6) -* math functions: Math functions. (line 6) -* math miscellany: Math miscellany. (line 6) -* math mode: Modes. (line 6) -* math mode, entering: Math formulas. (line 6) -* math mode, spacing: Spacing in math mode. - (line 6) -* math symbols: Math symbols. (line 6) -* math, bold: Font styles. (line 130) -* mfirstuc package: Upper and lower case. - (line 45) -* Millimeter: Units of length. (line 27) -* minipage, creating a: minipage. (line 6) -* minted package: tabbing. (line 144) -* modes: Modes. (line 6) -* monospace font: Font styles. (line 92) -* moving arguments: \protect. (line 19) -* mpfootnote counter: \footnote. (line 35) -* mu, math unit: Units of length. (line 49) -* multicolumn text: \twocolumn. (line 6) -* multilingual support: Accents. (line 6) -* multind package: Indexes. (line 39) -* multiplication symbol, discretionary line break: Math miscellany. - (line 7) -* nested \include, not allowed: \include. (line 18) -* new class commands: Class and package construction. - (line 6) -* new command, check: Class and package commands. - (line 21) -* new command, definition: Class and package commands. - (line 96) -* new commands, defining: \newcommand & \renewcommand. - (line 6) -* new commands, defining <1>: \providecommand. (line 6) -* new line, output as input: \obeycr & \restorecr. - (line 6) -* new line, starting: \\. (line 6) -* new line, starting (paragraph mode): \newline. (line 6) -* new page, starting: \newpage. (line 6) -* non-English characters: Additional Latin letters. - (line 6) -* notes in the margin: Marginal notes. (line 6) -* null delimiter: Math miscellany. (line 36) -* numbered items, specifying counter: \usecounter. (line 6) -* numerals, old-style: Font styles. (line 134) -* oblique font: Font styles. (line 89) -* oe ligature: Additional Latin letters. - (line 48) -* ogonek: Accents. (line 70) -* old-style numerals: Font styles. (line 134) -* one-column output: \onecolumn. (line 6) -* opening quote: Text symbols. (line 40) -* OpenType fonts: TeX engines. (line 6) -* options, class: Class and package commands. - (line 66) -* options, color package: Color package options. - (line 6) -* options, document class: Document class options. - (line 6) -* options, document class <1>: Class and package structure. - (line 6) -* options, global: Additional packages. (line 15) -* options, graphics package: Graphics package options. - (line 6) -* options, package: Class and package structure. - (line 6) -* options, package <1>: Class and package commands. - (line 66) -* ordinals, feminine and masculine: Text symbols. (line 135) -* oslash: Additional Latin letters. - (line 44) -* overbar accent: Accents. (line 29) -* overdot accent, math: Math accents. (line 26) -* overview of LaTeX: Overview. (line 6) -* package file layout: Class and package structure. - (line 6) -* package options: Class and package structure. - (line 6) -* package options <1>: Class and package commands. - (line 66) -* package, algorithm2e: tabbing. (line 144) -* package, amsmath: array. (line 40) -* package, amsmath <1>: displaymath. (line 22) -* package, babel: thebibliography. (line 29) -* package, babel <1>: Accents. (line 6) -* package, datetime: \today. (line 22) -* package, enumitem: list. (line 24) -* package, etoolbox: Class and package commands. - (line 110) -* package, fancyvrb: tabbing. (line 144) -* package, flafter: Floats. (line 82) -* package, float: Floats. (line 52) -* package, footmisc: Footnotes in section headings. - (line 10) -* package, geometry: Document class options. - (line 40) -* package, geometry <1>: Document class options. - (line 44) -* package, listings: tabbing. (line 144) -* package, macros2e: \makeatletter and \makeatother. + (line 25) +* --disable-write18 command-line option: Command line options. + (line 54) +* --enable-write18 command-line option: Command line options. + (line 54) +* --file-line-error command-line option: Command line options. + (line 81) +* --halt-on-error command-line option: Command line options. + (line 78) +* --help command-line option: Command line options. + (line 19) +* --interaction command-line option: Command line options. + (line 22) +* --jobname command-line option: Command line options. (line 39) -* package, makeidx: Indexes. (line 28) -* package, mfirstuc: Upper and lower case. - (line 45) -* package, minted: tabbing. (line 144) -* package, multind: Indexes. (line 39) -* package, picture: picture. (line 23) -* package, setspace: Low-level font commands. - (line 118) -* package, showidx: Indexes. (line 35) -* package, textcase: Upper and lower case. - (line 42) -* package, textcomp: Font styles. (line 134) -* package, xspace: \(SPACE) after control sequence. - (line 20) -* packages, loading additional: Additional packages. (line 6) -* page break, forcing: \pagebreak & \nopagebreak. - (line 6) -* page break, preventing: \pagebreak & \nopagebreak. - (line 6) -* page breaking: Page breaking. (line 6) -* page layout parameters: Page layout parameters. - (line 6) -* page number, cross referencing: \pageref. (line 6) -* page numbering style: \pagenumbering. (line 6) -* page styles: Page styles. (line 6) -* page, colored: Colored pages. (line 6) -* paragraph indentation, in minipage: minipage. (line 17) -* paragraph indentations in quoted text: quotation and quote. (line 6) -* paragraph indentations in quoted text, omitting: quotation and quote. - (line 6) -* paragraph mode: Modes. (line 6) -* paragraph mode <1>: \parbox. (line 10) -* paragraph symbol: Text symbols. (line 44) -* paragraphs: Making paragraphs. (line 6) -* parameters, for footnotes: Footnote parameters. (line 6) -* parameters, page layout: Page layout parameters. - (line 6) -* PDF graphic files: Graphics package configuration. - (line 6) -* PDF graphic files <1>: \includegraphics. (line 6) -* pdfTeX: Output files. (line 20) -* pdfTeX engine: TeX engines. (line 12) -* period, centered, in text: Text symbols. (line 138) -* pica: Units of length. (line 14) -* pict2e package: \line. (line 13) -* picture package: picture. (line 23) -* pictures, creating: picture. (line 6) -* pilcrow: Text symbols. (line 44) -* placement of floats: Floats. (line 31) -* PNG files: Graphics package configuration. - (line 6) -* PNG files <1>: \includegraphics. (line 6) -* poetry, an environment for: verse. (line 6) -* Point: Units of length. (line 10) -* polish l: Additional Latin letters. - (line 36) -* portrait orientation: Document class options. - (line 60) -* position, in picture: picture. (line 28) -* positional parameter: \newcommand & \renewcommand. - (line 37) -* postscript, in letters: \ps. (line 6) -* pounds symbol: Text symbols. (line 48) -* preamble, defined: Starting and ending. (line 19) -* predefined lengths: Predefined lengths. (line 6) -* prompt, *: Command line. (line 18) -* pronunciation: Overview. (line 24) -* quad: Spacing in math mode. - (line 32) -* question mark, upside-down: Text symbols. (line 141) -* quotation marks, French: Text symbols. (line 30) -* quote, single straight: Text symbols. (line 156) -* quote, straight base: Text symbols. (line 160) -* quoted text with paragraph indentation, displaying: quotation and quote. - (line 6) -* quoted text without paragraph indentation, displaying: quotation and quote. - (line 6) -* ragged left text: \raggedleft. (line 6) -* ragged left text, environment for: flushright. (line 6) -* ragged right text: \raggedright. (line 6) -* ragged right text, environment for: flushleft. (line 6) -* redefining environments: \newenvironment & \renewenvironment. - (line 6) -* reference, forward: Cross references. (line 22) -* references, resolving forward: Output files. (line 33) -* registered symbol: Text symbols. (line 163) -* remarks in the margin: Marginal notes. (line 6) -* reporting bugs: About this document. (line 21) -* reserved characters: Reserved characters. (line 6) -* resizing: \scalebox. (line 6) -* resizing <1>: \resizebox. (line 6) -* right angle quotation marks: Text symbols. (line 30) -* right arrow, in text: Text symbols. (line 166) -* right brace, in text: Text symbols. (line 88) -* right quote: Text symbols. (line 55) -* right quote, double: Text symbols. (line 147) -* right quote, single: Text symbols. (line 153) -* right-hand equation numbers: Document class options. - (line 63) -* right-justifying text: \raggedleft. (line 6) -* right-justifying text, environment for: flushright. (line 6) -* ring accent: Accents. (line 75) -* ring accent, math: Math accents. (line 41) -* robust commands: \protect. (line 6) -* roman font: Font styles. (line 80) -* root file: Splitting the input. (line 9) -* rotating graphics: \rotatebox. (line 6) -* rotating text: \rotatebox. (line 6) -* rotation: \rotatebox. (line 6) -* row, tabbing: tabbing. (line 45) -* rubber lengths, defining new: \newlength. (line 6) -* running header and footer: Page layout parameters. - (line 6) -* running header and footer style: \pagestyle. (line 6) -* sans serif font: Font styles. (line 86) -* Scaled point: Units of length. (line 36) -* scaling: \scalebox. (line 6) -* scaling <1>: \resizebox. (line 6) -* script letters for math: Font styles. (line 74) -* section number, cross referencing: \ref. (line 6) -* section numbers, printing: Sectioning. (line 47) -* section symbol: Text symbols. (line 58) -* section, redefining: \@startsection. (line 6) -* sectioning commands: Sectioning. (line 6) -* series, of fonts: Low-level font commands. - (line 48) -* setspace package: Low-level font commands. - (line 118) -* setting counters: \setcounter. (line 6) -* shapes, of fonts: Low-level font commands. - (line 88) -* sharp S letters: Additional Latin letters. - (line 52) -* showidx package: Indexes. (line 35) -* simulating typed text: verbatim. (line 6) -* single angle quotation marks: Text symbols. (line 30) -* single guillemets: Text symbols. (line 30) -* single left quote: Text symbols. (line 150) -* single low-9 quotation mark: Text symbols. (line 52) -* single quote, straight: Text symbols. (line 156) -* single right quote: Text symbols. (line 153) -* sizes of text: Font sizes. (line 6) -* skip register, plain TeX: \newlength. (line 6) -* slanted font: Font styles. (line 89) -* small caps font: Font styles. (line 83) -* space, inserting vertical: \addvspace. (line 6) -* space, vertical: \vspace. (line 6) -* spaces: Spaces. (line 6) -* spaces, ignore around commands: \ignorespaces & \ignorespacesafterend. - (line 6) -* spacing within math mode: Spacing in math mode. - (line 6) -* spacing, inter-sentence: \frenchspacing. (line 6) -* spacing, inter-sentence <1>: \normalsfcodes. (line 6) -* Spanish ordinals, feminine and masculine: Text symbols. (line 135) -* special characters: Reserved characters. (line 6) -* special characters <1>: Additional Latin letters. - (line 6) -* special insertions: Special insertions. (line 6) -* specifier, float placement: Floats. (line 31) -* splitting the input file: Splitting the input. (line 6) -* stable option to footmisc package: Footnotes in section headings. - (line 10) -* star-variants, commands: \@ifstar. (line 6) -* starred form, defining new commands: \newcommand & \renewcommand. +* --no-file-line-error command-line option: Command line options. + (line 81) +* --no-shell-escape command-line option: Command line options. + (line 54) +* --output-directory command-line option: Command line options. + (line 51) +* --shell-escape command-line option: Command line options. + (line 54) +* --version command-line option: Command line options. (line 14) -* starting a new page: \newpage. (line 6) -* starting a new page and clearing floats: \clearpage. (line 6) -* starting and ending: Starting and ending. (line 6) -* starting on a right-hand page: \cleardoublepage. (line 6) -* sterling symbol: Text symbols. (line 48) -* straight double quote, base: Text symbols. (line 160) -* straight quote, base: Text symbols. (line 160) -* straight single quote: Text symbols. (line 156) -* stretch, infinite horizontal: \hfill. (line 6) -* stretch, infinite vertical: \vfill. (line 6) -* stretch, omitting vertical: \raggedbottom. (line 6) -* styles of text: Font styles. (line 6) -* styles, page: Page styles. (line 6) -* subscript: Subscripts & superscripts. - (line 6) -* superscript: Subscripts & superscripts. - (line 6) -* symbols, math: Math symbols. (line 6) -* symbols, text: Text symbols. (line 6) -* tab stops, using: tabbing. (line 6) -* table of contents entry, manually adding: \addcontentsline. (line 6) -* table of contents file: Output files. (line 43) -* table of contents, avoiding footnotes: Footnotes in section headings. - (line 6) -* table of contents, creating: Tables of contents. (line 6) -* tables, creating: table. (line 6) -* template, beamer: beamer template. (line 6) -* template, book: book template. (line 6) -* template, TUGboat: tugboat template. (line 6) -* templates, document: Document templates. (line 6) -* terminal input/output: Terminal input/output. - (line 6) -* TeX logo: Text symbols. (line 61) -* text symbols: Text symbols. (line 6) -* text, resizing: \scalebox. (line 6) -* text, resizing <1>: \resizebox. (line 6) -* text, scaling: \scalebox. (line 6) -* text, scaling <1>: \resizebox. (line 6) -* textcase package: Upper and lower case. - (line 42) -* textcomp package: Font styles. (line 134) -* thanks, for titlepage: \maketitle. (line 22) -* theorem-like environment: \newtheorem. (line 6) -* theorems, defining: \newtheorem. (line 6) -* theorems, typesetting: theorem. (line 6) -* thorn, Icelandic letter: Additional Latin letters. - (line 56) -* three-quarters em-dash: Text symbols. (line 169) -* tie-after accent: Accents. (line 81) -* tilde accent: Accents. (line 43) -* tilde accent, math: Math accents. (line 44) -* tilde, ASCII, in text: Text symbols. (line 67) -* title page, separate or run-in: Document class options. - (line 71) -* title pages, creating: titlepage. (line 6) -* title, for titlepage: \maketitle. (line 26) -* titles, making: \maketitle. (line 6) -* trademark symbol: Text symbols. (line 172) -* transcript file: Output files. (line 28) -* TrueType fonts: TeX engines. (line 6) -* TUGboat template: tugboat template. (line 6) -* two-column output: \twocolumn. (line 6) -* two-thirds em-dash: Text symbols. (line 175) -* type styles: Font styles. (line 6) -* typed text, simulating: verbatim. (line 6) -* typeface sizes: Font sizes. (line 6) -* typefaces: Fonts. (line 6) -* typewriter font: Font styles. (line 92) -* typewriter labels in lists: description. (line 34) -* umlaut accent: Accents. (line 16) -* underbar: Accents. (line 89) -* underscore, in text: Text symbols. (line 178) -* Unicode input, native: TeX engines. (line 6) -* units, of length: Units of length. (line 6) -* unofficial nature of this manual: About this document. (line 17) -* unordered lists: itemize. (line 6) -* Upper case: Upper and lower case. - (line 6) -* using BibTeX: Using BibTeX. (line 6) -* UTF-8: TeX engines. (line 6) -* variables, a list of: Counters. (line 6) -* vector symbol, math: Math accents. (line 47) -* verbatim text: verbatim. (line 6) -* verbatim text, inline: \verb. (line 6) -* vertical bar, double, in text: Text symbols. (line 79) -* vertical bar, in text: Text symbols. (line 76) -* vertical space: \addvspace. (line 6) -* vertical space <1>: \vspace. (line 6) -* vertical space before paragraphs: \parskip. (line 6) -* visible space: \verb. (line 17) -* visible space symbol, in text: Text symbols. (line 181) -* weights, of fonts: Low-level font commands. - (line 58) -* white space: Spaces. (line 6) -* wide hat accent, math: Math accents. (line 50) -* wide tilde accent, math: Math accents. (line 53) -* widths, of fonts: Low-level font commands. - (line 70) -* writing external files: filecontents. (line 6) -* writing letters: Letters. (line 6) -* x-height: Units of length. (line 38) -* XeTeX: TeX engines. (line 38) -* xindy program: Indexes. (line 23) -* xspace package: \(SPACE) after control sequence. - (line 20) - - -File: latex2e.info, Node: Command Index, Prev: Concept Index, Up: Top - -Command Index -************* - - -* Menu: - -* $: Math formulas. (line 24) -* &: tabular. (line 32) -* --help command-line option: Command line. (line 14) * .aux file: Output files. (line 33) * .dvi file: Output files. (line 10) -* .fd file: \newfont. (line 16) +* .glo file: Glossaries. (line 43) +* .idx file: Indexes. (line 6) +* .idx file <1>: makeindex. (line 6) +* .ind file: makeindex. (line 6) +* .isty file: makeindex. (line 18) * .lof file: Output files. (line 43) -* .lof file <1>: Tables of contents. (line 16) +* .lof file <1>: Table of contents etc.. + (line 6) * .log file: Output files. (line 28) * .lot file: Output files. (line 43) -* .lot file <1>: Tables of contents. (line 16) +* .lot file <1>: Table of contents etc.. + (line 6) * .pdf file: Output files. (line 20) -* .tex, default extension: Command line. (line 6) +* .tex, default extension: Command line. (line 18) * .toc file: Output files. (line 43) -* .toc file <1>: Tables of contents. (line 6) -* .xdv file: TeX engines. (line 38) +* .toc file <1>: Table of contents etc.. + (line 6) +* .xdv file: TeX engines. (line 39) * 10pt option: Document class options. (line 14) * 11pt option: Document class options. (line 14) * 12pt option: Document class options. (line 14) +* :: Colon character & \colon. + (line 6) +* : <1>: Colon character & \colon. + (line 6) * [...] for optional arguments: LaTeX command syntax. (line 6) * \ character starting commands: LaTeX command syntax. (line 6) * \!: Spacing in math mode. - (line 29) -* \" (umlaut accent): Accents. (line 16) + (line 46) +* \" (umlaut accent): Accents. (line 23) * \#: Reserved characters. (line 13) * \$: Reserved characters. (line 13) * \%: Reserved characters. (line 13) * \&: Reserved characters. (line 13) -* \' (acute accent): Accents. (line 20) -* \' (tabbing): tabbing. (line 86) -* \(: Math formulas. (line 16) -* \(SPACE): \(SPACE) and \@. (line 6) -* \): Math formulas. (line 16) -* \*: Math miscellany. (line 6) -* \+: tabbing. (line 78) +* \' (acute accent): Accents. (line 27) +* \' (tabbing): tabbing. (line 87) +* \*: \*. (line 6) +* \+: tabbing. (line 79) * \,: Spacing in math mode. - (line 25) -* \-: tabbing. (line 82) + (line 32) +* \-: tabbing. (line 83) * \- (hyphenation): \- (hyphenation). (line 6) -* \. (dot-over accent): Accents. (line 25) +* \. (dot-over accent): Accents. (line 30) * \/: \/. (line 6) * \:: Spacing in math mode. - (line 21) + (line 28) * \;: Spacing in math mode. - (line 16) -* \<: tabbing. (line 74) -* \= (macron accent): Accents. (line 29) -* \= (tabbing): tabbing. (line 68) -* \>: tabbing. (line 72) + (line 23) +* \<: tabbing. (line 75) +* \= (macron accent): Accents. (line 34) +* \= (tabbing): tabbing. (line 69) +* \>: tabbing. (line 73) * \> <1>: Spacing in math mode. - (line 21) -* \> (tabbing): tabbing. (line 71) -* \@: \(SPACE) and \@. (line 6) -* \@beginparpenalty: list. (line 234) -* \@endparpenalty: list. (line 242) -* \@fnsymbol: \footnote. (line 23) + (line 28) +* \> (tabbing): tabbing. (line 72) +* \@: \@. (line 6) +* \@beginparpenalty: list. (line 241) +* \@endparpenalty: list. (line 249) +* \@fnsymbol: \footnote. (line 24) * \@ifstar: \@ifstar. (line 6) -* \@itempenalty: list. (line 238) +* \@itempenalty: list. (line 245) * \@startsection: \@startsection. (line 6) -* \a (tabbing): tabbing. (line 101) -* \a' (acute accent in tabbing): tabbing. (line 102) -* \a= (macron accent in tabbing): tabbing. (line 102) +* \a (tabbing): tabbing. (line 102) +* \a' (acute accent in tabbing): tabbing. (line 103) +* \a= (macron accent in tabbing): tabbing. (line 103) * \aa (aa): Additional Latin letters. (line 12) * \AA (AA): Additional Latin letters. @@ -11676,30 +15183,30 @@ Command Index (line 16) * \AE (AE): Additional Latin letters. (line 16) -* \aleph: Math symbols. (line 22) +* \aleph: Math symbols. (line 21) * \Alph example: enumerate. (line 61) -* \alpha: Math symbols. (line 25) +* \alpha: Math symbols. (line 24) * \alph{COUNTER}: \alph \Alph \arabic \roman \Roman \fnsymbol. (line 14) * \Alph{COUNTER}: \alph \Alph \arabic \roman \Roman \fnsymbol. - (line 17) -* \alsoname: Indexes. (line 20) -* \amalg: Math symbols. (line 28) -* \and for \author: \maketitle. (line 12) -* \angle: Math symbols. (line 31) -* \appendix: Sectioning. (line 37) -* \approx: Math symbols. (line 36) + (line 19) +* \alsoname: \index. (line 56) +* \amalg: Math symbols. (line 27) +* \and for \author: \maketitle. (line 43) +* \angle: Math symbols. (line 30) +* \appendix: \appendix. (line 6) +* \approx: Math symbols. (line 35) * \arabic{COUNTER}: \alph \Alph \arabic \roman \Roman \fnsymbol. - (line 20) + (line 24) * \arccos: Math functions. (line 9) * \arcsin: Math functions. (line 12) * \arctan: Math functions. (line 15) * \arg: Math functions. (line 18) -* \arraycolsep: array. (line 37) -* \arrayrulewidth: tabular. (line 156) -* \arraystretch: tabular. (line 162) -* \ast: Math symbols. (line 39) -* \asymp: Math symbols. (line 48) +* \arraycolsep: array. (line 51) +* \arrayrulewidth: tabular. (line 158) +* \arraystretch: tabular. (line 164) +* \ast: Math symbols. (line 38) +* \asymp: Math symbols. (line 47) * \AtBeginDocument: \AtBeginDocument. (line 6) * \AtBeginDvi: Class and package commands. (line 9) @@ -11708,80 +15215,85 @@ Command Index (line 14) * \AtEndOfPackage: Class and package commands. (line 14) -* \author{NAME \and NAME2}: \maketitle. (line 11) -* \a` (grave accent in tabbing): tabbing. (line 102) -* \b (bar-under accent): Accents. (line 46) -* \backslash: Math symbols. (line 51) +* \author{NAME1 \and NAME2 \and ...}: \maketitle. (line 42) +* \a` (grave accent in tabbing): tabbing. (line 103) +* \b (bar-under accent): Accents. (line 49) +* \backmatter: \frontmatter & \mainmatter & \backmatter. + (line 6) +* \backslash: Math symbols. (line 50) * \bar: Math accents. (line 13) * \baselineskip: Low-level font commands. (line 101) * \baselinestretch: Low-level font commands. (line 111) * \begin: Environments. (line 6) -* \beta: Math symbols. (line 55) -* \bf: Font styles. (line 70) +* \beta: Math symbols. (line 54) +* \bf: Font styles. (line 74) * \bfseries: Font styles. (line 39) * \bibitem: \bibitem. (line 6) * \bibliography: Using BibTeX. (line 6) * \bibliographystyle: Using BibTeX. (line 6) -* \bibname: thebibliography. (line 23) -* \bigcap: Math symbols. (line 58) -* \bigcirc: Math symbols. (line 62) -* \bigcup: Math symbols. (line 66) -* \bigodot: Math symbols. (line 70) -* \bigoplus: Math symbols. (line 73) -* \bigotimes: Math symbols. (line 76) -* \bigskip: \bigskip \medskip \smallskip. - (line 9) -* \bigskipamount: \bigskip \medskip \smallskip. - (line 10) -* \bigsqcup: Math symbols. (line 87) -* \bigtriangledown: Math symbols. (line 79) -* \bigtriangleup: Math symbols. (line 83) -* \biguplus: Math symbols. (line 90) -* \bigvee: Math symbols. (line 94) -* \bigwedge: Math symbols. (line 97) +* \bigcap: Math symbols. (line 57) +* \bigcirc: Math symbols. (line 61) +* \bigcup: Math symbols. (line 65) +* \bigodot: Math symbols. (line 69) +* \bigoplus: Math symbols. (line 72) +* \bigotimes: Math symbols. (line 75) +* \bigskip: \bigskip & \medskip & \smallskip. + (line 28) +* \bigskipamount: \bigskip & \medskip & \smallskip. + (line 29) +* \bigsqcup: Math symbols. (line 86) +* \bigtriangledown: Math symbols. (line 78) +* \bigtriangleup: Math symbols. (line 82) +* \biguplus: Math symbols. (line 89) +* \bigvee: Math symbols. (line 93) +* \bigwedge: Math symbols. (line 96) * \bmod: Math functions. (line 21) -* \boldmath: Math formulas. (line 29) -* \bot: Math symbols. (line 100) +* \boldmath: \boldmath & \unboldmath. + (line 6) +* \boldmath <1>: \boldmath & \unboldmath. + (line 14) +* \bot: Math symbols. (line 99) * \bottomfraction: Floats. (line 94) * \bottomfraction <1>: Floats. (line 95) -* \bowtie: Math symbols. (line 105) -* \Box: Math symbols. (line 108) +* \bowtie: Math symbols. (line 104) +* \Box: Math symbols. (line 107) * \breve: Math accents. (line 16) -* \bullet: Math symbols. (line 113) -* \c (cedilla accent): Accents. (line 51) -* \cal: Font styles. (line 73) -* \cap: Math symbols. (line 116) -* \capitalacute: Accents. (line 20) -* \capitalbreve: Accents. (line 86) -* \capitalcaron: Accents. (line 97) -* \capitalcedilla: Accents. (line 51) -* \capitalcircumflex: Accents. (line 33) -* \capitaldieresis: Accents. (line 16) -* \capitaldotaccent: Accents. (line 55) -* \capitalgrave: Accents. (line 37) -* \capitalhungarumlaut: Accents. (line 59) -* \capitalmacron: Accents. (line 29) +* \bullet: Math symbols. (line 112) +* \c (cedilla accent): Accents. (line 59) +* \cal: Font styles. (line 77) +* \cap: Math symbols. (line 115) +* \capitalacute: Accents. (line 27) +* \capitalbreve: Accents. (line 85) +* \capitalcaron: Accents. (line 89) +* \capitalcedilla: Accents. (line 59) +* \capitalcircumflex: Accents. (line 38) +* \capitaldieresis: Accents. (line 23) +* \capitaldotaccent: Accents. (line 63) +* \capitalgrave: Accents. (line 42) +* \capitalhungarumlaut: Accents. (line 67) +* \capitalmacron: Accents. (line 34) * \capitalnewtie: Accents. (line 81) -* \capitalogonek: Accents. (line 70) +* \capitalogonek: Accents. (line 71) * \capitalring: Accents. (line 75) * \capitaltie: Accents. (line 81) -* \capitaltilde: Accents. (line 43) -* \caption: figure. (line 40) -* \caption <1>: table. (line 26) +* \capitaltilde: Accents. (line 46) +* \caption: figure. (line 44) +* \caption <1>: table. (line 44) * \cc: \cc. (line 6) -* \cdot: Math symbols. (line 121) -* \cdots: Math miscellany. (line 25) +* \cdot: Math symbols. (line 120) +* \cdots: Dots. (line 17) * \centering: \centering. (line 6) -* \chapter: Sectioning. (line 9) +* \chapter: Sectioning. (line 6) +* \chapter <1>: \chapter. (line 6) * \check: Math accents. (line 19) * \CheckCommand: Class and package commands. (line 21) * \CheckCommand*: Class and package commands. (line 21) -* \chi: Math symbols. (line 124) -* \circ: Math symbols. (line 127) +* \chi: Math symbols. (line 123) +* \circ: Math symbols. (line 126) * \circle: \circle. (line 6) * \cite: \cite. (line 6) * \ClassError: Class and package commands. @@ -11794,55 +15306,60 @@ Command Index (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) -* \columnsep: \twocolumn. (line 22) +* \clubsuit: Math symbols. (line 131) +* \colon: Colon character & \colon. + (line 6) +* \columnsep: \twocolumn. (line 20) * \columnsep <1>: Page layout parameters. (line 6) * \columnsep <2>: Page layout parameters. (line 9) -* \columnseprule: \twocolumn. (line 28) +* \columnseprule: \twocolumn. (line 26) * \columnseprule <1>: Page layout parameters. (line 7) * \columnseprule <2>: Page layout parameters. (line 9) -* \columnwidth: \twocolumn. (line 35) +* \columnwidth: \twocolumn. (line 33) * \columnwidth <1>: Page layout parameters. (line 8) * \columnwidth <2>: Page layout parameters. (line 9) -* \complement: Math symbols. (line 135) -* \cong: Math symbols. (line 141) -* \contentsline: \addcontentsline. (line 33) -* \coprod: Math symbols. (line 144) -* \copyright: Text symbols. (line 10) +* \complement: Math symbols. (line 134) +* \cong: Math symbols. (line 140) +* \contentsline: \addcontentsline. (line 10) +* \coprod: Math symbols. (line 143) +* \copyright: Text symbols. (line 11) * \cos: Math functions. (line 24) * \cosh: Math functions. (line 27) * \cot: Math functions. (line 30) * \coth: Math functions. (line 33) * \csc: Math functions. (line 36) -* \cup: Math symbols. (line 147) +* \cup: Math symbols. (line 146) * \CurrentOption: Class and package commands. (line 60) -* \d (dot-under accent): Accents. (line 55) -* \dag: Text symbols. (line 14) -* \dagger: Math symbols. (line 152) +* \d (dot-under accent): Accents. (line 63) +* \dag: Text symbols. (line 15) +* \dagger: Math symbols. (line 151) * \dashbox: \dashbox. (line 6) -* \dashv: Math symbols. (line 155) -* \date{TEXT}: \maketitle. (line 17) -* \day: \day \month \year. (line 6) -* \dblfloatpagefraction: \twocolumn. (line 69) -* \dblfloatsep: \twocolumn. (line 75) -* \dbltextfloatsep: \twocolumn. (line 82) -* \dbltopfraction: \twocolumn. (line 47) -* \dbltopnumber: \twocolumn. (line 87) -* \ddag: Text symbols. (line 17) -* \ddagger: Math symbols. (line 159) +* \dashv: Math symbols. (line 154) +* \date{TEXT}: \maketitle. (line 50) +* \day: \day & \month & \year. + (line 6) +* \dblfloatpagefraction: \twocolumn. (line 66) +* \dblfloatsep: \twocolumn. (line 72) +* \dbltextfloatsep: \twocolumn. (line 79) +* \dbltopfraction: \twocolumn. (line 45) +* \dbltopnumber: \twocolumn. (line 84) +* \ddag: Text symbols. (line 18) +* \ddagger: Math symbols. (line 158) * \ddot: Math accents. (line 22) -* \ddots: Math miscellany. (line 29) +* \ddots: Dots. (line 21) * \DeclareGraphicsExtensions: \DeclareGraphicsExtensions. (line 6) * \DeclareGraphicsRule: \DeclareGraphicsRule. @@ -11856,45 +15373,48 @@ Command Index * \DeclareRobustCommand*: Class and package commands. (line 96) * \deg: Math functions. (line 39) -* \Delta: Math symbols. (line 162) -* \delta: Math symbols. (line 165) -* \depth: Predefined lengths. (line 10) +* \Delta: Math symbols. (line 161) +* \delta: Math symbols. (line 164) * \det: Math functions. (line 42) * \dh (d): Additional Latin letters. (line 20) * \DH (D): Additional Latin letters. (line 20) -* \Diamond: Math symbols. (line 168) -* \diamond: Math symbols. (line 172) -* \diamondsuit: Math symbols. (line 176) +* \Diamond: Math symbols. (line 167) +* \diamond: Math symbols. (line 171) +* \diamondsuit: Math symbols. (line 175) * \dim: Math functions. (line 45) -* \displaystyle: Math formulas. (line 34) -* \div: Math symbols. (line 179) +* \displaystyle: Math formulas. (line 61) +* \div: Math symbols. (line 178) * \dj: Additional Latin letters. (line 26) * \DJ: Additional Latin letters. (line 26) * \documentclass: Document classes. (line 6) * \dot: Math accents. (line 25) -* \doteq: Math symbols. (line 182) -* \dotfill: \hrulefill \dotfill. (line 6) -* \dots: Text symbols. (line 34) -* \doublerulesep: tabular. (line 167) -* \downarrow: Math symbols. (line 186) -* \Downarrow: Math symbols. (line 190) -* \ell: Math symbols. (line 194) +* \doteq: Math symbols. (line 181) +* \dotfill: \hrulefill & \dotfill. + (line 6) +* \dots: Text symbols. (line 35) +* \doublerulesep: tabular. (line 169) +* \downarrow: Math symbols. (line 185) +* \Downarrow: Math symbols. (line 189) +* \ell: Math symbols. (line 193) * \emph: Font styles. (line 59) -* \emptyset: Math symbols. (line 197) +* \emptyset: Math symbols. (line 196) * \encl: \encl. (line 6) * \end: Environments. (line 6) +* \endinput: \endinput. (line 6) * \enlargethispage: \enlargethispage. (line 6) +* \enspace: \enspace & \quad & \qquad. + (line 6) * \enumi: enumerate. (line 47) * \enumii: enumerate. (line 47) * \enumiii: enumerate. (line 47) * \enumiv: enumerate. (line 47) -* \epsilon: Math symbols. (line 201) -* \equiv: Math symbols. (line 207) -* \eta: Math symbols. (line 210) +* \epsilon: Math symbols. (line 200) +* \equiv: Math symbols. (line 206) +* \eta: Math symbols. (line 209) * \evensidemargin: Document class options. (line 84) * \evensidemargin <1>: Page layout parameters. @@ -11902,25 +15422,27 @@ Command Index * \evensidemargin <2>: Page layout parameters. (line 68) * \ExecuteOptions: Class and package commands. - (line 166) -* \exists: Math symbols. (line 213) + (line 172) +* \exists: Math symbols. (line 212) * \exp: Math functions. (line 48) -* \extracolsep: tabular. (line 115) -* \fbox: \fbox and \framebox. (line 6) -* \fboxrule: \framebox (picture). (line 14) -* \fboxrule <1>: \fbox and \framebox. (line 18) -* \fboxsep: \framebox (picture). (line 14) -* \fboxsep <1>: \fbox and \framebox. (line 18) -* \fill: \hfill. (line 9) -* \flat: Math symbols. (line 216) +* \extracolsep: tabular. (line 109) +* \fbox: \fbox & \framebox. (line 6) +* \fboxrule: \framebox (picture). (line 31) +* \fboxrule <1>: \fbox & \framebox. (line 39) +* \fboxrule <2>: \fbox & \framebox. (line 38) +* \fboxsep: \framebox (picture). (line 31) +* \fboxsep <1>: \fbox & \framebox. (line 44) +* \fboxsep <2>: \fbox & \framebox. (line 43) +* \fill: \hfill. (line 18) +* \flat: Math symbols. (line 215) * \floatpagefraction: Floats. (line 98) * \floatpagefraction <1>: Floats. (line 99) * \floatsep: Floats. (line 114) * \floatsep <1>: Floats. (line 115) * \flushbottom: \flushbottom. (line 6) -* \fnsymbol, and footnotes: \footnote. (line 23) +* \fnsymbol, and footnotes: \footnote. (line 24) * \fnsymbol{COUNTER}: \alph \Alph \arabic \roman \Roman \fnsymbol. - (line 29) + (line 37) * \fontencoding: Low-level font commands. (line 11) * \fontfamily: Low-level font commands. @@ -11933,41 +15455,42 @@ Command Index (line 101) * \footnote: \footnote. (line 6) * \footnotemark: \footnotemark. (line 6) -* \footnoterule: Footnote parameters. (line 6) -* \footnotesep: Footnote parameters. (line 12) +* \footnoterule: \footnote. (line 34) +* \footnotesep: \footnote. (line 46) * \footnotesize: Font sizes. (line 11) * \footnotetext: \footnotetext. (line 6) * \footskip: Page layout parameters. (line 26) * \footskip <1>: Page layout parameters. (line 27) -* \forall: Math symbols. (line 219) -* \frac: Math miscellany. (line 33) -* \frac{NUM}{DEN}: Math miscellany. (line 32) +* \forall: Math symbols. (line 218) +* \frac: \frac. (line 6) * \frame: \frame. (line 6) * \framebox: \framebox (picture). (line 6) -* \framebox <1>: \fbox and \framebox. (line 6) +* \framebox <1>: \fbox & \framebox. (line 6) * \frenchspacing: \frenchspacing. (line 6) -* \frown: Math symbols. (line 222) -* \fussy: \fussy. (line 6) -* \Gamma: Math symbols. (line 225) -* \gamma: Math symbols. (line 228) +* \frontmatter: \frontmatter & \mainmatter & \backmatter. + (line 6) +* \frown: Math symbols. (line 221) +* \fussy: \fussy & \sloppy. (line 6) +* \Gamma: Math symbols. (line 224) +* \gamma: Math symbols. (line 227) * \gcd: Math functions. (line 51) -* \ge: Math symbols. (line 231) -* \geq: Math symbols. (line 235) -* \gets: Math symbols. (line 239) -* \gg: Math symbols. (line 242) -* \glossary: Glossaries. (line 8) -* \glossaryentry: Glossaries. (line 11) +* \ge: Math symbols. (line 230) +* \geq: Math symbols. (line 234) +* \gets: Math symbols. (line 238) +* \gg: Math symbols. (line 241) +* \gls: \gls. (line 6) * \graphicspath: \graphicspath. (line 6) +* \graphpaper: \graphpaper. (line 6) * \grave: Math accents. (line 28) -* \guillemotleft (<<): Text symbols. (line 26) -* \guillemotright (>>): Text symbols. (line 27) -* \guilsinglleft (<): Text symbols. (line 28) -* \guilsinglright (>): Text symbols. (line 29) -* \H (Hungarian umlaut accent): Accents. (line 59) +* \guillemotleft (<<): Text symbols. (line 27) +* \guillemotright (>>): Text symbols. (line 28) +* \guilsinglleft (<): Text symbols. (line 29) +* \guilsinglright (>): Text symbols. (line 30) +* \H (Hungarian umlaut accent): Accents. (line 67) * \hat: Math accents. (line 31) -* \hbar: Math symbols. (line 246) +* \hbar: Math symbols. (line 245) * \headheight: Page layout parameters. (line 14) * \headheight <1>: Page layout parameters. @@ -11976,26 +15499,27 @@ Command Index (line 19) * \headsep <1>: Page layout parameters. (line 20) -* \heartsuit: Math symbols. (line 249) -* \height: Predefined lengths. (line 8) +* \heartsuit: Math symbols. (line 248) * \hfill: \hfill. (line 6) * \hline: \hline. (line 6) * \hom: Math functions. (line 54) -* \hookleftarrow: Math symbols. (line 252) -* \hookrightarrow: Math symbols. (line 255) -* \hrulefill: \hrulefill \dotfill. (line 6) +* \hookleftarrow: Math symbols. (line 251) +* \hookrightarrow: Math symbols. (line 254) +* \hrulefill: \hrulefill & \dotfill. + (line 6) * \hsize: Page layout parameters. (line 119) * \hsize <1>: Page layout parameters. (line 119) * \hspace: \hspace. (line 6) +* \hss: \hss. (line 6) * \huge: Font sizes. (line 11) * \Huge: Font sizes. (line 11) * \hyphenation: \hyphenation. (line 6) -* \i (dotless i): Accents. (line 63) -* \iff: Math symbols. (line 258) +* \i (dotless i): Accents. (line 17) +* \iff: Math symbols. (line 257) * \IfFileExists: Class and package commands. - (line 127) + (line 128) * \ignorespaces: \ignorespaces & \ignorespacesafterend. (line 6) * \ignorespacesafterend: \ignorespaces & \ignorespacesafterend. @@ -12004,40 +15528,43 @@ Command Index (line 32) * \IJ (IJ): Additional Latin letters. (line 32) -* \Im: Math symbols. (line 262) -* \imath: Math accents. (line 34) -* \in: Math symbols. (line 265) -* \include: \include. (line 6) +* \Im: Math symbols. (line 261) +* \imath: Math symbols. (line 264) +* \in: Math symbols. (line 268) +* \include: \include & \includeonly. + (line 6) * \includegraphics: \includegraphics. (line 6) -* \includeonly: \includeonly. (line 6) -* \indent: \indent. (line 6) -* \index: Indexes. (line 9) -* \indexentry: Indexes. (line 12) -* \indexspace: Indexes. (line 32) +* \includeonly: \include & \includeonly. + (line 6) +* \indent: \indent & \noindent. (line 6) +* \index: Indexes. (line 6) +* \index <1>: \index. (line 6) +* \indexentry: \index. (line 106) +* \indexspace: makeindex. (line 58) * \inf: Math functions. (line 57) -* \infty: Math symbols. (line 271) +* \infty: Math symbols. (line 273) * \input: \input. (line 6) * \InputIfFileExists: Class and package commands. - (line 127) -* \int: Math symbols. (line 274) + (line 128) +* \int: Math symbols. (line 276) * \intextsep: Floats. (line 118) * \intextsep <1>: Floats. (line 119) -* \iota: Math symbols. (line 277) -* \it: Font styles. (line 76) -* \item: description. (line 29) +* \iota: Math symbols. (line 279) +* \it: Font styles. (line 80) +* \item: description. (line 31) * \item <1>: enumerate. (line 29) * \item <2>: itemize. (line 6) * \item <3>: itemize. (line 28) -* \itemindent: list. (line 80) -* \itemsep: list. (line 84) +* \itemindent: list. (line 83) +* \itemsep: list. (line 87) * \itshape: Font styles. (line 33) -* \j (dotless j): Accents. (line 66) -* \jmath: Math accents. (line 37) -* \Join: Math symbols. (line 280) -* \k (ogonek): Accents. (line 70) -* \kappa: Math symbols. (line 284) +* \j (dotless j): Accents. (line 17) +* \jmath: Math symbols. (line 286) +* \Join: Math symbols. (line 282) +* \k (ogonek): Accents. (line 71) +* \kappa: Math symbols. (line 290) * \ker: Math functions. (line 60) -* \kill: tabbing. (line 106) +* \kill: tabbing. (line 107) * \l (/l): Additional Latin letters. (line 36) * \L (/L): Additional Latin letters. @@ -12051,43 +15578,44 @@ Command Index * \labelitemii: itemize. (line 35) * \labelitemiii: itemize. (line 35) * \labelitemiv: itemize. (line 35) -* \labelsep: list. (line 96) -* \labelwidth: list. (line 101) -* \Lambda: Math symbols. (line 287) -* \lambda: Math symbols. (line 290) -* \land: Math symbols. (line 293) -* \langle: Math symbols. (line 298) +* \labelsep: list. (line 99) +* \labelwidth: list. (line 104) +* \Lambda: Math symbols. (line 293) +* \lambda: Math symbols. (line 296) +* \land: Math symbols. (line 299) +* \langle: Math symbols. (line 304) * \large: Font sizes. (line 11) * \Large: Font sizes. (line 11) * \LARGE: Font sizes. (line 11) -* \LaTeX: Text symbols. (line 20) -* \LaTeXe: Text symbols. (line 23) -* \lbrace: Math symbols. (line 303) -* \lbrack: Math symbols. (line 307) -* \lceil: Math symbols. (line 311) -* \ldots: Text symbols. (line 33) -* \le: Math symbols. (line 315) -* \leadsto: Math symbols. (line 319) -* \left DELIM1 ... \right DELIM2: Math miscellany. (line 35) -* \Leftarrow: Math symbols. (line 326) -* \leftarrow: Math symbols. (line 331) +* \LaTeX: Text symbols. (line 21) +* \LaTeXe: Text symbols. (line 24) +* \lbrace: Math symbols. (line 309) +* \lbrack: Math symbols. (line 313) +* \lceil: Math symbols. (line 317) +* \ldots: Dots. (line 25) +* \ldots <1>: Text symbols. (line 34) +* \le: Math symbols. (line 321) +* \leadsto: Math symbols. (line 325) +* \left: \left & \right. (line 6) +* \Leftarrow: Math symbols. (line 332) +* \leftarrow: Math symbols. (line 337) * \lefteqn: eqnarray. (line 46) -* \leftharpoondown: Math symbols. (line 335) -* \leftharpoonup: Math symbols. (line 338) +* \leftharpoondown: Math symbols. (line 341) +* \leftharpoonup: Math symbols. (line 344) * \leftmargin: itemize. (line 54) -* \leftmargin <1>: list. (line 121) +* \leftmargin <1>: list. (line 124) * \leftmargini: itemize. (line 54) * \leftmarginii: itemize. (line 54) * \leftmarginiii: itemize. (line 54) * \leftmarginiv: itemize. (line 54) * \leftmarginv: itemize. (line 54) * \leftmarginvi: itemize. (line 54) -* \Leftrightarrow: Math symbols. (line 341) -* \leftrightarrow: Math symbols. (line 346) -* \leq: Math symbols. (line 351) -* \lfloor: Math symbols. (line 355) +* \Leftrightarrow: Math symbols. (line 347) +* \leftrightarrow: Math symbols. (line 352) +* \leq: Math symbols. (line 357) +* \lfloor: Math symbols. (line 361) * \lg: Math functions. (line 63) -* \lhd: Math symbols. (line 358) +* \lhd: Math symbols. (line 364) * \lim: Math functions. (line 66) * \liminf: Math functions. (line 69) * \limsup: Math functions. (line 72) @@ -12101,101 +15629,110 @@ Command Index (line 33) * \linewidth <1>: Page layout parameters. (line 34) -* \listoffigures: Tables of contents. (line 16) -* \listoftables: Tables of contents. (line 16) -* \listparindent: list. (line 138) -* \ll: Math symbols. (line 366) +* \listoffigures: Table of contents etc.. + (line 6) +* \listoftables: Table of contents etc.. + (line 6) +* \listparindent: list. (line 141) +* \ll: Math symbols. (line 372) * \ln: Math functions. (line 75) -* \lnot: Math symbols. (line 370) +* \lnot: Math symbols. (line 376) * \LoadClass: Class and package commands. - (line 144) + (line 148) * \LoadClassWithOptions: Class and package commands. - (line 144) + (line 148) * \location: \location. (line 6) * \log: Math functions. (line 78) -* \longleftarrow: Math symbols. (line 373) -* \longleftrightarrow: Math symbols. (line 378) -* \longmapsto: Math symbols. (line 382) -* \longrightarrow: Math symbols. (line 387) -* \lor: Math symbols. (line 392) -* \lq: Text symbols. (line 39) -* \makebox: \makebox. (line 6) +* \longleftarrow: Math symbols. (line 379) +* \longleftrightarrow: Math symbols. (line 384) +* \longmapsto: Math symbols. (line 388) +* \longrightarrow: Math symbols. (line 393) +* \lor: Math symbols. (line 398) +* \lq: Text symbols. (line 40) +* \mainmatter: \frontmatter & \mainmatter & \backmatter. + (line 6) +* \makebox: \mbox & \makebox. (line 6) * \makebox (for picture): \makebox (picture). (line 6) * \makeglossary: Glossaries. (line 6) +* \makeglossary <1>: Glossaries. (line 43) * \makeindex: Indexes. (line 6) -* \makelabel: list. (line 53) +* \makelabel: list. (line 60) * \makelabels: \makelabels. (line 6) * \maketitle: \maketitle. (line 6) -* \mapsto: Math symbols. (line 395) +* \mapsto: Math symbols. (line 401) * \marginpar: Marginal notes. (line 6) * \marginparpush: Page layout parameters. (line 40) * \marginparpush <1>: Page layout parameters. (line 43) -* \marginparpush <2>: Marginal notes. (line 36) -* \marginparsep: Marginal notes. (line 40) +* \marginparpush <2>: Marginal notes. (line 35) +* \marginparsep: Marginal notes. (line 39) * \marginparwidth: Page layout parameters. (line 42) * \marginparwidth <1>: Page layout parameters. (line 43) -* \marginparwidth <2>: Marginal notes. (line 44) +* \marginparwidth <2>: Marginal notes. (line 43) * \marginsep: Page layout parameters. (line 41) * \marginsep <1>: Page layout parameters. (line 43) -* \markboth{LEFT}{RIGHT}: \pagestyle. (line 29) -* \markright{RIGHT}: \pagestyle. (line 36) -* \mathbf: Font styles. (line 112) -* \mathcal: Font styles. (line 128) -* \mathdollar: Math miscellany. (line 40) -* \mathellipsis: Math miscellany. (line 43) -* \mathnormal: Font styles. (line 125) -* \mathparagraph: Math miscellany. (line 46) -* \mathring: Math accents. (line 40) -* \mathrm: Font styles. (line 109) -* \mathsection: Math miscellany. (line 49) -* \mathsf: Font styles. (line 115) -* \mathsterling: Math miscellany. (line 52) -* \mathtt: Font styles. (line 118) -* \mathunderscore: Math miscellany. (line 55) -* \mathversion: Font styles. (line 130) +* \markboth{LEFT-HEAD}{RIGHT-HEAD}: \pagestyle. (line 75) +* \markright{RIGHT}: \pagestyle. (line 84) +* \mathbf: Font styles. (line 110) +* \mathcal: Font styles. (line 126) +* \mathdollar: Math symbols. (line 910) +* \mathnormal: Font styles. (line 123) +* \mathparagraph: Math symbols. (line 913) +* \mathring: Math accents. (line 34) +* \mathrm: Font styles. (line 107) +* \mathsection: Math symbols. (line 916) +* \mathsf: Font styles. (line 113) +* \mathsterling: Math symbols. (line 919) +* \mathtt: Font styles. (line 116) +* \mathunderscore: Math symbols. (line 922) +* \mathversion: Font styles. (line 128) * \max: Math functions. (line 81) -* \mbox: \mbox. (line 6) -* \mbox, and LR mode: Modes. (line 24) +* \mbox: \mbox & \makebox. (line 6) * \mdseries: Font styles. (line 36) -* \medskip: \bigskip \medskip \smallskip. - (line 14) -* \medskipamount: \bigskip \medskip \smallskip. - (line 15) +* \medskip: \bigskip & \medskip & \smallskip. + (line 33) +* \medskipamount: \bigskip & \medskip & \smallskip. + (line 34) * \medspace: Spacing in math mode. - (line 21) -* \mho: Math symbols. (line 399) -* \mid: Math symbols. (line 404) + (line 28) +* \mho: Math symbols. (line 405) +* \mid: Math symbols. (line 410) * \min: Math functions. (line 84) -* \models: Math symbols. (line 414) -* \month: \day \month \year. (line 6) -* \mp: Math symbols. (line 419) -* \mu: Math symbols. (line 422) +* \models: Math symbols. (line 420) +* \month: \day & \month & \year. + (line 6) +* \mp: Math symbols. (line 425) +* \mu: Math symbols. (line 428) * \multicolumn: \multicolumn. (line 6) * \multiput: \multiput. (line 6) -* \nabla: Math symbols. (line 425) +* \nabla: Math symbols. (line 431) * \name: \name. (line 6) -* \natural: Math symbols. (line 428) -* \ne: Math symbols. (line 431) -* \nearrow: Math symbols. (line 434) +* \natural: Math symbols. (line 434) +* \ne: Math symbols. (line 437) +* \nearrow: Math symbols. (line 440) * \NeedsTeXFormat: Class and package commands. - (line 176) -* \neg: Math symbols. (line 437) -* \neq: Math symbols. (line 441) + (line 182) +* \neg: Math symbols. (line 443) +* \negthinspace: Spacing in math mode. + (line 46) +* \negthinspace <1>: \thinspace & \negthinspace. + (line 6) +* \neq: Math symbols. (line 447) * \newcommand: \newcommand & \renewcommand. (line 6) * \newcounter: \newcounter. (line 6) * \newenvironment: \newenvironment & \renewenvironment. (line 6) * \newfont: \newfont. (line 6) +* \newglossaryentry: \newglossaryentry. (line 6) * \newlength: \newlength. (line 6) * \newline: \newline. (line 6) -* \NEWLINE: \(SPACE) and \@. (line 6) +* \NEWLINE: \(SPACE). (line 6) * \newpage: \newpage. (line 6) * \newsavebox: \newsavebox. (line 6) * \newtheorem: \newtheorem. (line 6) @@ -12204,12 +15741,12 @@ Command Index (line 40) * \NG: Additional Latin letters. (line 40) -* \ni: Math symbols. (line 444) +* \ni: Math symbols. (line 450) * \nocite: \nocite. (line 6) * \nocorr: Font styles. (line 21) * \nocorrlist: Font styles. (line 21) -* \nofiles: Tables of contents. (line 21) -* \noindent: \noindent. (line 6) +* \nofiles: \nofiles. (line 6) +* \noindent: \indent & \noindent. (line 6) * \nolinebreak: \linebreak & \nolinebreak. (line 6) * \nonfrenchspacing: \frenchspacing. (line 6) @@ -12217,13 +15754,13 @@ Command Index * \nopagebreak: \pagebreak & \nopagebreak. (line 6) * \normalfont: Font styles. (line 57) -* \normalmarginpar: Marginal notes. (line 24) +* \normalmarginpar: Marginal notes. (line 22) * \normalsfcodes: \normalsfcodes. (line 6) * \normalsize: Font sizes. (line 11) -* \not: Math symbols. (line 449) -* \notin: Math symbols. (line 457) -* \nu: Math symbols. (line 461) -* \nwarrow: Math symbols. (line 464) +* \not: Math symbols. (line 455) +* \notin: Math symbols. (line 463) +* \nu: Math symbols. (line 467) +* \nwarrow: Math symbols. (line 470) * \o (/o): Additional Latin letters. (line 44) * \O (/O): Additional Latin letters. @@ -12236,28 +15773,30 @@ Command Index (line 66) * \oddsidemargin <2>: Page layout parameters. (line 68) -* \odot: Math symbols. (line 467) +* \odot: Math symbols. (line 473) * \oe (oe): Additional Latin letters. (line 48) * \OE (OE): Additional Latin letters. (line 48) -* \oint: Math symbols. (line 472) -* \oldstylenums: Font styles. (line 134) -* \Omega: Math symbols. (line 476) -* \omega: Math symbols. (line 479) -* \ominus: Math symbols. (line 482) +* \oint: Math symbols. (line 478) +* \oldstylenums: Font styles. (line 132) +* \Omega: Math symbols. (line 482) +* \omega: Math symbols. (line 485) +* \ominus: Math symbols. (line 488) * \onecolumn: \onecolumn. (line 6) * \opening: \opening. (line 6) -* \oplus: Math symbols. (line 485) +* \oplus: Math symbols. (line 491) * \OptionNotUsed: Class and package commands. - (line 192) -* \oslash: Math symbols. (line 489) -* \otimes: Math symbols. (line 492) + (line 200) +* \oslash: Math symbols. (line 495) +* \otimes: Math symbols. (line 498) * \oval: \oval. (line 6) -* \overbrace{MATH}: Math miscellany. (line 58) -* \overline{TEXT}: Math miscellany. (line 62) -* \owns: Math symbols. (line 497) -* \P: Text symbols. (line 42) +* \overbrace{MATH}: Over- and Underlining. + (line 40) +* \overline{TEXT}: Over- and Underlining. + (line 21) +* \owns: Math symbols. (line 503) +* \P: Text symbols. (line 43) * \PackageError: Class and package commands. (line 41) * \PackageInfo: Class and package commands. @@ -12281,257 +15820,281 @@ Command Index (line 85) * \paperwidth <1>: Page layout parameters. (line 86) -* \paragraph: Sectioning. (line 14) -* \parallel: Math symbols. (line 502) +* \par: \par. (line 6) +* \paragraph: Sectioning. (line 6) +* \paragraph <1>: \subsubsection & \paragraph & \subparagraph. + (line 6) +* \parallel: Math symbols. (line 508) * \parbox: \parbox. (line 6) -* \parindent: minipage. (line 17) -* \parindent <1>: \indent. (line 6) -* \parsep: list. (line 144) -* \parskip: \parskip. (line 6) +* \parindent: minipage. (line 104) +* \parindent <1>: \indent & \noindent. (line 6) +* \parindent <2>: \parindent & \parskip. + (line 6) +* \parsep: list. (line 147) +* \parskip: \parindent & \parskip. + (line 6) * \parskip example: itemize. (line 73) -* \part: Sectioning. (line 8) -* \partial: Math symbols. (line 505) -* \partopsep: list. (line 153) +* \part: Sectioning. (line 6) +* \part <1>: \part. (line 6) +* \partial: Math symbols. (line 511) +* \partopsep: list. (line 156) * \PassOptionsToClass: Class and package commands. - (line 198) + (line 206) * \PassOptionsToPackage: Class and package commands. - (line 198) + (line 206) * \pdfpageheight: Document class options. (line 40) * \pdfpagewidth: Document class options. (line 40) -* \perp: Math symbols. (line 508) -* \phi: Math symbols. (line 513) -* \Pi: Math symbols. (line 517) -* \pi: Math symbols. (line 520) -* \pm: Math symbols. (line 524) +* \perp: Math symbols. (line 514) +* \phi: Math symbols. (line 519) +* \Pi: Math symbols. (line 523) +* \pi: Math symbols. (line 526) +* \pm: Math symbols. (line 530) * \pmod: Math functions. (line 87) -* \poptabs: tabbing. (line 112) -* \poptabs <1>: tabbing. (line 113) -* \pounds: Text symbols. (line 46) +* \poptabs: tabbing. (line 113) +* \poptabs <1>: tabbing. (line 114) +* \pounds: Text symbols. (line 47) * \Pr: Math functions. (line 90) -* \prec: Math symbols. (line 527) -* \preceq: Math symbols. (line 530) -* \prime: Math symbols. (line 535) -* \printindex: Indexes. (line 28) +* \prec: Math symbols. (line 533) +* \preceq: Math symbols. (line 536) +* \prime: Math symbols. (line 541) +* \printglossaries: Glossaries. (line 6) +* \printglossaries <1>: Glossaries. (line 43) +* \printindex: \printindex. (line 6) +* \printindex <1>: \printindex. (line 10) * \ProcessOptions: Class and package commands. - (line 232) + (line 243) * \ProcessOptions*: Class and package commands. - (line 232) -* \prod: Math symbols. (line 544) -* \propto: Math symbols. (line 547) + (line 243) +* \prod: Math symbols. (line 550) +* \propto: Math symbols. (line 553) * \protect: \protect. (line 6) * \providecommand: \providecommand. (line 6) * \ProvidesClass: Class and package commands. - (line 270) + (line 281) * \ProvidesFile: Class and package commands. - (line 301) + (line 314) * \ProvidesPackage: Class and package commands. - (line 270) + (line 281) * \ps: \ps. (line 6) -* \Psi: Math symbols. (line 550) -* \psi: Math symbols. (line 553) -* \pushtabs: tabbing. (line 115) +* \Psi: Math symbols. (line 556) +* \psi: Math symbols. (line 559) +* \pushtabs: tabbing. (line 116) * \put: \put. (line 6) +* \qbezier: \qbezier. (line 6) * \qquad: Spacing in math mode. - (line 38) + (line 57) +* \qquad <1>: \enspace & \quad & \qquad. + (line 6) * \quad: Spacing in math mode. - (line 32) -* \quotedblbase (,,): Text symbols. (line 50) -* \quotesinglbase (,): Text symbols. (line 51) + (line 51) +* \quad <1>: \enspace & \quad & \qquad. + (line 6) +* \quotedblbase (,,): Text symbols. (line 51) +* \quotesinglbase (,): Text symbols. (line 52) * \r (ring accent): Accents. (line 75) * \raggedbottom: \raggedbottom. (line 6) * \raggedleft: \raggedleft. (line 6) * \raggedright: \raggedright. (line 6) * \raisebox: \raisebox. (line 6) -* \rangle: Math symbols. (line 556) -* \rbrace: Math symbols. (line 560) -* \rbrack: Math symbols. (line 564) -* \rceil: Math symbols. (line 568) -* \Re: Math symbols. (line 571) +* \rangle: Math symbols. (line 562) +* \rbrace: Math symbols. (line 567) +* \rbrack: Math symbols. (line 571) +* \rceil: Math symbols. (line 575) +* \Re: Math symbols. (line 578) * \ref: \ref. (line 6) * \reflectbox: \scalebox. (line 6) -* \refname: thebibliography. (line 26) * \refstepcounter: \refstepcounter. (line 6) * \renewenvironment: \newenvironment & \renewenvironment. (line 6) * \RequirePackage: Class and package commands. - (line 310) + (line 323) * \RequirePackageWithOptions: Class and package commands. - (line 310) + (line 323) * \resizebox: \resizebox. (line 6) * \restorecr: \obeycr & \restorecr. (line 6) -* \restriction: Math symbols. (line 576) -* \revemptyset: Math symbols. (line 581) -* \reversemarginpar: Marginal notes. (line 24) -* \rfloor: Math symbols. (line 586) -* \rhd: Math symbols. (line 590) -* \rho: Math symbols. (line 597) -* \right: Math miscellany. (line 36) -* \Rightarrow: Math symbols. (line 601) -* \rightarrow: Math symbols. (line 605) -* \rightharpoondown: Math symbols. (line 610) -* \rightharpoonup: Math symbols. (line 613) -* \rightleftharpoons: Math symbols. (line 616) -* \rightmargin: list. (line 168) -* \rm: Font styles. (line 79) +* \restriction: Math symbols. (line 583) +* \revemptyset: Math symbols. (line 588) +* \reversemarginpar: Marginal notes. (line 22) +* \rfloor: Math symbols. (line 593) +* \rhd: Math symbols. (line 597) +* \rho: Math symbols. (line 604) +* \right: \left & \right. (line 6) +* \Rightarrow: Math symbols. (line 608) +* \rightarrow: Math symbols. (line 613) +* \rightharpoondown: Math symbols. (line 617) +* \rightharpoonup: Math symbols. (line 620) +* \rightleftharpoons: Math symbols. (line 623) +* \rightmargin: list. (line 171) +* \rm: Font styles. (line 83) * \rmfamily: Font styles. (line 30) * \roman{COUNTER}: \alph \Alph \arabic \roman \Roman \fnsymbol. - (line 23) + (line 27) * \Roman{COUNTER}: \alph \Alph \arabic \roman \Roman \fnsymbol. - (line 26) + (line 32) * \rotatebox: \rotatebox. (line 6) -* \rq: Text symbols. (line 54) +* \rq: Text symbols. (line 55) * \rule: \rule. (line 6) -* \S: Text symbols. (line 57) -* \savebox: \savebox. (line 6) -* \sbox: \sbox. (line 6) -* \sc: Font styles. (line 82) +* \S: Text symbols. (line 58) +* \savebox: \sbox & \savebox. (line 6) +* \sbox: \sbox & \savebox. (line 6) +* \sc: Font styles. (line 86) * \scalebox: \scalebox. (line 6) * \scriptsize: Font sizes. (line 11) * \scshape: Font styles. (line 51) -* \searrow: Math symbols. (line 619) +* \searrow: Math symbols. (line 626) * \sec: Math functions. (line 93) -* \section: Sectioning. (line 11) -* \seename: Indexes. (line 20) +* \section: Sectioning. (line 6) +* \section <1>: \section. (line 6) +* \seename: \index. (line 56) * \selectfont: Low-level font commands. (line 131) * \setcounter: \setcounter. (line 6) * \setlength: \setlength. (line 6) -* \setminus: Math symbols. (line 622) +* \setminus: Math symbols. (line 629) * \settodepth: \settodepth. (line 6) * \settoheight: \settoheight. (line 6) * \settowidth: \settowidth. (line 6) -* \sf: Font styles. (line 85) +* \sf: Font styles. (line 89) * \sffamily: Font styles. (line 48) -* \sharp: Math symbols. (line 628) +* \sharp: Math symbols. (line 635) * \shortstack: \shortstack. (line 6) -* \Sigma: Math symbols. (line 631) -* \sigma: Math symbols. (line 634) +* \Sigma: Math symbols. (line 638) +* \sigma: Math symbols. (line 641) * \signature: \signature. (line 11) -* \sim: Math symbols. (line 638) -* \simeq: Math symbols. (line 641) +* \sim: Math symbols. (line 645) +* \simeq: Math symbols. (line 648) * \sin: Math functions. (line 96) * \sinh: Math functions. (line 99) -* \sl: Font styles. (line 88) -* \sloppy: \sloppy. (line 6) +* \sl: Font styles. (line 92) +* \sloppy: \fussy & \sloppy. (line 6) * \slshape: Font styles. (line 45) * \small: Font sizes. (line 11) -* \smallint: Math symbols. (line 644) -* \smallskip: \bigskip \medskip \smallskip. - (line 19) -* \smallskipamount: \bigskip \medskip \smallskip. - (line 20) -* \smile: Math symbols. (line 648) +* \smallint: Math symbols. (line 651) +* \smallskip: \bigskip & \medskip & \smallskip. + (line 38) +* \smallskipamount: \bigskip & \medskip & \smallskip. + (line 39) +* \smile: Math symbols. (line 655) +* \SPACE: \(SPACE). (line 6) * \spacefactor: \spacefactor. (line 10) -* \spadesuit: Math symbols. (line 651) -* \sqcap: Math symbols. (line 654) -* \sqcup: Math symbols. (line 658) -* \sqrt[ROOT]{ARG}: Math miscellany. (line 66) -* \sqsubset: Math symbols. (line 662) -* \sqsubseteq: Math symbols. (line 667) -* \sqsupset: Math symbols. (line 672) -* \sqsupseteq: Math symbols. (line 677) +* \spadesuit: Math symbols. (line 658) +* \sqcap: Math symbols. (line 661) +* \sqcup: Math symbols. (line 665) +* \sqrt: \sqrt. (line 6) +* \sqsubset: Math symbols. (line 669) +* \sqsubseteq: Math symbols. (line 674) +* \sqsupset: Math symbols. (line 679) +* \sqsupseteq: Math symbols. (line 684) * \ss (ss): Additional Latin letters. (line 52) * \SS (SS): Additional Latin letters. (line 52) -* \stackrel{TEXT}{RELATION}: Math miscellany. (line 71) -* \star: Math symbols. (line 681) +* \stackrel: \stackrel. (line 6) +* \star: Math symbols. (line 689) * \stepcounter: \stepcounter. (line 6) -* \stop: Command line. (line 18) -* \subparagraph: Sectioning. (line 15) -* \subsection: Sectioning. (line 12) -* \subset: Math symbols. (line 688) -* \subseteq: Math symbols. (line 691) -* \subsubsection: Sectioning. (line 13) -* \succ: Math symbols. (line 694) -* \succeq: Math symbols. (line 698) -* \sum: Math symbols. (line 703) +* \stop: Recovering from errors. + (line 23) +* \strut: \strut. (line 6) +* \subparagraph: Sectioning. (line 6) +* \subparagraph <1>: \subsubsection & \paragraph & \subparagraph. + (line 6) +* \subsection: Sectioning. (line 6) +* \subsection <1>: \subsection. (line 6) +* \subset: Math symbols. (line 697) +* \subseteq: Math symbols. (line 700) +* \subsubsection: \subsubsection & \paragraph & \subparagraph. + (line 6) +* \succ: Math symbols. (line 703) +* \succeq: Math symbols. (line 707) +* \sum: Math symbols. (line 712) * \sup: Math functions. (line 102) * \suppressfloats: Floats. (line 87) -* \supset: Math symbols. (line 707) -* \supseteq: Math symbols. (line 710) -* \surd: Math symbols. (line 713) -* \swarrow: Math symbols. (line 718) +* \supset: Math symbols. (line 716) +* \supseteq: Math symbols. (line 719) +* \surd: Math symbols. (line 722) +* \swarrow: Math symbols. (line 727) * \symbol: Symbols by font position. (line 6) * \t (tie-after accent): Accents. (line 81) -* \TAB: \(SPACE) and \@. (line 6) -* \tabbingsep: tabbing. (line 120) -* \tabcolsep: tabular. (line 171) -* \tableofcontents: Tables of contents. (line 6) +* \TAB: \(SPACE). (line 6) +* \tabbingsep: tabbing. (line 121) +* \tabcolsep: tabular. (line 173) +* \tableofcontents: Table of contents etc.. + (line 6) * \tan: Math functions. (line 105) * \tanh: Math functions. (line 108) -* \tau: Math symbols. (line 721) +* \tau: Math symbols. (line 730) * \telephone: \telephone. (line 6) -* \TeX: Text symbols. (line 60) -* \textascendercompwordmark: Text symbols. (line 98) -* \textasciicircum: Text symbols. (line 63) -* \textasciitilde: Text symbols. (line 66) -* \textasteriskcentered: Text symbols. (line 69) +* \TeX: Text symbols. (line 62) +* \textascendercompwordmark: Text symbols. (line 100) +* \textasciicircum: Text symbols. (line 65) +* \textasciitilde: Text symbols. (line 68) +* \textasteriskcentered: Text symbols. (line 71) * \textbackslash: Reserved characters. (line 20) -* \textbackslash <1>: Text symbols. (line 72) -* \textbar: Text symbols. (line 75) -* \textbardbl: Text symbols. (line 78) +* \textbackslash <1>: Text symbols. (line 74) +* \textbar: Text symbols. (line 77) +* \textbardbl: Text symbols. (line 80) * \textbf: Font styles. (line 39) -* \textbigcircle: Text symbols. (line 81) -* \textbraceleft: Text symbols. (line 84) -* \textbraceright: Text symbols. (line 87) -* \textbullet: Text symbols. (line 90) -* \textcapitalcompwordmark: Text symbols. (line 97) -* \textcircled{LETTER}: Text symbols. (line 93) -* \textcompwordmark: Text symbols. (line 96) -* \textcopyright: Text symbols. (line 11) -* \textdagger: Text symbols. (line 103) -* \textdaggerdbl: Text symbols. (line 106) -* \textdollar (or \$): Text symbols. (line 109) -* \textellipsis: Text symbols. (line 35) -* \textemdash (or ---): Text symbols. (line 112) -* \textendash (or --): Text symbols. (line 115) -* \texteuro: Text symbols. (line 118) -* \textexclamdown (or !`): Text symbols. (line 121) +* \textbigcircle: Text symbols. (line 83) +* \textbraceleft: Text symbols. (line 86) +* \textbraceright: Text symbols. (line 89) +* \textbullet: Text symbols. (line 92) +* \textcapitalcompwordmark: Text symbols. (line 99) +* \textcircled{LETTER}: Text symbols. (line 95) +* \textcompwordmark: Text symbols. (line 98) +* \textcopyright: Text symbols. (line 12) +* \textdagger: Text symbols. (line 107) +* \textdaggerdbl: Text symbols. (line 110) +* \textdollar (or \$): Text symbols. (line 113) +* \textellipsis: Text symbols. (line 36) +* \textemdash (or ---): Text symbols. (line 116) +* \textendash (or --): Text symbols. (line 121) +* \texteuro: Text symbols. (line 124) +* \textexclamdown (or !`): Text symbols. (line 130) * \textfloatsep: Floats. (line 123) * \textfloatsep <1>: Floats. (line 124) * \textfraction: Floats. (line 102) * \textfraction <1>: Floats. (line 103) -* \textgreater: Text symbols. (line 124) +* \textgreater: Text symbols. (line 133) * \textheight: Page layout parameters. (line 91) * \textheight <1>: Page layout parameters. (line 92) * \textit: Font styles. (line 33) -* \textleftarrow: Text symbols. (line 130) -* \textless: Text symbols. (line 127) +* \textleftarrow: Text symbols. (line 139) +* \textless: Text symbols. (line 136) * \textmd: Font styles. (line 36) * \textnormal: Font styles. (line 57) -* \textordfeminine: Text symbols. (line 133) -* \textordmasculine: Text symbols. (line 134) -* \textparagraph: Text symbols. (line 43) -* \textperiodcentered: Text symbols. (line 137) -* \textquestiondown (or ?`): Text symbols. (line 140) -* \textquotedblleft (or ``): Text symbols. (line 143) -* \textquotedblright (or ''): Text symbols. (line 146) -* \textquoteleft (or `): Text symbols. (line 149) -* \textquoteright (or '): Text symbols. (line 152) -* \textquotesingle: Text symbols. (line 155) -* \textquotestraightbase: Text symbols. (line 158) -* \textquotestraightdblbase: Text symbols. (line 159) -* \textregistered: Text symbols. (line 162) -* \textrightarrow: Text symbols. (line 165) +* \textordfeminine: Text symbols. (line 142) +* \textordmasculine: Text symbols. (line 143) +* \textparagraph: Text symbols. (line 44) +* \textperiodcentered: Text symbols. (line 146) +* \textquestiondown (or ?`): Text symbols. (line 149) +* \textquotedblleft (or ``): Text symbols. (line 152) +* \textquotedblright (or ''): Text symbols. (line 155) +* \textquoteleft (or `): Text symbols. (line 158) +* \textquoteright (or '): Text symbols. (line 161) +* \textquotesingle: Text symbols. (line 164) +* \textquotestraightbase: Text symbols. (line 167) +* \textquotestraightdblbase: Text symbols. (line 168) +* \textregistered: Text symbols. (line 171) +* \textrightarrow: Text symbols. (line 174) * \textrm: Font styles. (line 30) * \textsc: Font styles. (line 51) +* \textsection: Text symbols. (line 59) * \textsf: Font styles. (line 48) * \textsl: Font styles. (line 45) -* \textsterling: Text symbols. (line 47) -* \textthreequartersemdash: Text symbols. (line 168) -* \texttrademark: Text symbols. (line 171) +* \textsterling: Text symbols. (line 48) +* \textthreequartersemdash: Text symbols. (line 177) +* \texttrademark: Text symbols. (line 180) * \texttt: Font styles. (line 54) -* \texttwelveudash: Text symbols. (line 174) -* \textunderscore: Text symbols. (line 177) +* \texttwelveudash: Text symbols. (line 183) +* \textunderscore: Text symbols. (line 186) * \textup: Font styles. (line 42) -* \textvisiblespace: Text symbols. (line 180) +* \textvisiblespace: Text symbols. (line 189) * \textwidth: Page layout parameters. (line 99) * \textwidth <1>: Page layout parameters. @@ -12540,156 +16103,473 @@ Command Index (line 56) * \TH (TH): Additional Latin letters. (line 56) -* \thanks{TEXT}: \maketitle. (line 21) -* \theta: Math symbols. (line 724) +* \thanks{TEXT}: \maketitle. (line 56) +* \theta: Math symbols. (line 733) * \thicklines: \thicklines. (line 6) * \thickspace: Spacing in math mode. - (line 16) + (line 23) * \thinlines: \thinlines. (line 6) * \thinspace: Spacing in math mode. - (line 25) -* \thinspace <1>: \thinspace. (line 6) + (line 32) +* \thinspace <1>: \thinspace & \negthinspace. + (line 6) * \thispagestyle: \thispagestyle. (line 6) -* \tilde: Math accents. (line 43) -* \times: Math symbols. (line 728) +* \tilde: Math accents. (line 37) +* \times: Math symbols. (line 737) * \tiny: Font sizes. (line 11) -* \title{TEXT}: \maketitle. (line 25) -* \to: Math symbols. (line 732) +* \title{TEXT}: \maketitle. (line 63) +* \to: Math symbols. (line 741) * \today: \today. (line 6) -* \top: Math symbols. (line 736) +* \top: Math symbols. (line 745) * \topfraction: Floats. (line 107) * \topfraction <1>: Floats. (line 108) * \topmargin: Page layout parameters. - (line 123) -* \topsep: list. (line 173) + (line 124) +* \topsep: list. (line 176) * \topskip: Page layout parameters. - (line 130) -* \topskip <1>: Page layout parameters. (line 131) -* \totalheight: Predefined lengths. (line 12) -* \triangle: Math symbols. (line 741) -* \triangleleft: Math symbols. (line 744) -* \triangleright: Math symbols. (line 750) -* \tt: Font styles. (line 91) +* \topskip <1>: Page layout parameters. + (line 132) +* \triangle: Math symbols. (line 750) +* \triangleleft: Math symbols. (line 753) +* \triangleright: Math symbols. (line 759) +* \tt: Font styles. (line 95) * \ttfamily: Font styles. (line 54) * \twocolumn: \twocolumn. (line 6) * \typein: \typein. (line 6) * \typeout: \typeout. (line 6) -* \u (breve accent): Accents. (line 86) -* \unboldmath: Math formulas. (line 29) -* \underbar: Accents. (line 89) -* \underbrace{MATH}: Math miscellany. (line 75) -* \underline{TEXT}: Math miscellany. (line 79) -* \unitlength: picture. (line 10) -* \unlhd: Math symbols. (line 756) -* \unrhd: Math symbols. (line 763) -* \Uparrow: Math symbols. (line 770) -* \uparrow: Math symbols. (line 774) -* \Updownarrow: Math symbols. (line 778) -* \updownarrow: Math symbols. (line 783) -* \upharpoonright: Math symbols. (line 788) -* \uplus: Math symbols. (line 793) +* \u (breve accent): Accents. (line 85) +* \unboldmath: \boldmath & \unboldmath. + (line 6) +* \unboldmath <1>: \boldmath & \unboldmath. + (line 14) +* \underbar: Accents. (line 51) +* \underbrace{MATH}: Over- and Underlining. + (line 26) +* \underline{TEXT}: Over- and Underlining. + (line 9) +* \unitlength: picture. (line 25) +* \unlhd: Math symbols. (line 765) +* \unrhd: Math symbols. (line 772) +* \Uparrow: Math symbols. (line 779) +* \uparrow: Math symbols. (line 783) +* \Updownarrow: Math symbols. (line 787) +* \updownarrow: Math symbols. (line 792) +* \upharpoonright: Math symbols. (line 797) +* \uplus: Math symbols. (line 802) * \upshape: Font styles. (line 42) -* \Upsilon: Math symbols. (line 800) -* \upsilon: Math symbols. (line 803) +* \Upsilon: Math symbols. (line 809) +* \upsilon: Math symbols. (line 812) * \usebox: \usebox. (line 6) * \usecounter: \usecounter. (line 6) * \usefont: Low-level font commands. (line 139) * \usepackage: Additional packages. (line 6) -* \v (breve accent): Accents. (line 97) +* \v (breve accent): Accents. (line 89) * \value: \value. (line 6) -* \vanothing: Math symbols. (line 811) -* \varepsilon: Math symbols. (line 806) -* \varphi: Math symbols. (line 816) -* \varpi: Math symbols. (line 820) -* \varrho: Math symbols. (line 824) -* \varsigma: Math symbols. (line 828) -* \vartheta: Math symbols. (line 832) -* \vdash: Math symbols. (line 836) -* \vdots: Math miscellany. (line 84) -* \vec: Math accents. (line 46) +* \vanothing: Math symbols. (line 820) +* \varepsilon: Math symbols. (line 815) +* \varphi: Math symbols. (line 825) +* \varpi: Math symbols. (line 829) +* \varrho: Math symbols. (line 833) +* \varsigma: Math symbols. (line 837) +* \vartheta: Math symbols. (line 841) +* \vdash: Math symbols. (line 845) +* \vdots: Dots. (line 34) +* \vec: Math accents. (line 40) * \vector: \vector. (line 6) -* \vee: Math symbols. (line 840) +* \vee: Math symbols. (line 849) * \verb: \verb. (line 6) -* \Vert: Math symbols. (line 845) -* \vert: Math symbols. (line 861) +* \Vert: Math symbols. (line 854) +* \vert: Math symbols. (line 870) * \vfill: \vfill. (line 6) * \vline: \vline. (line 6) * \vspace: \vspace. (line 6) -* \wedge: Math symbols. (line 879) -* \widehat: Math accents. (line 49) -* \widetilde: Math accents. (line 52) -* \width: Predefined lengths. (line 6) -* \wp: Math symbols. (line 883) -* \wr: Math symbols. (line 886) -* \Xi: Math symbols. (line 889) -* \xi: Math symbols. (line 892) -* \year: \day \month \year. (line 6) -* \zeta: Math symbols. (line 895) -* \[: Math formulas. (line 16) -* \\ (for center): center. (line 14) +* \wedge: Math symbols. (line 888) +* \widehat: Math accents. (line 43) +* \widetilde: Math accents. (line 46) +* \wp: Math symbols. (line 892) +* \wr: Math symbols. (line 895) +* \Xi: Math symbols. (line 898) +* \xi: Math symbols. (line 901) +* \year: \day & \month & \year. + (line 6) +* \zeta: Math symbols. (line 904) +* \\ (for center): center. (line 16) * \\ (for eqnarray): eqnarray. (line 29) * \\ (for flushright): flushright. (line 12) -* \\ (for \shortstack objects): \shortstack. (line 20) -* \\ (tabbing): tabbing. (line 65) -* \\ for flushleft: flushleft. (line 12) -* \\ for letters: Letters. (line 50) -* \\ for tabular: tabular. (line 34) -* \\ for verse: verse. (line 17) -* \\ for \author: \maketitle. (line 12) -* \\ for \title: \maketitle. (line 26) +* \\ (for \shortstack objects): \shortstack. (line 32) +* \\ (tabbing): tabbing. (line 66) +* \\ for flushleft: flushleft. (line 14) +* \\ for letters: Letters. (line 49) +* \\ for tabular: tabular. (line 35) +* \\ for verse: verse. (line 21) +* \\ for \author: \maketitle. (line 43) +* \\ for \title: \maketitle. (line 64) * \\ force line break: \\. (line 6) * \\* (for eqnarray): eqnarray. (line 37) -* \]: Math formulas. (line 16) * \^: Reserved characters. (line 20) -* \^ (circumflex accent): Accents. (line 33) +* \^ (circumflex accent): Accents. (line 38) * \_: Reserved characters. (line 13) -* \` (grave accent): Accents. (line 37) -* \` (tabbing): tabbing. (line 92) +* \` (grave accent): Accents. (line 42) +* \` (tabbing): tabbing. (line 93) * \{: Reserved characters. (line 13) -* \|: Math symbols. (line 19) +* \|: Math symbols. (line 18) * \}: Reserved characters. (line 13) * \~: Reserved characters. (line 20) -* \~ (tilde accent): Accents. (line 43) +* \~ (tilde accent): Accents. (line 46) * ^: Subscripts & superscripts. (line 6) * _: Subscripts & superscripts. (line 6) +* 'see' and 'see also' index entries: \index. (line 56) * {...} for required arguments: LaTeX command syntax. (line 6) +* ~: ~. (line 6) * a4paper option: Document class options. (line 19) * a5paper option: Document class options. (line 19) * abstract environment: abstract. (line 6) +* abstracts: abstract. (line 6) +* accents: Accents. (line 6) +* accents, mathematical: Math accents. (line 6) +* accessing any character of a font: Symbols by font position. + (line 6) +* acronyms, list of: Glossaries. (line 6) +* acute accent: Accents. (line 27) +* acute accent, math: Math accents. (line 11) +* additional packages, loading: Additional packages. (line 6) +* ae ligature: Additional Latin letters. + (line 16) +* algorithm2e package: tabbing. (line 146) +* align environment, from amsmath: eqnarray. (line 6) +* aligning equations: eqnarray. (line 6) +* alignment via tabbing: tabbing. (line 6) +* amsfonts package: Math formulas. (line 86) +* amsmath package: array. (line 55) +* amsmath package <1>: array. (line 66) +* amsmath package <2>: displaymath. (line 22) +* amsmath package <3>: equation. (line 20) +* amsmath package <4>: theorem. (line 28) +* amsmath package <5>: Math formulas. (line 86) +* amsmath package <6>: Dots. (line 37) +* amsmath package <7>: Math functions. (line 111) +* amsmath package <8>: Colon character & \colon. + (line 15) +* amsmath package <9>: Colon character & \colon. + (line 19) +* amsmath package, replacing eqnarray: eqnarray. (line 6) +* amsthm package: theorem. (line 28) +* amsthm package <1>: \rule. (line 18) +* appendices: \appendix. (line 6) +* appendix: \appendix. (line 6) +* appendix package: \appendix. (line 29) +* aring: Additional Latin letters. + (line 12) +* array (package) package: array. (line 77) * array environment: array. (line 6) +* arrays, math: array. (line 6) +* arrow, left, in text: Text symbols. (line 140) +* arrow, right, in text: Text symbols. (line 175) * article class: Document classes. (line 11) +* ascender height: Text symbols. (line 101) +* ASCII circumflex, in text: Text symbols. (line 66) +* ASCII tilde, in text: Text symbols. (line 69) +* asterisk, centered, in text: Text symbols. (line 72) +* Asymptote package: \line. (line 36) +* Asymptote package <1>: \strut. (line 62) +* Asymptote package <2>: \mbox & \makebox. (line 73) +* at clause, in font definitions: \newfont. (line 19) +* at-sign: \@. (line 6) +* author, for titlepage: \maketitle. (line 43) +* auxiliary file: Output files. (line 33) * b5paper option: Document class options. (line 19) +* babel package: \chapter. (line 71) +* babel package <1>: thebibliography. (line 53) +* babel package <2>: Accents. (line 6) +* babel package <3>: \today. (line 13) +* babel package <4>: Table of contents etc.. + (line 80) +* babel package <5>: \index. (line 56) +* background, colored: Colored pages. (line 6) +* backslash, in text: Text symbols. (line 75) +* bar, double vertical, in text: Text symbols. (line 81) +* bar, vertical, in text: Text symbols. (line 78) +* bar-over accent: Accents. (line 34) +* bar-over accent, math: Math accents. (line 14) +* bar-under accent: Accents. (line 49) +* basics of LaTeX: Overview. (line 6) +* beamer template and class: beamer template. (line 6) +* beginning of document hook: \AtBeginDocument. (line 6) +* bibliography format, open: Document class options. + (line 67) +* bibliography, creating (automatically): Using BibTeX. (line 6) +* bibliography, creating (manually): thebibliography. (line 6) +* bibTeX, using: Using BibTeX. (line 6) +* big circle symbols, in text: Text symbols. (line 84) +* Big point: Units of length. (line 20) +* bigfoot package: Footnotes of footnotes. + (line 6) +* black boxes, omitting: Document class options. + (line 53) +* blackboard bold: Blackboard bold. (line 6) +* bm package: \boldmath & \unboldmath. + (line 32) +* bold font: Font styles. (line 75) +* bold math: Font styles. (line 128) +* bold typewriter, avoiding: description. (line 36) +* boldface mathematics: \boldmath & \unboldmath. + (line 6) * book class: Document classes. (line 11) +* book, back matter: \frontmatter & \mainmatter & \backmatter. + (line 6) +* book, end matter: \frontmatter & \mainmatter & \backmatter. + (line 6) +* book, front matter: \frontmatter & \mainmatter & \backmatter. + (line 6) +* book, main matter: \frontmatter & \mainmatter & \backmatter. + (line 6) * bottomnumber: Floats. (line 130) * bottomnumber <1>: Floats. (line 131) +* box: \mbox & \makebox. (line 6) +* box, allocating new: \newsavebox. (line 6) +* box, colored: Colored boxes. (line 6) +* box, save: \sbox & \savebox. (line 6) +* box, use saved box: \usebox. (line 6) +* boxes: Boxes. (line 6) * bp: Units of length. (line 20) +* brace, left, in text: Text symbols. (line 87) +* brace, right, in text: Text symbols. (line 90) +* breaking lines: Line breaking. (line 6) +* breaking pages: Page breaking. (line 6) +* breaks, multiplication discretionary: \*. (line 6) +* breve accent: Accents. (line 85) +* breve accent, math: Math accents. (line 17) +* bug reporting: About this document. (line 21) +* bullet lists: itemize. (line 6) +* bullet symbol: Math symbols. (line 113) +* bullet, in text: Text symbols. (line 93) +* bulleted lists: itemize. (line 6) +* calligraphic fonts: Calligraphic. (line 6) +* calligraphic letters for math: Font styles. (line 78) +* cap height: Text symbols. (line 101) +* caron accent: Accents. (line 89) +* catcode: \makeatletter & \makeatother. + (line 18) +* category code, character: \makeatletter & \makeatother. + (line 18) * cc: Units of length. (line 33) +* cc list, in letters: \cc. (line 6) +* cedilla accent: Accents. (line 59) * center environment: center. (line 6) +* centered asterisk, in text: Text symbols. (line 72) +* centered equations: Document class options. + (line 57) +* centered period, in text: Text symbols. (line 147) +* centering text, declaration for: \centering. (line 6) +* centering text, environment for: center. (line 6) +* Centimeter: Units of length. (line 24) +* chapter: Sectioning. (line 6) +* chapter <1>: \chapter. (line 6) +* character category code: \makeatletter & \makeatother. + (line 18) +* characters, accented: Accents. (line 6) +* characters, case of: Upper and lower case. + (line 6) +* characters, non-English: Additional Latin letters. + (line 6) +* characters, reserved: Reserved characters. (line 6) +* characters, special: Reserved characters. (line 6) +* check accent: Accents. (line 89) +* check accent, math: Math accents. (line 20) +* Cicero: Units of length. (line 33) +* circle symbol, big, in text: Text symbols. (line 84) +* circled letter, in text: Text symbols. (line 96) +* circumflex accent: Accents. (line 38) +* circumflex accent, math: Math accents. (line 32) +* circumflex, ASCII, in text: Text symbols. (line 66) +* citation key: \bibitem. (line 15) +* class and package commands: Class and package commands. + (line 6) +* class and package difference: Class and package construction. + (line 15) +* class and package structure: Class and package structure. + (line 6) +* class file example: Class and package structure. + (line 36) +* class file layout: Class and package structure. + (line 6) +* class options: Document class options. + (line 6) +* class options <1>: Class and package structure. + (line 6) +* class options <2>: Class and package commands. + (line 66) +* classes of documents: Document classes. (line 6) +* cleveref package: Cross references. (line 38) +* cleveref package <1>: \ref. (line 29) +* cleveref package <2>: \footnotemark. (line 48) * clock option to slides class: Document class options. (line 99) +* closing letters: \closing. (line 6) +* closing quote: Text symbols. (line 56) * cm: Units of length. (line 24) +* code, typesetting: verbatim. (line 6) +* colon character: Colon character & \colon. + (line 6) +* color: Color. (line 6) +* color <1>: Define colors. (line 6) +* color <2>: Colored text. (line 6) +* color <3>: Colored boxes. (line 6) +* color <4>: Colored pages. (line 6) +* color models: Color models. (line 6) +* color package commands: Commands for color. (line 6) +* color package options: Color package options. + (line 6) +* color, define: Define colors. (line 6) +* colored boxes: Colored boxes. (line 6) +* colored page: Colored pages. (line 6) +* colored text: Colored text. (line 6) +* command line: Command line. (line 6) +* command syntax: LaTeX command syntax. + (line 6) +* commands, class and package: Class and package commands. + (line 6) +* commands, defining new ones: \newcommand & \renewcommand. + (line 6) +* commands, defining new ones <1>: \providecommand. (line 6) +* commands, document class: Class and package construction. + (line 6) +* commands, graphics package: Commands for graphics. + (line 6) +* commands, ignore spaces: \ignorespaces & \ignorespacesafterend. + (line 6) +* commands, redefining: \newcommand & \renewcommand. + (line 6) +* commands, star-variants: \@ifstar. (line 6) +* composite word mark, in text: Text symbols. (line 101) +* computer programs, typesetting: verbatim. (line 6) +* configuration, graphics package: Graphics package configuration. + (line 6) +* contents file: Output files. (line 43) +* copyright symbol: Text symbols. (line 13) +* counters, a list of: Counters. (line 6) +* counters, defining new: \newcounter. (line 6) +* counters, getting value of: \value. (line 6) +* counters, printing: \alph \Alph \arabic \roman \Roman \fnsymbol. + (line 6) +* counters, setting: \setcounter. (line 6) +* cprotect package: verbatim. (line 26) +* cprotect package <1>: \verb. (line 45) +* creating pictures: picture. (line 6) +* creating tables: table. (line 6) +* credit footnote: \maketitle. (line 57) +* cross references: Cross references. (line 6) +* cross references, resolving: Output files. (line 33) +* cross referencing with page number: \pageref. (line 6) +* cross referencing, symbolic: \ref. (line 6) +* CTAN: CTAN. (line 6) +* currency, dollar: Text symbols. (line 114) +* currency, euro: Text symbols. (line 125) +* dagger, double, in text: Text symbols. (line 111) +* dagger, in text: Text symbols. (line 16) +* dagger, in text <1>: Text symbols. (line 108) +* DANTE e.V.: CTAN. (line 20) +* date, for titlepage: \maketitle. (line 51) +* date, today's: \today. (line 6) +* datetime package: \today. (line 27) * dbltopnumber: Floats. (line 134) * dbltopnumber <1>: Floats. (line 135) +* dcolumn package: array. (line 77) * dd: Units of length. (line 30) +* define color: Define colors. (line 6) +* defining a new command: \newcommand & \renewcommand. + (line 6) +* defining a new command <1>: \providecommand. (line 6) +* defining new environments: \newenvironment & \renewenvironment. + (line 6) +* defining new fonts: \newfont. (line 6) +* defining new theorems: \newtheorem. (line 6) +* definitions: Definitions. (line 6) +* delimiters, paired: \left & \right. (line 6) +* delim_0: makeindex. (line 110) +* delim_1: makeindex. (line 114) +* delim_2: makeindex. (line 118) +* delim_n: makeindex. (line 122) +* delim_r: makeindex. (line 126) +* description: \newglossaryentry. (line 46) * description environment: description. (line 6) +* description lists, creating: description. (line 6) +* design size, in font definitions: \newfont. (line 19) +* Didot point: Units of length. (line 30) +* dieresis accent: Accents. (line 23) +* difference between class and package: Class and package construction. + (line 15) +* discretionary breaks, multiplication: \*. (line 6) +* discretionary hyphenation: \discretionary. (line 6) +* display math mode: Modes. (line 29) +* displaying quoted text with paragraph indentation: quotation & quote. + (line 6) +* displaying quoted text without paragraph indentation: quotation & quote. + (line 6) * displaymath environment: displaymath. (line 6) * displaymath environment <1>: Math formulas. (line 6) +* document class commands: Class and package construction. + (line 6) +* document class options: Document class options. + (line 6) +* document class, defined: Starting and ending. (line 17) +* document classes: Document classes. (line 6) * document environment: document. (line 6) +* document templates: Document templates. (line 6) +* dollar sign: Text symbols. (line 114) +* dot accent: Accents. (line 30) +* dot over accent, math: Math accents. (line 26) +* dot-over accent: Accents. (line 30) +* dot-under accent: Accents. (line 63) +* dotless i: Accents. (line 17) +* dotless i, math: Math symbols. (line 265) +* dotless j: Accents. (line 17) +* dotless j, math: Math symbols. (line 287) +* dots: Dots. (line 6) +* double angle quotation marks: Text symbols. (line 31) +* double dagger, in text: Text symbols. (line 19) +* double dagger, in text <1>: Text symbols. (line 111) +* double dot accent, math: Math accents. (line 23) +* double guillemets: Text symbols. (line 31) +* double left quote: Text symbols. (line 153) +* double low-9 quotation mark: Text symbols. (line 53) +* double quote, straight base: Text symbols. (line 169) +* double right quote: Text symbols. (line 156) +* double spacing: Low-level font commands. + (line 118) +* double vertical bar, in text: Text symbols. (line 81) +* doublestruck: Blackboard bold. (line 6) * draft option: Document class options. (line 49) * dvipdfmx command: Output files. (line 10) * dvips command: Output files. (line 10) * dvitype command: Output files. (line 10) +* e-dash: Text symbols. (line 122) +* e-TeX: TeX engines. (line 13) +* ellipses: Dots. (line 6) +* ellipsis: Text symbols. (line 37) * em: Units of length. (line 38) +* em <1>: Units of length. (line 38) +* em-dash: Text symbols. (line 117) +* em-dash, three-quarters: Text symbols. (line 178) +* em-dash, two-thirds: Text symbols. (line 184) +* emphasis: Font styles. (line 59) +* enclosure list: \encl. (line 6) +* end of document hook: \AtEndDocument. (line 6) +* ending and starting: Starting and ending. (line 6) +* engines, TeX: TeX engines. (line 6) +* enlarge current page: \enlargethispage. (line 6) * enumerate environment: enumerate. (line 6) +* enumitem package: list. (line 253) +* environment: Starting and ending. (line 25) * environment, abstract: abstract. (line 6) * environment, array: array. (line 6) * environment, center: center. (line 6) @@ -12713,63 +16593,423 @@ Command Index * environment, math <1>: Math formulas. (line 6) * environment, minipage: minipage. (line 6) * environment, picture: picture. (line 6) -* environment, quotation: quotation and quote. (line 6) -* environment, quote: quotation and quote. (line 6) +* environment, quotation: quotation & quote. (line 6) +* environment, quote: quotation & quote. (line 6) * environment, tabbing: tabbing. (line 6) * environment, table: table. (line 6) * environment, tabular: tabular. (line 6) * environment, thebibliography: thebibliography. (line 6) * environment, theorem: theorem. (line 6) +* environment, theorem-like: \newtheorem. (line 6) * environment, titlepage: titlepage. (line 6) * environment, verbatim: verbatim. (line 6) * environment, verse: verse. (line 6) +* environments: Environments. (line 6) +* environments, defining: \newenvironment & \renewenvironment. + (line 6) +* envlab package: \makelabels. (line 55) +* EPS files: Graphics package configuration. + (line 6) +* EPS files <1>: \includegraphics. (line 6) * eqnarray environment: eqnarray. (line 6) * equation environment: equation. (line 6) * equation environment <1>: Math formulas. (line 6) -* etex command: TeX engines. (line 12) +* equation number, cross referencing: \ref. (line 6) +* equation numbers, left vs. right: Document class options. + (line 63) +* equation numbers, omitting: eqnarray. (line 41) +* equations, aligning: eqnarray. (line 6) +* equations, environment for: equation. (line 6) +* equations, flush left vs. centered: Document class options. + (line 57) +* es-zet German letter: Additional Latin letters. + (line 52) +* etex command: TeX engines. (line 13) +* eth, Icelandic letter: Additional Latin letters. + (line 20) +* etoolbox package: Class and package commands. + (line 110) +* euro symbol: Text symbols. (line 125) +* eurosym package: Text symbols. (line 125) * ex: Units of length. (line 38) +* ex <1>: Units of length. (line 38) +* exclamation point, upside-down: Text symbols. (line 131) * executivepaper option: Document class options. (line 19) +* exponent: Subscripts & superscripts. + (line 6) +* extended Latin: Additional Latin letters. + (line 6) +* external files, writing: filecontents. (line 6) +* families, of fonts: Low-level font commands. + (line 21) +* fancyhdr package: Page styles. (line 12) +* fancyhdr package <1>: \pagestyle. (line 13) +* fancyvrb package: tabbing. (line 146) +* fancyvrb package <1>: verbatim. (line 37) +* feminine ordinal symbol: Text symbols. (line 144) * figure environment: figure. (line 6) +* figure number, cross referencing: \ref. (line 6) +* figures, footnotes in: minipage. (line 108) +* figures, inserting: figure. (line 6) +* file, root: Splitting the input. (line 10) * filecontents environment: filecontents. (line 6) * filecontents* environment: filecontents. (line 6) * final option: Document class options. (line 49) * first-latex-doc document: About this document. (line 33) +* fixed-width font: Font styles. (line 96) +* flafter package: Floats. (line 82) * fleqn option: Document class options. (line 49) +* float package: Floats. (line 52) +* float page: Floats. (line 58) +* flush left equations: Document class options. + (line 57) +* flushing floats and starting a page: \clearpage & \cleardoublepage. + (line 6) * flushleft environment: flushleft. (line 6) * flushright environment: flushright. (line 6) -* <http://puszcza.gnu.org.ua/software/latexrefman/> home page: About this document. +* font catalogue: Low-level font commands. + (line 21) +* font commands, low-level: Low-level font commands. + (line 6) +* font size: Low-level font commands. + (line 101) +* font sizes: Font sizes. (line 6) +* font styles: Font styles. (line 6) +* font symbols, by number: Symbols by font position. + (line 6) +* fonts: Fonts. (line 6) +* fonts, new commands for: \newfont. (line 6) +* fonts, script: Calligraphic. (line 6) +* footer style: \pagestyle. (line 6) +* footer, parameters for: Page layout parameters. + (line 6) +* footnote number, cross referencing: \ref. (line 6) +* footnote parameters: \footnote. (line 34) +* footnote, in a table: Footnotes in a table. + (line 6) +* footnote, in section headings: Footnotes in section headings. + (line 6) +* footnote, of a footnote: Footnotes of footnotes. + (line 6) +* footnotes in figures: minipage. (line 108) +* footnotes, creating: Footnotes. (line 6) +* Footnotes, in a minipage: \footnote. (line 62) +* footnotes, symbols instead of numbers: \footnote. (line 24) +* formulas, environment for: equation. (line 6) +* formulas, math: Math formulas. (line 6) +* forward reference: Cross references. (line 27) +* forward references, resolving: Output files. (line 33) +* fraction: \frac. (line 6) +* fragile commands: \protect. (line 6) +* frame rule width: \fbox & \framebox. (line 39) +* frame, line width: \fbox & \framebox. (line 39) +* frame, separation from contents: \fbox & \framebox. (line 44) +* French quotation marks: Text symbols. (line 31) +* functions, math: Math functions. (line 6) +* geometry package: Document class options. + (line 40) +* geometry package <1>: Document class options. + (line 44) +* global options: Document class options. + (line 6) +* global options <1>: Additional packages. (line 15) +* glossaries: Glossaries. (line 6) +* glossary: Glossaries. (line 6) +* glossary, entries: \newglossaryentry. (line 6) +* glossary, entry reference: \gls. (line 6) +* glue register, plain TeX: \newlength. (line 6) +* graphics: Graphics. (line 6) +* graphics <1>: Graphics package configuration. + (line 6) +* graphics <2>: \includegraphics. (line 6) +* graphics package: Graphics. (line 6) +* graphics package <1>: Graphics package configuration. + (line 6) +* graphics package <2>: \includegraphics. (line 6) +* graphics package commands: Commands for graphics. (line 6) +* graphics package options: Graphics package options. + (line 6) +* graphics packages: \line. (line 36) +* graphics, resizing: \scalebox. (line 6) +* graphics, resizing <1>: \resizebox. (line 6) +* graphics, scaling: \scalebox. (line 6) +* graphics, scaling <1>: \resizebox. (line 6) +* grave accent: Accents. (line 42) +* grave accent, math: Math accents. (line 29) +* greater than symbol, in text: Text symbols. (line 134) +* greek letters: Math symbols. (line 6) +* group, and environments: Environments. (line 18) +* group_skip: makeindex. (line 57) +* ha'c<ek accent, math: Math accents. (line 20) +* hacek accent: Accents. (line 89) +* Halmos symbol: \rule. (line 13) +* hat accent: Accents. (line 38) +* hat accent, math: Math accents. (line 32) +* header style: \pagestyle. (line 6) +* header, parameters for: Page layout parameters. + (line 6) +* hello, world: Starting and ending. (line 6) +* here, putting floats: Floats. (line 52) +* home page for manual: About this document. (line 6) +* horizontal space: \hss. (line 6) +* horizontal space, stretchable: \hss. (line 6) +* hungarian umlaut accent: Accents. (line 67) +* hyperref package: \footnotemark. (line 48) +* hyperref package <1>: \footnotemark. (line 57) +* hyperref package <2>: \pagenumbering. (line 45) +* hyperref package <3>: Command line input. (line 10) +* hyphenation, defining: \hyphenation. (line 6) +* hyphenation, discretionary: \discretionary. (line 6) +* hyphenation, forcing: \- (hyphenation). (line 6) +* hyphenation, preventing: \mbox & \makebox. (line 6) +* Icelandic eth: Additional Latin letters. + (line 20) +* Icelandic thorn: Additional Latin letters. + (line 56) +* idx file: \index. (line 106) +* ij letter, Dutch: Additional Latin letters. + (line 32) +* implementations of TeX: TeX engines. (line 6) +* importing graphics: \includegraphics. (line 6) * in: Units of length. (line 17) +* in-line formulas: math. (line 6) * inch: Units of length. (line 17) +* including graphics: \includegraphics. (line 6) +* indent, forcing: \indent & \noindent. (line 6) +* indentation of paragraphs, in minipage: minipage. (line 104) +* indentfirst package: \part. (line 50) +* indentfirst package <1>: \chapter. (line 58) +* indentfirst package <2>: \section. (line 60) +* indentfirst package <3>: \subsection. (line 48) +* indentfirst package <4>: \subsubsection & \paragraph & \subparagraph. + (line 61) +* indentfirst package <5>: \indent & \noindent. (line 48) +* indent_length: makeindex. (line 138) +* indent_space: makeindex. (line 134) +* index entries, 'see' and 'see also': \index. (line 56) +* index entry: \index. (line 6) +* index package: \index. (line 101) +* index, page range: \index. (line 40) +* index, printing: \printindex. (line 6) +* index, processing: makeindex. (line 6) +* index, style file: makeindex. (line 18) +* indexes: Indexes. (line 6) +* infinite horizontal stretch: \hfill. (line 6) +* infinite vertical stretch: \vfill. (line 6) +* inner paragraph mode: Modes. (line 47) +* input file: Splitting the input. (line 6) +* input, on command line: Command line input. (line 6) +* input/output, to terminal: Terminal input/output. + (line 6) +* inserting figures: figure. (line 6) +* insertions of special characters: Special insertions. (line 6) +* internal vertical mode: Modes. (line 38) +* italic correction: \/. (line 6) +* italic font: Font styles. (line 81) * itemize environment: itemize. (line 6) +* item_0: makeindex. (line 81) +* item_01: makeindex. (line 90) +* item_1: makeindex. (line 84) +* item_12: makeindex. (line 100) +* item_2: makeindex. (line 87) +* item_x1: makeindex. (line 94) +* item_x2: makeindex. (line 104) +* JPEG files: Graphics package configuration. + (line 6) +* JPEG files <1>: \includegraphics. (line 6) +* JPG files: Graphics package configuration. + (line 6) +* JPG files <1>: \includegraphics. (line 6) +* justification, ragged left: \raggedleft. (line 6) +* justification, ragged right: \raggedright. (line 6) +* Knuth, Donald E.: Overview. (line 6) +* label: Cross references. (line 6) +* labelled lists, creating: description. (line 6) +* Lamport TeX: Overview. (line 24) +* Lamport, Leslie: Overview. (line 6) * landscape option: Document class options. (line 49) +* landscape orientation: Document class options. + (line 60) * latex command: Output files. (line 10) +* LaTeX logo: Text symbols. (line 22) +* LaTeX overview: Overview. (line 6) +* LaTeX Project team: About this document. (line 17) +* LaTeX vs. LaTeX2e: About this document. (line 13) * latex-doc-ptr document: About this document. (line 30) +* LaTeX2e logo: Text symbols. (line 25) * <latexrefman@tug.org> email address: About this document. (line 17) +* Latin letters, additional: Additional Latin letters. + (line 6) +* layout commands: Layout. (line 6) +* layout, page parameters for: Page layout parameters. + (line 6) +* left angle quotation marks: Text symbols. (line 31) +* left arrow, in text: Text symbols. (line 140) +* left brace, in text: Text symbols. (line 87) +* left quote: Text symbols. (line 41) +* left quote, double: Text symbols. (line 153) +* left quote, single: Text symbols. (line 159) +* left-hand equation numbers: Document class options. + (line 63) +* left-justifying text: \raggedright. (line 6) +* left-justifying text, environment for: flushleft. (line 6) +* left-to-right mode: Modes. (line 16) * legalpaper option: Document class options. (line 19) +* lengths, adding to: \addtolength. (line 6) +* lengths, allocating new: \newlength. (line 6) +* lengths, defining and using: Lengths. (line 6) +* lengths, setting: \setlength. (line 6) * leqno option: Document class options. (line 49) +* less than symbol, in text: Text symbols. (line 137) +* lethead_flag: makeindex. (line 64) +* lethead_prefix: makeindex. (line 73) +* lethead_suffix: makeindex. (line 77) * letter class: Document classes. (line 11) * letter environment: letter. (line 6) * letterpaper option: Document class options. (line 19) +* letters, accented: Accents. (line 6) +* letters, additional Latin: Additional Latin letters. + (line 6) +* letters, ending: \closing. (line 6) +* letters, starting: \opening. (line 6) +* letters, writing: Letters. (line 6) +* line break, forcing: \\. (line 6) +* line breaking: Line breaking. (line 6) +* line breaks, changing: \fussy & \sloppy. (line 6) +* line breaks, forcing: \linebreak & \nolinebreak. + (line 6) +* line breaks, multiplication discretionary: \*. (line 6) +* line breaks, preventing: \linebreak & \nolinebreak. + (line 6) +* lines in tables: tabular. (line 6) +* line_max: makeindex. (line 130) +* lining numerals: Font styles. (line 132) +* lining text up in tables: tabular. (line 6) +* lining text up using tab stops: tabbing. (line 6) * list environment: list. (line 6) -* lR box: picture. (line 71) +* list items, specifying counter: \usecounter. (line 6) +* list of figures file: Output files. (line 43) +* list of tables file: Output files. (line 43) +* listings package: tabbing. (line 146) +* listings package <1>: verbatim. (line 31) +* listings package <2>: \verb. (line 42) +* lists of items: itemize. (line 6) +* lists of items, generic: list. (line 6) +* lists of items, numbered: enumerate. (line 6) +* loading additional packages: Additional packages. (line 6) +* log file: Output files. (line 28) +* logo, LaTeX: Text symbols. (line 22) +* logo, LaTeX2e: Text symbols. (line 25) +* logo, TeX: Text symbols. (line 63) +* long command: Class and package commands. + (line 23) +* low-9 quotation marks, single and double: Text symbols. (line 53) +* low-level font commands: Low-level font commands. + (line 6) +* lowercase: Upper and lower case. + (line 6) +* LR box: picture. (line 103) +* LR mode: Modes. (line 16) * lrbox: lrbox. (line 6) * lshort document: About this document. (line 41) -* lualatex command: TeX engines. (line 29) +* ltugboat class: tugboat template. (line 6) +* lualatex command: TeX engines. (line 30) +* LuaTeX: TeX engines. (line 30) +* m-width: Units of length. (line 38) +* macro package, LaTeX as: Overview. (line 11) +* macron accent: Accents. (line 34) +* macron accent, math: Math accents. (line 14) +* macros2e package: \makeatletter & \makeatother. + (line 39) +* Madsen, Lars: eqnarray. (line 6) +* make a box: \mbox & \makebox. (line 6) +* makeindex: makeindex. (line 6) +* makeindex program: makeindex. (line 6) +* makeindex, style file: makeindex. (line 18) +* making a title page: titlepage. (line 6) +* making paragraphs: Making paragraphs. (line 6) +* marginal notes: Marginal notes. (line 6) +* masculine ordinal symbol: Text symbols. (line 144) +* matching brackets: \left & \right. (line 6) +* matching parentheses: \left & \right. (line 6) +* math accents: Math accents. (line 6) * math environment: math. (line 6) * math environment <1>: Math formulas. (line 6) +* math formulas: Math formulas. (line 6) +* math functions: Math functions. (line 6) +* math miscellany: Math miscellany. (line 6) +* math mode: Modes. (line 26) +* math mode, entering: Math formulas. (line 6) +* math mode, spacing: Spacing in math mode. + (line 6) +* math symbols: Math symbols. (line 6) +* math, bold: Font styles. (line 128) +* mathtools package: Math formulas. (line 86) +* mathtools package <1>: Over- and Underlining. + (line 45) +* MetaPost package: \line. (line 36) +* mfirstuc package: Upper and lower case. + (line 45) +* mhchem package: Subscripts & superscripts. + (line 62) +* Millimeter: Units of length. (line 27) * minipage environment: minipage. (line 6) +* minipage, creating a: minipage. (line 6) +* minted package: tabbing. (line 146) +* minted package <1>: verbatim. (line 31) +* minted package <2>: \verb. (line 42) +* mirrors of CTAN: CTAN. (line 20) * mm: Units of length. (line 27) +* modes: Modes. (line 6) +* monospace font: Font styles. (line 96) +* moving arguments: \protect. (line 19) +* mpfootnote counter: \footnote. (line 62) * mu: Units of length. (line 49) +* mu, math unit: Units of length. (line 49) +* multicolumn text: \twocolumn. (line 6) +* multilingual support: Accents. (line 6) +* multind package: Indexes. (line 32) +* multiplication, discretionary: \*. (line 6) +* name: \newglossaryentry. (line 43) +* NBSP: ~. (line 6) +* nested \include, not allowed: \include & \includeonly. + (line 104) +* new class commands: Class and package construction. + (line 6) +* new command, check: Class and package commands. + (line 21) +* new command, definition: Class and package commands. + (line 96) +* new commands, defining: \newcommand & \renewcommand. + (line 6) +* new commands, defining <1>: \providecommand. (line 6) +* new line, output as input: \obeycr & \restorecr. + (line 6) +* new line, starting: \\. (line 6) +* new line, starting (paragraph mode): \newline. (line 6) +* new page, starting: \newpage. (line 6) +* non-English characters: Additional Latin letters. + (line 6) +* notes in the margin: Marginal notes. (line 6) * notitlepage option: Document class options. (line 49) +* null delimiter: \left & \right. (line 6) +* numbered items, specifying counter: \usecounter. (line 6) +* numerals, old-style: Font styles. (line 132) +* oblique font: Font styles. (line 93) +* oe ligature: Additional Latin letters. + (line 48) +* ogonek: Accents. (line 71) +* old-style numerals: Font styles. (line 132) +* one-column output: \onecolumn. (line 6) * onecolumn option: Document class options. (line 78) * oneside option: Document class options. @@ -12778,307 +17018,1050 @@ Command Index (line 78) * openbib option: Document class options. (line 49) +* opening quote: Text symbols. (line 41) * openright option: Document class options. (line 78) +* OpenType fonts: TeX engines. (line 6) +* options, class: Class and package commands. + (line 66) +* options, color package: Color package options. + (line 6) +* options, command line: Command line options. + (line 6) +* options, document class: Document class options. + (line 6) +* options, document class <1>: Class and package structure. + (line 6) +* options, global: Additional packages. (line 15) +* options, graphics package: Graphics package options. + (line 6) +* options, package: Class and package structure. + (line 6) +* options, package <1>: Class and package commands. + (line 66) +* ordinals, feminine and masculine: Text symbols. (line 144) +* oslash: Additional Latin letters. + (line 44) +* outer paragraph mode: Modes. (line 47) +* overbar accent: Accents. (line 34) +* overdot accent, math: Math accents. (line 26) +* overlining: Over- and Underlining. + (line 6) +* overview of LaTeX: Overview. (line 6) +* package file layout: Class and package structure. + (line 6) +* package options: Class and package structure. + (line 6) +* package options <1>: Class and package commands. + (line 66) +* package, algorithm2e: tabbing. (line 146) +* package, amsfonts: Math formulas. (line 86) +* package, amsmath: array. (line 55) +* package, amsmath <1>: array. (line 66) +* package, amsmath <2>: displaymath. (line 22) +* package, amsmath <3>: equation. (line 20) +* package, amsmath <4>: theorem. (line 28) +* package, amsmath <5>: Math formulas. (line 86) +* package, amsmath <6>: Dots. (line 37) +* package, amsmath <7>: Math functions. (line 111) +* package, amsmath <8>: Colon character & \colon. + (line 15) +* package, amsmath <9>: Colon character & \colon. + (line 19) +* package, amsthm: theorem. (line 28) +* package, amsthm <1>: \rule. (line 18) +* package, appendix: \appendix. (line 29) +* package, array (package): array. (line 77) +* package, Asymptote: \line. (line 36) +* package, Asymptote <1>: \strut. (line 62) +* package, Asymptote <2>: \mbox & \makebox. (line 73) +* package, babel: \chapter. (line 71) +* package, babel <1>: thebibliography. (line 53) +* package, babel <2>: Accents. (line 6) +* package, babel <3>: \today. (line 13) +* package, babel <4>: Table of contents etc.. + (line 80) +* package, babel <5>: \index. (line 56) +* package, bigfoot: Footnotes of footnotes. + (line 6) +* package, bm: \boldmath & \unboldmath. + (line 32) +* package, cleveref: Cross references. (line 38) +* package, cleveref <1>: \ref. (line 29) +* package, cleveref <2>: \footnotemark. (line 48) +* package, cprotect: verbatim. (line 26) +* package, cprotect <1>: \verb. (line 45) +* package, datetime: \today. (line 27) +* package, dcolumn: array. (line 77) +* package, enumitem: list. (line 253) +* package, envlab: \makelabels. (line 55) +* package, etoolbox: Class and package commands. + (line 110) +* package, eurosym: Text symbols. (line 125) +* package, fancyhdr: Page styles. (line 12) +* package, fancyhdr <1>: \pagestyle. (line 13) +* package, fancyvrb: tabbing. (line 146) +* package, fancyvrb <1>: verbatim. (line 37) +* package, flafter: Floats. (line 82) +* package, float: Floats. (line 52) +* package, geometry: Document class options. + (line 40) +* package, geometry <1>: Document class options. + (line 44) +* package, hyperref: \footnotemark. (line 48) +* package, hyperref <1>: \footnotemark. (line 57) +* package, hyperref <2>: \pagenumbering. (line 45) +* package, hyperref <3>: Command line input. (line 10) +* package, indentfirst: \part. (line 50) +* package, indentfirst <1>: \chapter. (line 58) +* package, indentfirst <2>: \section. (line 60) +* package, indentfirst <3>: \subsection. (line 48) +* package, indentfirst <4>: \subsubsection & \paragraph & \subparagraph. + (line 61) +* package, indentfirst <5>: \indent & \noindent. (line 48) +* package, index: \index. (line 101) +* package, listings: tabbing. (line 146) +* package, listings <1>: verbatim. (line 31) +* package, listings <2>: \verb. (line 42) +* package, macros2e: \makeatletter & \makeatother. + (line 39) +* package, mathtools: Math formulas. (line 86) +* package, mathtools <1>: Over- and Underlining. + (line 45) +* package, MetaPost: \line. (line 36) +* package, mfirstuc: Upper and lower case. + (line 45) +* package, mhchem: Subscripts & superscripts. + (line 62) +* package, minted: tabbing. (line 146) +* package, minted <1>: verbatim. (line 31) +* package, minted <2>: \verb. (line 42) +* package, multind: Indexes. (line 32) +* package, pict2e: \line. (line 36) +* package, polyglossia: Accents. (line 6) +* package, polyglossia <1>: \today. (line 13) +* package, polyglossia <2>: Table of contents etc.. + (line 80) +* package, polyglossia <3>: \index. (line 56) +* package, PSTricks: \line. (line 36) +* package, sagetex: Command line options. + (line 62) +* package, setspace: Low-level font commands. + (line 118) +* package, showidx: Indexes. (line 32) +* package, siunitx: ~. (line 32) +* package, symbols: Math symbols. (line 6) +* package, textcase: Upper and lower case. + (line 42) +* package, textcomp: Font styles. (line 132) +* package, TikZ: \line. (line 36) +* package, TikZ <1>: \strut. (line 62) +* package, TikZ <2>: \mbox & \makebox. (line 72) +* package, titlesec: \part. (line 54) +* package, titlesec <1>: \chapter. (line 79) +* package, titlesec <2>: \section. (line 64) +* package, titlesec <3>: \subsection. (line 52) +* package, titlesec <4>: \subsubsection & \paragraph & \subparagraph. + (line 65) +* package, tocbibbind: Table of contents etc.. + (line 91) +* package, tocloft: Table of contents etc.. + (line 91) +* package, ulem: Over- and Underlining. + (line 15) +* package, url: \verb. (line 38) +* package, verbatimbox: verbatim. (line 37) +* packages, loading additional: Additional packages. (line 6) +* page break, forcing: \pagebreak & \nopagebreak. + (line 6) +* page break, preventing: \pagebreak & \nopagebreak. + (line 6) +* page breaking: Page breaking. (line 6) +* page layout parameters: Page layout parameters. + (line 6) +* page number, cross referencing: \pageref. (line 6) +* page numbering style: \pagenumbering. (line 6) +* page style, this page: \thispagestyle. (line 6) +* page styles: Page styles. (line 6) +* page, colored: Colored pages. (line 6) +* page_precedence: makeindex. (line 143) +* paired delimiters: \left & \right. (line 6) +* paragraph: Sectioning. (line 6) +* paragraph <1>: \subsubsection & \paragraph & \subparagraph. + (line 6) +* paragraph indentation: \parindent & \parskip. + (line 6) +* paragraph indentation, in minipage: minipage. (line 104) +* paragraph indentations in quoted text: quotation & quote. (line 6) +* paragraph indentations in quoted text, omitting: quotation & quote. + (line 6) +* paragraph mode: Modes. (line 12) +* paragraph mode <1>: \parbox. (line 6) +* paragraph symbol: Text symbols. (line 45) +* paragraph, ending: \par. (line 6) +* paragraph, in a box: \parbox. (line 6) +* paragraphs: Making paragraphs. (line 6) +* parameters, for footnotes: \footnote. (line 34) +* parameters, page layout: Page layout parameters. + (line 6) +* part: Sectioning. (line 6) +* part <1>: \part. (line 6) * pc: Units of length. (line 14) +* PDF graphic files: Graphics package configuration. + (line 6) +* PDF graphic files <1>: \includegraphics. (line 6) * pdflatex command: Output files. (line 20) +* pdfTeX: Output files. (line 20) +* pdfTeX engine: TeX engines. (line 13) +* period, abbreviation-ending: \@. (line 6) +* period, centered, in text: Text symbols. (line 147) +* period, sentence-ending: \@. (line 6) +* period, spacing after: \@. (line 6) +* pica: Units of length. (line 14) +* pict2e package: \line. (line 36) +* pict2e package <1>: \line. (line 36) * picture environment: picture. (line 6) +* pictures, creating: picture. (line 6) +* pilcrow: Text symbols. (line 45) +* placement of floats: Floats. (line 31) +* plural: \newglossaryentry. (line 51) +* PNG files: Graphics package configuration. + (line 6) +* PNG files <1>: \includegraphics. (line 6) +* poetry, an environment for: verse. (line 6) +* Point: Units of length. (line 10) +* polish l: Additional Latin letters. + (line 36) +* polyglossia package: Accents. (line 6) +* polyglossia package <1>: \today. (line 13) +* polyglossia package <2>: Table of contents etc.. + (line 80) +* polyglossia package <3>: \index. (line 56) +* portrait orientation: Document class options. + (line 60) +* position, in picture: picture. (line 77) +* positional parameter: \newcommand & \renewcommand. + (line 52) +* postamble: makeindex. (line 54) +* postscript, in letters: \ps. (line 6) +* pounds symbol: Text symbols. (line 49) +* preamble: makeindex. (line 50) +* preamble, defined: Starting and ending. (line 22) +* prompt, *: Recovering from errors. + (line 23) +* pronunciation: Overview. (line 24) +* PSTricks package: \line. (line 36) * pt: Units of length. (line 10) -* quotation environment: quotation and quote. (line 6) -* quote environment: quotation and quote. (line 6) +* quad: Spacing in math mode. + (line 51) +* question mark, upside-down: Text symbols. (line 150) +* quotation environment: quotation & quote. (line 6) +* quotation marks, French: Text symbols. (line 31) +* quote environment: quotation & quote. (line 6) +* quote, single straight: Text symbols. (line 165) +* quote, straight base: Text symbols. (line 169) +* quoted text with paragraph indentation, displaying: quotation & quote. + (line 6) +* quoted text without paragraph indentation, displaying: quotation & quote. + (line 6) +* radical: \sqrt. (line 6) +* ragged left text: \raggedleft. (line 6) +* ragged left text, environment for: flushright. (line 6) +* ragged right text: \raggedright. (line 6) +* ragged right text, environment for: flushleft. (line 6) +* redefining environments: \newenvironment & \renewenvironment. + (line 6) +* reference, forward: Cross references. (line 27) +* references, resolving forward: Output files. (line 33) +* registered symbol: Text symbols. (line 172) +* relation, text above: \stackrel. (line 6) +* remarks in the margin: Marginal notes. (line 6) * report class: Document classes. (line 11) -* secnumdepth counter: Sectioning. (line 47) +* reporting bugs: About this document. (line 21) +* reserved characters: Reserved characters. (line 6) +* resizing: \scalebox. (line 6) +* resizing <1>: \resizebox. (line 6) +* right angle quotation marks: Text symbols. (line 31) +* right arrow, in text: Text symbols. (line 175) +* right brace, in text: Text symbols. (line 90) +* right quote: Text symbols. (line 56) +* right quote, double: Text symbols. (line 156) +* right quote, single: Text symbols. (line 162) +* right-hand equation numbers: Document class options. + (line 63) +* right-justifying text: \raggedleft. (line 6) +* right-justifying text, environment for: flushright. (line 6) +* ring accent: Accents. (line 75) +* ring accent, math: Math accents. (line 35) +* robust commands: \protect. (line 6) +* roman font: Font styles. (line 84) +* root file: Splitting the input. (line 10) +* roots: \sqrt. (line 6) +* rotating graphics: \rotatebox. (line 6) +* rotating text: \rotatebox. (line 6) +* rotation: \rotatebox. (line 6) +* row, tabbing: tabbing. (line 46) +* rubber lengths, defining new: \newlength. (line 6) +* running header and footer: Page layout parameters. + (line 6) +* running header and footer style: \pagestyle. (line 6) +* sagetex package: Command line options. + (line 62) +* sans serif font: Font styles. (line 90) +* Scaled point: Units of length. (line 36) +* scaling: \scalebox. (line 6) +* scaling <1>: \resizebox. (line 6) +* script fonts: Calligraphic. (line 6) +* script letters for math: Font styles. (line 78) +* secnumdepth: Sectioning. (line 62) +* secnumdepth counter: Sectioning. (line 63) +* section: Sectioning. (line 6) +* section <1>: \section. (line 6) +* section number, cross referencing: \ref. (line 6) +* section numbers, printing: Sectioning. (line 63) +* section symbol: Text symbols. (line 60) +* section, redefining: \@startsection. (line 6) +* sectioning commands: Sectioning. (line 6) +* sectioning, part: \part. (line 6) +* series, of fonts: Low-level font commands. + (line 48) +* setspace package: Low-level font commands. + (line 118) +* setting counters: \setcounter. (line 6) +* shapes, of fonts: Low-level font commands. + (line 88) +* sharp S letters: Additional Latin letters. + (line 52) +* showidx package: Indexes. (line 32) +* simulating typed text: verbatim. (line 6) +* single angle quotation marks: Text symbols. (line 31) +* single guillemets: Text symbols. (line 31) +* single left quote: Text symbols. (line 159) +* single low-9 quotation mark: Text symbols. (line 53) +* single quote, straight: Text symbols. (line 165) +* single right quote: Text symbols. (line 162) +* siunitx package: ~. (line 32) +* sizes of text: Font sizes. (line 6) +* skip register, plain TeX: \newlength. (line 6) +* slanted font: Font styles. (line 93) * slides class: Document classes. (line 11) +* sloppypar: sloppypar. (line 6) +* sloppypar environment: sloppypar. (line 6) +* small caps font: Font styles. (line 87) +* sort: \newglossaryentry. (line 55) * sp: Units of length. (line 36) +* space, hard: ~. (line 6) +* space, inserting horizontal: \hss. (line 6) +* space, inserting vertical: \addvspace. (line 6) +* space, negative thin: \thinspace & \negthinspace. + (line 6) +* space, thin: \thinspace & \negthinspace. + (line 6) +* space, unbreakable: ~. (line 6) +* space, vertical: \vspace. (line 6) +* spaces: Spaces. (line 6) +* spaces, ignore around commands: \ignorespaces & \ignorespacesafterend. + (line 6) +* spacing within math mode: Spacing in math mode. + (line 6) +* spacing, inter-sentence: \frenchspacing. (line 6) +* spacing, inter-sentence <1>: \normalsfcodes. (line 6) +* Spanish ordinals, feminine and masculine: Text symbols. (line 144) +* special characters: Reserved characters. (line 6) +* special characters <1>: Additional Latin letters. + (line 6) +* special insertions: Special insertions. (line 6) +* specifier, float placement: Floats. (line 31) +* splitting the input file: Splitting the input. (line 6) +* square root: \sqrt. (line 6) +* stack math: \stackrel. (line 6) +* star-variants, commands: \@ifstar. (line 6) +* starred form, defining new commands: \newcommand & \renewcommand. + (line 25) +* starting a new page: \newpage. (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: \clearpage & \cleardoublepage. + (line 6) +* sterling symbol: Text symbols. (line 49) +* straight double quote, base: Text symbols. (line 169) +* straight quote, base: Text symbols. (line 169) +* straight single quote: Text symbols. (line 165) +* stretch, infinite horizontal: \hfill. (line 6) +* stretch, infinite vertical: \vfill. (line 6) +* stretch, omitting vertical: \raggedbottom. (line 6) +* strut: \strut. (line 6) +* styles of text: Font styles. (line 6) +* styles, page: Page styles. (line 6) +* subparagraph: Sectioning. (line 6) +* subparagraph <1>: \subsubsection & \paragraph & \subparagraph. + (line 6) +* subscript: Subscripts & superscripts. + (line 6) +* subsection: Sectioning. (line 6) +* subsection <1>: \subsection. (line 6) +* subsubsection: \subsubsection & \paragraph & \subparagraph. + (line 6) +* superscript: Subscripts & superscripts. + (line 6) +* symbol: \newglossaryentry. (line 59) +* symbols package: Math symbols. (line 6) +* symbols, boldface: \boldmath & \unboldmath. + (line 6) +* symbols, math: Math symbols. (line 6) +* symbols, text: Text symbols. (line 6) +* tab stops, using: tabbing. (line 6) * tabbing environment: tabbing. (line 6) * table environment: table. (line 6) +* table of contents entry, manually adding: \addcontentsline. (line 6) +* table of contents file: Output files. (line 43) +* table of contents, avoiding footnotes: Footnotes in section headings. + (line 6) +* table of contents, creating: Table of contents etc.. + (line 6) +* table of contents, sectioning numbers printed: Sectioning. (line 74) +* tables, creating: table. (line 6) * tabular environment: tabular. (line 6) -* textcomp package: Text symbols. (line 6) +* template, article: article template. (line 6) +* template, beamer: beamer template. (line 6) +* template, book: book template. (line 6) +* template, book <1>: Larger book template. + (line 6) +* template, TUGboat: tugboat template. (line 6) +* templates, document: Document templates. (line 6) +* terminal input/output: Terminal input/output. + (line 6) +* TeX logo: Text symbols. (line 63) +* text symbols: Text symbols. (line 6) +* text, resizing: \scalebox. (line 6) +* text, resizing <1>: \resizebox. (line 6) +* text, scaling: \scalebox. (line 6) +* text, scaling <1>: \resizebox. (line 6) +* textcase package: Upper and lower case. + (line 42) +* textcomp package: Font styles. (line 132) +* textcomp package <1>: Text symbols. (line 6) +* thanks, for titlepage: \maketitle. (line 57) * thebibliography environment: thebibliography. (line 6) * theorem environment: theorem. (line 6) +* theorem-like environment: \newtheorem. (line 6) +* theorems, defining: \newtheorem. (line 6) +* theorems, typesetting: theorem. (line 6) +* thin space: Spacing in math mode. + (line 32) +* thin space <1>: \thinspace & \negthinspace. + (line 6) +* thin space, negative: Spacing in math mode. + (line 46) +* thin space, negative <1>: \thinspace & \negthinspace. + (line 6) +* thorn, Icelandic letter: Additional Latin letters. + (line 56) +* three-quarters em-dash: Text symbols. (line 178) +* tie: ~. (line 6) +* tie-after accent: Accents. (line 81) +* TikZ package: \line. (line 36) +* TikZ package <1>: \strut. (line 62) +* TikZ package <2>: \mbox & \makebox. (line 72) +* tilde accent: Accents. (line 46) +* tilde accent, math: Math accents. (line 38) +* tilde, ASCII, in text: Text symbols. (line 69) +* title page, separate or run-in: Document class options. + (line 71) +* title pages, creating: titlepage. (line 6) +* title, for titlepage: \maketitle. (line 64) * titlepage environment: titlepage. (line 6) * titlepage option: Document class options. (line 49) +* titles, making: \maketitle. (line 6) +* titlesec package: \part. (line 54) +* titlesec package <1>: \chapter. (line 79) +* titlesec package <2>: \section. (line 64) +* titlesec package <3>: \subsection. (line 52) +* titlesec package <4>: \subsubsection & \paragraph & \subparagraph. + (line 65) +* tocbibbind package: Table of contents etc.. + (line 91) +* tocdepth: Sectioning. (line 73) +* tocdepth counter: Sectioning. (line 74) +* tocloft package: Table of contents etc.. + (line 91) +* today's date: \today. (line 6) +* tombstone: \rule. (line 13) * topmargin: Page layout parameters. - (line 124) + (line 125) * topnumber: Floats. (line 138) * topnumber <1>: Floats. (line 139) * totalnumber: Floats. (line 142) * totalnumber <1>: Floats. (line 143) +* trademark symbol: Text symbols. (line 181) +* transcript file: Output files. (line 28) +* TrueType fonts: TeX engines. (line 6) +* TUGboat template: tugboat template. (line 6) +* two-column output: \twocolumn. (line 6) +* two-thirds em-dash: Text symbols. (line 184) * twocolumn option: Document class options. (line 78) * twoside option: Document class options. (line 78) +* type styles: Font styles. (line 6) +* typed text, simulating: verbatim. (line 6) +* typeface sizes: Font sizes. (line 6) +* typefaces: Fonts. (line 6) +* typewriter font: Font styles. (line 96) +* typewriter labels in lists: description. (line 36) +* ulem package: Over- and Underlining. + (line 15) +* umlaut accent: Accents. (line 23) +* underbar: Accents. (line 51) +* underlining: Over- and Underlining. + (line 6) +* underscore, in text: Text symbols. (line 187) +* Unicode input, native: TeX engines. (line 6) +* units, of length: Units of length. (line 6) +* unofficial nature of this manual: About this document. (line 17) +* unordered lists: itemize. (line 6) +* uppercase: Upper and lower case. + (line 6) +* url package: \verb. (line 38) +* using BibTeX: Using BibTeX. (line 6) * usrguide official documentation: About this document. (line 36) +* UTF-8: TeX engines. (line 6) +* variables, a list of: Counters. (line 6) +* vector symbol, math: Math accents. (line 41) * verbatim environment: verbatim. (line 6) +* verbatim text: verbatim. (line 6) +* verbatim text, inline: \verb. (line 6) +* verbatimbox package: verbatim. (line 37) * verse environment: verse. (line 6) +* vertical bar, double, in text: Text symbols. (line 81) +* vertical bar, in text: Text symbols. (line 78) +* vertical mode: Modes. (line 34) +* vertical space: \vspace. (line 6) +* vertical space <1>: \addvspace. (line 6) +* vertical space before paragraphs: \parindent & \parskip. + (line 6) +* visible space: \verb. (line 31) +* visible space symbol, in text: Text symbols. (line 190) +* weights, of fonts: Low-level font commands. + (line 58) +* white space: Spaces. (line 6) +* wide hat accent, math: Math accents. (line 44) +* wide tilde accent, math: Math accents. (line 47) +* widths, of fonts: Low-level font commands. + (line 70) +* writing external files: filecontents. (line 6) +* writing letters: Letters. (line 6) +* x-height: Units of length. (line 38) * xdvi command: Output files. (line 10) -* xdvipdfmx: TeX engines. (line 38) -* xelatex command: TeX engines. (line 38) +* xdvipdfmx: TeX engines. (line 39) +* xelatex command: TeX engines. (line 39) +* XeTeX: TeX engines. (line 39) +* xindy: makeindex. (line 153) +* xindy program: makeindex. (line 153) Tag Table: -Node: Top1702 -Node: About this document3580 -Node: Overview5440 -Node: Starting and ending6940 -Ref: Starting & ending7075 -Node: Output files8061 -Node: TeX engines10307 -Node: LaTeX command syntax12745 -Node: Environment14579 -Node: Declaration15652 -Node: \makeatletter and \makeatother16038 -Node: \@ifstar18231 -Node: Document classes21060 -Node: Document class options22383 -Node: Additional packages25482 -Node: Class and package construction26113 -Node: Class and package structure27565 -Node: Class and package commands29859 -Node: Fonts47384 -Ref: Typefaces47487 -Node: Font styles47815 -Node: Font sizes52243 -Node: Low-level font commands53474 -Node: Layout58581 -Node: \onecolumn59079 -Node: \twocolumn59410 -Node: \flushbottom63805 -Node: \raggedbottom64905 -Node: Page layout parameters65441 -Node: Floats71139 -Node: Sectioning77604 -Ref: Sectioning/secnumdepth78925 -Node: \@startsection79335 -Ref: \@startsection/name80607 -Ref: \@startsection/level81067 -Ref: \@startsection/indent82138 -Ref: \@startsection/beforeskip82401 -Ref: \@startsection/afterskip83922 -Ref: \@startsection/style85233 -Node: Cross references89069 -Node: \label90935 -Node: \pageref92482 -Node: \ref93152 -Node: Environments93841 -Node: abstract95844 -Node: array97433 -Node: center99691 -Node: \centering101332 -Node: description102704 -Node: displaymath104891 -Node: document106669 -Node: \AtBeginDocument107099 -Node: \AtEndDocument107723 -Node: enumerate108367 -Node: eqnarray111164 -Node: equation113218 -Node: figure113888 -Node: filecontents115700 -Node: flushleft117453 -Node: \raggedright117946 -Node: flushright118505 -Node: \raggedleft119003 -Node: itemize119560 -Node: letter123061 -Node: list123299 -Node: \item135965 -Node: trivlist137218 -Node: math138746 -Node: minipage139052 -Node: picture140244 -Node: \circle144539 -Node: \makebox (picture)144882 -Node: \framebox (picture)145588 -Node: \dashbox146078 -Node: \frame146601 -Node: \line146927 -Node: \linethickness147385 -Node: \thicklines147806 -Node: \thinlines148116 -Node: \multiput148418 -Node: \oval148785 -Node: \put149506 -Node: \shortstack149797 -Node: \vector150271 -Node: quotation and quote150585 -Node: tabbing151792 -Node: table157730 -Node: tabular159157 -Node: \multicolumn166365 -Node: \vline170250 -Node: \cline171595 -Node: \hline172279 -Node: thebibliography172962 -Node: \bibitem174576 -Node: \cite175334 -Node: \nocite175853 -Node: Using BibTeX176141 -Node: theorem177650 -Node: titlepage178036 -Node: verbatim179326 -Node: \verb179965 -Node: verse180515 -Node: Line breaking181009 -Node: \\182106 -Node: \obeycr & \restorecr183144 -Node: \newline183546 -Node: \- (hyphenation)184380 -Node: \discretionary184995 -Node: \fussy185287 -Node: \sloppy185677 -Node: \hyphenation186004 -Node: \linebreak & \nolinebreak186629 -Node: Page breaking187281 -Node: \cleardoublepage187889 -Node: \clearpage188318 -Node: \newpage188615 -Node: \enlargethispage188846 -Node: \pagebreak & \nopagebreak189373 -Node: Footnotes190067 -Node: \footnote191321 -Node: \footnotemark193117 -Node: \footnotetext194361 -Node: Footnotes in a table194851 -Node: Footnotes in section headings196708 -Node: Footnotes of footnotes197564 -Node: Multiple reference to footnotes198331 -Node: Footnote parameters199189 -Node: Definitions199939 -Node: \newcommand & \renewcommand200816 -Node: \providecommand204652 -Node: \newcounter205313 -Node: \newlength206284 -Node: \newsavebox206931 -Node: \newenvironment & \renewenvironment207542 -Node: \newtheorem211902 -Node: \newfont215391 -Node: \protect216956 -Node: \ignorespaces & \ignorespacesafterend219342 -Node: Counters222091 -Node: \alph \Alph \arabic \roman \Roman \fnsymbol223691 -Node: \usecounter225763 -Node: \value226595 -Node: \setcounter227538 -Node: \addtocounter228024 -Node: \refstepcounter228489 -Node: \stepcounter229147 -Node: \day \month \year229489 -Node: Lengths230034 -Node: Units of length231824 -Node: \setlength233318 -Node: \addtolength233722 -Node: \settodepth234040 -Node: \settoheight234331 -Node: \settowidth234628 -Node: Predefined lengths234936 -Node: Making paragraphs235451 -Node: \indent236023 -Node: \noindent236485 -Node: \parskip236994 -Node: Marginal notes237252 -Node: Math formulas239064 -Node: Subscripts & superscripts240848 -Node: Math symbols242186 -Node: Math functions267515 -Node: Math accents268458 -Node: Spacing in math mode269430 -Node: Math miscellany270897 -Node: Modes273447 -Node: \ensuremath275287 -Node: Page styles276203 -Node: \maketitle276697 -Node: \pagenumbering277767 -Node: \pagestyle278263 -Node: \thispagestyle279404 -Node: Spaces279710 -Node: \hspace280580 -Node: \hfill281535 -Node: \spacefactor281927 -Node: \(SPACE) and \@284639 -Ref: \AT284782 -Node: \frenchspacing286259 -Node: \normalsfcodes286875 -Node: \(SPACE) after control sequence287064 -Node: \thinspace287975 -Node: \/288295 -Node: \hrulefill \dotfill289477 -Node: \addvspace290470 -Node: \bigskip \medskip \smallskip291516 -Node: \vfill292408 -Node: \vspace293277 -Node: Boxes294270 -Node: \mbox294982 -Node: \fbox and \framebox295269 -Node: lrbox296073 -Node: \makebox296431 -Node: \parbox297151 -Node: \raisebox298719 -Node: \savebox299316 -Node: \sbox299731 -Node: \usebox300180 -Node: Color300441 -Node: Color package options301285 -Node: Color models302927 -Node: Commands for color305236 -Node: Define colors305651 -Node: Colored text306366 -Node: Colored boxes308741 -Node: Colored pages310180 -Node: Graphics310873 -Node: Graphics package options312992 -Node: Graphics package configuration315744 -Node: \graphicspath316531 -Node: \DeclareGraphicsExtensions319454 -Node: \DeclareGraphicsRule321247 -Node: Commands for graphics324436 -Node: \includegraphics324941 -Node: \rotatebox337967 -Node: \scalebox340762 -Node: \resizebox341814 -Node: Special insertions343006 -Node: Reserved characters343810 -Node: Upper and lower case345011 -Node: Symbols by font position346926 -Node: Text symbols347546 -Node: Accents350994 -Node: Additional Latin letters353536 -Ref: Non-English characters353707 -Node: \rule354724 -Node: \today355153 -Node: Splitting the input355907 -Node: \include356671 -Node: \includeonly357262 -Node: \input357775 -Node: Front/back matter358270 -Node: Tables of contents358475 -Node: \addcontentsline359536 -Node: \addtocontents360554 -Node: Glossaries361087 -Node: Indexes361606 -Node: Letters363239 -Node: \address366917 -Node: \cc367787 -Node: \closing368205 -Node: \encl368516 -Node: \location368931 -Node: \makelabels369200 -Node: \name370201 -Node: \opening370431 -Node: \ps370771 -Node: \signature371060 -Node: \telephone372152 -Node: Terminal input/output372517 -Node: \typein372782 -Node: \typeout373367 -Node: Command line373990 -Node: Document templates374942 -Node: beamer template375349 -Node: book template376000 -Node: tugboat template376368 -Node: Concept Index378732 -Node: Command Index441503 +Node: Top1701 +Node: About this document3519 +Node: Overview5371 +Node: Starting and ending6920 +Ref: Starting & ending7055 +Node: Output files8232 +Ref: output files dvi8511 +Ref: output files pdf9022 +Ref: output files log9345 +Ref: output files aux9542 +Node: TeX engines10511 +Ref: tex engines latex10860 +Ref: tex engines lualatex11692 +Ref: tex engines xelatex12177 +Node: LaTeX command syntax12981 +Node: Environment14824 +Node: Declaration15893 +Node: \makeatletter & \makeatother16277 +Node: \@ifstar18429 +Node: CTAN21214 +Node: Document classes22616 +Ref: document classes article23056 +Ref: document classes book23144 +Ref: document classes letter23329 +Ref: document classes report23405 +Ref: document classes slides23557 +Node: Document class options23939 +Node: Additional packages27021 +Node: Class and package construction27652 +Node: Class and package structure29102 +Node: Class and package commands31393 +Node: Fonts49007 +Ref: Typefaces49110 +Node: Font styles49438 +Node: Font sizes53703 +Node: Low-level font commands55322 +Ref: low level font commands fontencoding55606 +Ref: low level font commands fontfamily56162 +Ref: low level font commands fontseries56927 +Ref: low level font commands fontshape58079 +Ref: low level font commands fontsize58376 +Ref: low level font commands baselinestretch58901 +Ref: low level font commands linespread59610 +Ref: low level font commands selectfont59860 +Ref: low level font commands usefont60186 +Node: Layout60429 +Node: \onecolumn60927 +Node: \twocolumn61286 +Ref: twocolumn columnsep61909 +Ref: twocolumn columnseprule62158 +Ref: twocolumn columnwidth62454 +Ref: twocolumn dbltopfraction63020 +Ref: twocolumn dblfloatpagefraction63963 +Ref: twocolumn dblfloatsep64210 +Ref: twocolumn dbltextfloatsep64515 +Ref: twocolumn dbltopnumber64698 +Node: \flushbottom65663 +Node: \raggedbottom66763 +Node: Page layout parameters67299 +Ref: page layout parameters columnsep67502 +Ref: page layout parameters columnseprule67502 +Ref: page layout parameters columnwidth67502 +Ref: page layout parameters headheight67756 +Ref: page layout parameters headsep67923 +Ref: page layout parameters footskip68236 +Ref: page layout parameters linewidth68570 +Ref: page layout parameters marginparpush68923 +Ref: page layout parameters marginsep68923 +Ref: page layout parameters marginparwidth68923 +Ref: page layout parameters oddsidemargin69963 +Ref: page layout parameters evensidemargin69963 +Ref: page layout parameters paperheight70500 +Ref: page layout parameters paperwidth70726 +Ref: page layout parameters textheight70950 +Ref: page layout parameters textwidth71339 +Ref: page layout parameters hsize72268 +Ref: page layout parameters topmargin72474 +Ref: page layout parameters topskip72778 +Node: Floats72994 +Ref: floats bottomfraction77362 +Ref: floats floatpagefraction77489 +Ref: floats textfraction77600 +Ref: floats topfraction77802 +Ref: floats floatsep78054 +Ref: floats intextsep78164 +Ref: floats textfloatsep78379 +Ref: floats bottomnumber78643 +Ref: floats dbltopnumber78751 +Ref: floats topnumber78870 +Ref: floats totalnumber78974 +Node: Sectioning79503 +Ref: sectioning secnumdepth82236 +Ref: Sectioning/secnumdepth82236 +Ref: sectioning tocdepth82837 +Ref: Sectioning/tocdepth82837 +Node: \part83882 +Node: \chapter86058 +Node: \section89832 +Node: \subsection93099 +Node: \subsubsection & \paragraph & \subparagraph95813 +Node: \appendix98470 +Node: \frontmatter & \mainmatter & \backmatter99760 +Node: \@startsection101101 +Ref: startsection name102478 +Ref: \@startsection/name102478 +Ref: startsection level102932 +Ref: \@startsection/level102932 +Ref: startsection indent103812 +Ref: \@startsection/indent103812 +Ref: startsection beforeskip104075 +Ref: \@startsection/beforeskip104075 +Ref: startsection afterskip105596 +Ref: \@startsection/afterskip105596 +Ref: startsection style106907 +Ref: \@startsection/style106907 +Node: Cross references110613 +Node: \label112706 +Node: \pageref114526 +Node: \ref115316 +Node: Environments116292 +Node: abstract118294 +Node: array119883 +Node: center122775 +Node: \centering124527 +Node: description126024 +Node: displaymath128239 +Node: document130026 +Node: \AtBeginDocument130456 +Node: \AtEndDocument131080 +Node: enumerate131724 +Ref: enumerate enumi133587 +Ref: enumerate enumii133587 +Ref: enumerate enumiii133587 +Ref: enumerate enumiv133587 +Ref: enumerate labelenumi133985 +Ref: enumerate labelenumii133985 +Ref: enumerate labelenumiii133985 +Ref: enumerate labelenumiv133985 +Node: eqnarray134524 +Node: equation136519 +Node: figure137187 +Node: filecontents139341 +Node: flushleft141088 +Node: \raggedright142105 +Node: flushright143303 +Node: \raggedleft144039 +Node: itemize144829 +Ref: itemize labelitemi146051 +Ref: itemize labelitemii146051 +Ref: itemize labelitemiii146051 +Ref: itemize labelitemiv146051 +Ref: itemize leftmargin146893 +Ref: itemize leftmargini146893 +Ref: itemize leftmarginii146893 +Ref: itemize leftmarginiii146893 +Ref: itemize leftmarginiv146893 +Ref: itemize leftmarginv146893 +Ref: itemize leftmarginvi146893 +Node: letter148297 +Node: list148535 +Ref: list makelabel150980 +Ref: list itemindent152364 +Ref: list itemsep152501 +Ref: list labelsep153153 +Ref: list labelwidth153316 +Ref: list leftmargin154327 +Ref: list listparindent155180 +Ref: list parsep155411 +Ref: list partopsep155914 +Ref: list rightmargin156712 +Ref: list topsep156897 +Ref: list beginparpenalty160472 +Ref: list itempenalty160571 +Ref: list endparpenalty160675 +Node: \item161547 +Node: trivlist162798 +Node: math164326 +Node: minipage164632 +Node: picture169910 +Node: \put176379 +Node: \multiput176944 +Node: \qbezier177683 +Node: \graphpaper178608 +Node: \line179402 +Node: \linethickness181366 +Node: \thinlines181815 +Node: \thicklines182226 +Node: \circle182610 +Node: \oval183150 +Node: \shortstack184126 +Node: \vector185523 +Node: \makebox (picture)186439 +Node: \framebox (picture)187621 +Node: \frame189094 +Node: \dashbox189534 +Node: quotation & quote190669 +Node: tabbing191565 +Node: table197558 +Node: tabular199651 +Ref: tabular arrayrulewidth205995 +Ref: tabular arraystrech206235 +Ref: tabular doublerulesep206456 +Ref: tabular tabcolsep206592 +Node: \multicolumn207113 +Node: \vline210972 +Node: \cline212363 +Node: \hline213073 +Node: thebibliography213755 +Node: \bibitem216165 +Node: \cite218440 +Node: \nocite220090 +Node: Using BibTeX220574 +Node: theorem222729 +Node: titlepage223651 +Node: verbatim224934 +Node: \verb226444 +Node: verse228264 +Node: Line breaking229491 +Node: \\230857 +Node: \obeycr & \restorecr233290 +Node: \newline234084 +Node: \- (hyphenation)235113 +Node: \discretionary236751 +Node: \fussy & \sloppy237639 +Node: sloppypar238422 +Node: \hyphenation239568 +Node: \linebreak & \nolinebreak240162 +Node: Page breaking241309 +Node: \clearpage & \cleardoublepage243338 +Node: \newpage244858 +Node: \enlargethispage246156 +Node: \pagebreak & \nopagebreak247112 +Node: Footnotes248778 +Node: \footnote249924 +Ref: footnote footnoterule251192 +Ref: footnote footnotesep251803 +Node: \footnotemark252869 +Node: \footnotetext255208 +Node: Footnotes in section headings255809 +Node: Footnotes in a table256642 +Node: Footnotes of footnotes259564 +Node: Definitions260268 +Node: \newcommand & \renewcommand261145 +Node: \providecommand266375 +Node: \newcounter267521 +Node: \newlength269248 +Node: \newsavebox270070 +Node: \newenvironment & \renewenvironment270986 +Node: \newtheorem276310 +Node: \newfont279882 +Node: \protect281118 +Node: \ignorespaces & \ignorespacesafterend283504 +Node: Counters286242 +Node: \alph \Alph \arabic \roman \Roman \fnsymbol287943 +Node: \usecounter290597 +Node: \value291456 +Node: \setcounter292509 +Node: \addtocounter293105 +Node: \refstepcounter293559 +Node: \stepcounter294228 +Node: \day & \month & \year294774 +Node: Lengths295585 +Node: Units of length299938 +Ref: units of length pt300141 +Ref: units of length pc300263 +Ref: units of length in300286 +Ref: units of length bp300312 +Ref: units of length cm300443 +Ref: units of length mm300465 +Ref: units of length dd300487 +Ref: units of length cc300519 +Ref: units of length sp300544 +Ref: Lengths/em300575 +Ref: Lengths/en300575 +Ref: Lengths/ex300575 +Ref: units of length em300575 +Ref: units of length en300575 +Ref: units of length ex300575 +Node: \setlength301431 +Node: \addtolength302208 +Node: \settodepth303170 +Node: \settoheight303960 +Node: \settowidth304754 +Node: Making paragraphs305533 +Node: \par307182 +Node: \indent & \noindent309027 +Node: \parindent & \parskip310561 +Node: Marginal notes311596 +Ref: marginal notes marginparpush312996 +Ref: marginal notes marginparsep313109 +Ref: marginal notes marginparwidth313241 +Node: Math formulas313590 +Node: Subscripts & superscripts317758 +Node: Math symbols319916 +Node: Blackboard bold346083 +Node: Calligraphic346855 +Node: \boldmath & \unboldmath347427 +Node: Dots348941 +Ref: ellipses cdots349363 +Ref: ellipses ddots349510 +Ref: ellipses ldots349599 +Ref: ellipses vdots350020 +Node: Math functions351206 +Node: Math accents352850 +Node: Over- and Underlining353749 +Node: Spacing in math mode355576 +Ref: spacing in math mode thickspace356508 +Ref: spacing in math mode medspace356600 +Ref: Spacing in math mode/\thinspace356696 +Ref: spacing in math mode thinspace356696 +Ref: spacing in math mode negthinspace357177 +Ref: spacing in math mode quad357375 +Ref: spacing in math mode qquad357631 +Node: Math miscellany357729 +Node: Colon character & \colon358288 +Node: \*358981 +Node: \frac359565 +Node: \left & \right359945 +Node: \sqrt361119 +Node: \stackrel361714 +Node: Modes361987 +Ref: modes paragraph mode362437 +Ref: modes lr mode362633 +Ref: modes math mode363239 +Ref: modes vertical mode363574 +Ref: modes internal vertical mode363745 +Ref: modes inner paragraph mode364218 +Ref: modes outer paragraph mode364218 +Node: \ensuremath364634 +Node: Page styles365339 +Node: \maketitle366102 +Node: \pagenumbering369112 +Node: \pagestyle371100 +Node: \thispagestyle374602 +Node: Spaces375559 +Node: \enspace & \quad & \qquad377000 +Node: \hspace377914 +Node: \hfill379752 +Node: \hss380816 +Node: \spacefactor381510 +Node: \@384897 +Ref: \AT384997 +Node: \frenchspacing386937 +Node: \normalsfcodes387772 +Node: \(SPACE)388019 +Node: ~389654 +Node: \thinspace & \negthinspace392124 +Node: \/393067 +Node: \hrulefill & \dotfill394373 +Node: \bigskip & \medskip & \smallskip395729 +Ref: bigskip396547 +Ref: medskip396751 +Ref: smallskip396960 +Node: \bigbreak & \medbreak & \smallbreak397621 +Node: \strut398607 +Node: \vspace401801 +Node: \vfill403364 +Node: \addvspace404292 +Node: Boxes406290 +Node: \mbox & \makebox406996 +Ref: mbox makebox depth408211 +Ref: mbox makebox height408211 +Ref: mbox makebox width408211 +Ref: mbox makebox totalheight408211 +Node: \fbox & \framebox410305 +Ref: fbox framebox fboxrule411618 +Ref: fbox framebox fboxsep411808 +Node: \parbox412897 +Node: \raisebox415201 +Ref: raisebox depth416164 +Ref: raisebox height416164 +Ref: raisebox width416164 +Ref: raisebox totalheight416164 +Node: \sbox & \savebox416878 +Node: lrbox419844 +Node: \usebox420666 +Node: Color421072 +Node: Color package options421916 +Node: Color models423562 +Ref: color models cmyk424359 +Ref: color models gray424722 +Ref: color models rgb424871 +Ref: color models RGB425208 +Ref: color models named425583 +Node: Commands for color425871 +Node: Define colors426286 +Node: Colored text427011 +Node: Colored boxes429409 +Node: Colored pages430798 +Node: Graphics431491 +Node: Graphics package options433618 +Node: Graphics package configuration436371 +Node: \graphicspath437173 +Node: \DeclareGraphicsExtensions440064 +Node: \DeclareGraphicsRule441832 +Node: Commands for graphics445018 +Node: \includegraphics445523 +Ref: includegraphics width450573 +Ref: includegraphics height451104 +Ref: includegraphics totalheght451510 +Ref: includegraphics keepaspectratio451774 +Ref: includegraphics viewport453460 +Ref: includegraphics trim453830 +Ref: includegraphics clip454286 +Ref: includegraphics page454546 +Ref: includegraphics pagebox454637 +Ref: includegraphics interpolate455502 +Ref: includegraphics quiet455707 +Ref: includegraphics draft455868 +Ref: includegraphics bb456673 +Ref: includegraphics bbllx457071 +Ref: includegraphics bblly457071 +Ref: includegraphics bburx457071 +Ref: includegraphics bbury457071 +Ref: includegraphics natwidth457213 +Ref: includegraphics natheight457213 +Ref: includegraphics hiresbb457399 +Ref: includegraphics type458161 +Ref: includegraphics ext458201 +Ref: includegraphics read458304 +Ref: includegraphics command458421 +Node: \rotatebox458666 +Node: \scalebox461497 +Node: \resizebox462553 +Node: Special insertions463745 +Node: Reserved characters464547 +Node: Upper and lower case465749 +Node: Symbols by font position467664 +Node: Text symbols468284 +Node: Accents472285 +Node: Additional Latin letters474300 +Ref: Non-English characters474471 +Node: \rule475488 +Node: \today476660 +Node: Splitting the input477596 +Node: \endinput479337 +Node: \include & \includeonly480604 +Node: \input484826 +Node: Front/back matter486041 +Node: Table of contents etc.486374 +Node: \addcontentsline490110 +Node: \addtocontents492952 +Node: \nofiles494543 +Node: Indexes495275 +Node: \index496903 +Node: makeindex502018 +Ref: makeindex preamble503686 +Ref: makeindex postamble503826 +Ref: makeindex group skip503911 +Ref: makeindex letheadflag504231 +Ref: makeindex lethead prefix504695 +Ref: makeindex lethead suffix504847 +Ref: makeindex item 0504995 +Ref: makeindex item 1505075 +Ref: makeindex item 2505150 +Ref: makeindex item 01505228 +Ref: makeindex item x1505333 +Ref: makeindex item 12505538 +Ref: makeindex item x2505646 +Ref: makeindex delim 0505806 +Ref: makeindex delim 1505936 +Ref: makeindex delim 2506066 +Ref: makeindex delim n506192 +Ref: makeindex delim r506327 +Ref: makeindex line max506435 +Ref: makeindex indent space506570 +Ref: makeindex indent length506665 +Ref: makeindex page precedence506850 +Node: \printindex507724 +Node: Glossaries508196 +Node: \newglossaryentry510163 +Node: \gls511632 +Node: Letters512426 +Node: \address516053 +Node: \cc516864 +Node: \closing517306 +Node: \encl517620 +Node: \location518034 +Node: \makelabels518298 +Node: \name520615 +Node: \opening520856 +Node: \ps521137 +Node: \signature521426 +Node: \telephone522654 +Node: Terminal input/output523019 +Node: \typein523284 +Node: \typeout524533 +Node: Command line525577 +Node: Command line options527635 +Node: Command line input531177 +Node: Recovering from errors533041 +Node: Document templates534375 +Node: beamer template534820 +Node: article template535474 +Node: book template535901 +Node: Larger book template536382 +Node: tugboat template537868 +Node: Index540239 +Ref: Command Index540325 End Tag Table |