diff options
author | Karl Berry <karl@freefriends.org> | 2024-05-13 19:50:52 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2024-05-13 19:50:52 +0000 |
commit | 7e351853097e2e807b7d99cdc06414485180bea7 (patch) | |
tree | 36b961dfce851932b257026cd8e1168ef134803a /Master/texmf-dist/doc/info/latex2e.info | |
parent | c8c42ed8ffeee2994214c4e5a1c2090265e0fe7b (diff) |
latex2e-help-texinfo (13may24)
git-svn-id: svn://tug.org/texlive/trunk@71252 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/info/latex2e.info')
-rw-r--r-- | Master/texmf-dist/doc/info/latex2e.info | 5698 |
1 files changed, 3187 insertions, 2511 deletions
diff --git a/Master/texmf-dist/doc/info/latex2e.info b/Master/texmf-dist/doc/info/latex2e.info index ec085c49883..f690253c274 100644 --- a/Master/texmf-dist/doc/info/latex2e.info +++ b/Master/texmf-dist/doc/info/latex2e.info @@ -1,8 +1,8 @@ -This is latex2e.info, produced by makeinfo version 7.0.1 from +This is latex2e.info, produced by makeinfo version 7.1 from latex2e.texi. This document is an unofficial reference manual for LaTeX, a document -preparation system, version of January 2023. +preparation system, version of May 2024. This manual was originally translated from ‘LATEX.HLP’ v1.0a in the VMS Help Library. The pre-translation version was written by George D. @@ -44,8 +44,8 @@ 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 January -2023) for LaTeX2e, a document preparation system. +This document is an unofficial reference manual (version of May 2024) +for LaTeX2e, a document preparation system. * Menu: @@ -69,8 +69,8 @@ This document is an unofficial reference manual (version of January * Page styles:: Various styles of page layout. * Spaces:: Horizontal and vertical space. * Boxes:: Making boxes. -* Color:: Defining and using colors. * Graphics:: Importing graphics from outside LaTeX. +* Color:: Defining and using colors. * Special insertions:: Inserting reserved and special characters. * Splitting the input:: Dealing with big files by splitting. * Front/back matter:: Tables of contents, glossaries, indexes. @@ -90,14 +90,14 @@ 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 <https://latexref.xyz>; it has separate + This document's home page is <https://latexref.xyz>; it has separate web pages for each topic. Alternatively. <https://latexref.xyz/dev/latex2e.html> has the entire document on a single page. For other output formats, the sources, and plenty more information, see <https://latexref.xyz/dev/>. - In this document, we will mostly just use ‘LaTeX’ rather than -‘LaTeX2e’, since the previous version of LaTeX (2.09) was frozen decades + In this document, we will mostly just use 'LaTeX' rather than +'LaTeX2e', since the previous version of LaTeX (2.09) was frozen decades ago. LaTeX is maintained by a group of volunteers @@ -106,7 +106,8 @@ the LaTeX project is available from their web site. The present document is completely unofficial and has not been written or reviewed by the LaTeX maintainers. Do not send bug reports or anything else about this document to them. Instead, please send all comments to -<latexrefman@tug.org>. +<latexrefman@tug.org>. This is a public list; you can (un)subscribe, +view the archives, etc., at <https://lists.tug.org/latexrefman>. This document is a reference, not a tutorial. There is a vast array of other information available about LaTeX, at all levels. Here are a @@ -122,8 +123,7 @@ few introductions. A longer introduction to LaTeX, translated to many languages. <https://tug.org/begin.html> - Introduction to the TeX system, including LaTeX, with further - references. + Overview of getting started with TeX and LaTeX. File: latex2e.info, Node: Overview, Next: Document classes, Prev: About this document, Up: Top @@ -142,17 +142,17 @@ with interspersed commands. The default encoding for the text is UTF-8 (as of 2018). The commands specify, for example, how the text should be formatted. - LaTeX is implemented as a set of related so-called “macros” which use -Donald E. Knuth’s TeX typesetting program or one of its derivatives, -collectively known as “engines”. Thus, the user produces output, -typically PDF, by giving the input file to a TeX engine. (The following -sections describe all this in more detail.) + LaTeX is implemented as a set of so-called "macros" (a TeX “format”) +which use Donald E. Knuth's TeX typesetting program or one of its +derivatives, collectively known as "engines". Thus, the user produces +output, typically PDF, by giving the input file to a TeX engine. The +following sections describe all this in more detail. The term LaTeX is also sometimes used to mean the language in which the input document is marked up, that is, to mean the set of commands available to a LaTeX user. - The name LaTeX is short for “Lamport TeX”. It is pronounced LAH-teck + The name LaTeX is short for "Lamport TeX". It is pronounced LAH-teck or LAY-teck, or sometimes LAY-tecks. Inside a document, produce the logo with ‘\LaTeX’. Where use of the logo is not sensible, such as in plain text, write it as ‘LaTeX’. @@ -162,9 +162,11 @@ plain text, write it as ‘LaTeX’. * Starting and ending:: The standard beginning and end of a document. * Output files:: Files produced. * TeX engines:: Programs that can compile TeX and LaTeX. +* Input text:: Input encodings and special characters. * LaTeX command syntax:: General syntax of LaTeX commands. -* Environment:: An area of the source with distinct behavior. -* CTAN:: Our repository. +* Environment syntax:: \begin{envname} ... \end{envname}. +* \DocumentMetadata:: Towards accessible PDF output. +* CTAN:: The TeX world's general repository. File: latex2e.info, Node: Starting and ending, Next: Output files, Up: Overview @@ -173,7 +175,7 @@ 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. This is a small example. +and ending. Here is a small example: \documentclass{article} \begin{document} @@ -184,18 +186,18 @@ 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::. +file ‘article.cls’. You can use any document class available on your +system. A few document classes are defined by LaTeX itself, and a vast +array of others are 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}’ pair defines an + The ‘\begin{document}’ ... ‘\end{document}’ pair defines an “environment”; the ‘document’ environment (and no others) is required in -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 +all LaTeX documents (*note document::). LaTeX provides 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 @@ -208,7 +210,7 @@ File: latex2e.info, Node: Output files, Next: TeX engines, Prev: Starting and ================ LaTeX produces a main output file and at least two auxiliary files. The -main output file’s name ends in either ‘.dvi’ or ‘.pdf’. +main output file's name ends in either ‘.dvi’ or ‘.pdf’. ‘.dvi’ If LaTeX is invoked with the system command ‘latex’ then it @@ -236,8 +238,8 @@ main output file’s name ends in either ‘.dvi’ or ‘.pdf’. ‘.aux’ Auxiliary information is used by LaTeX for things such as cross references. For example, the first time that LaTeX finds a forward - reference—a cross reference to something that has not yet appeared - in the source—it will appear in the output as a doubled question + reference--a cross reference to something that has not yet appeared + in the source--it will appear in the output as a doubled question mark ‘??’. When the referred-to spot does eventually appear in the source then LaTeX writes its location information to this ‘.aux’ file. On the next invocation, LaTeX reads the location information @@ -251,15 +253,15 @@ 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 +File: latex2e.info, Node: TeX engines, Next: Input text, Prev: Output files, Up: Overview 2.3 TeX engines =============== -LaTeX is a large set of commands that is executed by a TeX program -(*note Overview::). Such a set of commands is called a “format”, and is -embodied in a binary ‘.fmt’ file, which can be read much more quickly -than the corresponding TeX source. +LaTeX is a large set of commands (macros) that is executed by a TeX +program (*note Overview::). Such a set of commands is called a +“format”, and is embodied in a binary ‘.fmt’ file, which can be read +much more quickly than the corresponding TeX source. This section gives a terse overview of the TeX programs that are commonly available (see also *note Command line interface::). @@ -272,7 +274,7 @@ commonly available (see also *note Command line interface::). ‘latex’, the main output is a ‘.dvi’ file; as ‘pdflatex’, the main output is a ‘.pdf’ file. - pdfTeX incorporates the e-TeX extensions to Knuth’s original + pdfTeX incorporates the e-TeX extensions to Knuth's original program (<https://ctan.org/pkg/etex>), including additional programming features and bi-directional typesetting, and has plenty of extensions of its own. e-TeX is available on its own as the @@ -280,13 +282,14 @@ commonly available (see also *note Command line interface::). In other TeX distributions, ‘latex’ may invoke e-TeX rather than pdfTeX. In any case, the e-TeX extensions can be assumed to be - available in LaTeX. + available in LaTeX, and a few extensions beyond e-TeX, particularly + for file manipulation. ‘lualatex’ If LaTeX is invoked via the system command ‘lualatex’, the LuaTeX engine is run (<https://ctan.org/pkg/luatex>). This program allows code written in the scripting language Lua (<http://luatex.org>) to - interact with TeX’s typesetting. LuaTeX handles UTF-8 Unicode + interact with TeX's typesetting. LuaTeX handles UTF-8 Unicode input natively, can handle OpenType and TrueType fonts, and produces a ‘.pdf’ file by default. There is also ‘dvilualatex’ to produce a ‘.dvi’ file. @@ -304,6 +307,12 @@ commonly available (see also *note Command line interface::). process is automatic. The ‘.xdv’ file is only useful for debugging. +‘hilatex’ + If LaTeX is invoked via the system command ‘hilatex’, the HiTeX + engine is run (<https://ctan.org/pkg/hitex>). This program + produces its own format, named HINT, designed especially for + high-quality typesetting on mobile devices. + ‘platex’ ‘uplatex’ These commands provide significant additional support for Japanese @@ -311,7 +320,7 @@ commonly available (see also *note Command line interface::). <https://ctan.org/pkg/ptex> and <https://ctan.org/pkg/uptex>. As of 2019, there is a companion ‘-dev’ command and format for all of -the above: +the above, except ‘hitex’: ‘dvilualatex-dev’ ‘latex-dev’ @@ -335,31 +344,195 @@ the above: undergo the same extensive regression testing by the LaTeX team before being released. - For more information, see “The LaTeX release workflow and the LaTeX - ‘dev’ formats” by Frank Mittelbach, ‘TUGboat’ 40:2, + For more information, see "The LaTeX release workflow and the LaTeX + ‘dev’ formats" by Frank Mittelbach, ‘TUGboat’ 40:2, <https://tug.org/TUGboat/tb40-2/tb125mitt-dev.pdf>. -File: latex2e.info, Node: LaTeX command syntax, Next: Environment, Prev: TeX engines, Up: Overview +File: latex2e.info, Node: Input text, Next: LaTeX command syntax, Prev: TeX engines, Up: Overview + +2.4 Input text +============== -2.4 LaTeX command syntax +To a first approximation, most input characters in LaTeX print as +themselves. But there are exceptions, as discussed in the following +sections. + +* Menu: + +* Input encodings:: +* Ligatures:: Combined characters: ff fi fl ffi ffl " " - -- '! '? +* Special characters:: With special meaning: ‘\ { } % $ & _ ^ # ~’ + + +File: latex2e.info, Node: Input encodings, Next: Ligatures, Up: Input text + +2.4.1 Input encodings +--------------------- + +The input to TeX (or any computer program) ultimately consists of a +sequence of bytes. (Nowadays, a byte is almost universally an eight-bit +number, i.e., an integer between 0 and 255, inclusive.) The input +encoding defines how to interpret that sequence of bytes, and thus how +LaTeX behaves. + + Today, by far the most common way to encode text is with “UTF-8”, a +so-called "Unicode Transformation Format" which specifies how to +transform a sequence of 8-bit bytes to Unicode code points, which are +defined independent of any particular representation. The Unicode +encoding defines code points for virtually all characters used today in +written text. + + When TeX was created, Unicode and UTF-8 did not exist and the 7-bit +ASCII encoding was by far the most widely used. So TeX does not require +Unicode for text input. UTF-8 is a superset of ASCII, so a pure 7-bit +ASCII document is also UTF-8. + + Since 2018, the default input encoding for LaTeX is UTF-8. Some +methods for handling documents written in some other encoding, such as +ISO-8859-1 (Latin 1), are explained in *note inputenc package::. + + You can easily find more about all these topics in any introductory +computer text or online. For example, you might start at: +<https://en.wikipedia.org/wiki/Unicode>. + + +File: latex2e.info, Node: Ligatures, Next: Special characters, Prev: Input encodings, Up: Input text + +2.4.2 Ligatures +--------------- + +A “ligature” combines two or more letters (more generally, characters) +into a single glyph. For example, in Latin-based typography, the two +letters ‘f’ and ‘i’ are often combined into the glyph 'fi'. + + TeX supports ligatures automatically. To continue the example, if +the input has the word ‘fine’, written as four separate ASCII +characters, TeX will output the word 'fine' (with the default fonts), +with three typeset glyphs. + + In traditional TeX, the available ligatures, if any, are defined by +the current font. TeX also uses the ligature mechanism to produce a few +typographical characters which were not available in any computer +encoding when TeX was invented. In all, in the original Computer Modern +fonts, the following input character sequences are defined to lead to +ligatures: + +‘ff’ + ff (ff ligature, U+FB00) +‘fi’ + fi (fi ligature, U+FB01) +‘fl’ + fl (fl ligature, U+FB02) +‘ffi’ + ffi (ffi ligature, U+FB03) +‘ffl’ + ffl (ffl ligature, U+FB04) +‘``’ + " (left double quotation mark, U+201C) +‘''’ + " (right double quotation mark, U+201D) +‘--’ + - (en-dash, U+2013) +‘---’ + -- (em-dash, U+2014) +‘!`’ + !' (inverted exclamation mark, U+00A1) +‘?`’ + ?' (inverted question mark, U+00BF) + +(For the f-ligatures above, the text in parentheses shows the individual +characters, so in the typeset output you can easily see the difference +between the ligature and the original character sequence.) + + Nowadays it's usually possible to directly input the punctuation +characters as Unicode characters, and LaTeX supports that (see previous +section). But even today, it can still often be useful to use the ASCII +ligature input form; for example, the difference between an en-dash and +em-dash, as a single glyph, can be all but impossible to discern, but +the difference between two and three ASCII hyphen characters is clear. +Similarly with quotation marks, in some fonts. + + Thus, even the engines with native support for UTF-8, namely LuaTeX +and XeTeX, also support the ASCII ligature input sequences by default, +independent of the font used. They also need to do so for +compatibility. + + By the way, the f-ligatures are also available in Unicode (the +"Alphabetic Presentation Forms" block starting at U+FB00), but it's +almost never desirable to use them as input characters, since in +principle it should be up to the typesetter and the current font whether +to use ligatures. Also, in practice, using them will typically cause +searches to fail, that is, a search for the two characters ‘fi’ will not +be matched by the ligature 'fi' at U+FB01. + + +File: latex2e.info, Node: Special characters, Prev: Ligatures, Up: Input text + +2.4.3 Special characters: ‘\ { } % $ & _ ^ # ~’ +----------------------------------------------- + +Besides ligatures (see previous section), a few individual characters +have special meaning to LaTeX. They are called “reserved characters” or +“special characters”. Here they are: + +‘\’ + Introduces a command name, as seen throughout this manual. + +‘{’ +‘}’ + Delimits a required argument to a command or a level of grouping, + as seen throughout this manual. + +‘%’ + Starts a comment: the ‘%’ and all remaining characters on the + current line are ignored. + +‘$’ + Starts and ends math mode (*note Math formulas::). + +‘&’ + Separates cells in a table (*note tabular::). + +‘_’ +‘^’ + Introduce a subscript or superscript, respectively, in math (*note + Subscripts & superscripts::); they produce an error outside math + mode. As a little-used special feature, two superscript characters + in a row can introduce special notation for an arbitrary character. + +‘#’ + Stands for arguments in a macro definition (*note \newcommand & + \renewcommand::). + +‘~’ + Produces a nonbreakable interword space (*note ~::). + + *Note Printing special characters::, for how to typeset these +characters when you need them literally. + + +File: latex2e.info, Node: LaTeX command syntax, Next: Environment syntax, Prev: Input text, Up: Overview + +2.5 LaTeX command syntax ======================== In the LaTeX input file, a command name starts with a backslash character, ‘\’. The name itself then consists of either (a) a string of letters or (b) a single non-letter. - LaTeX commands names are case sensitive so that ‘\pagebreak’ differs -from ‘\Pagebreak’ (the latter is not a standard command). Most command -names are lowercase, but in any event you must enter all commands in the -same case as they are defined. + LaTeX commands names are case sensitive; for example, ‘\pagebreak’ +differs from ‘\Pagebreak’ (the latter is not a standard command). Most +command names are lowercase, but in any event you must enter all +commands in the same case as they are defined. A command may be followed by zero, one, or more arguments. These arguments may be either required or optional. Required arguments are contained in curly braces, ‘{...}’. Optional arguments are contained in square brackets, ‘[...]’. Generally, but not universally, if the command accepts an optional argument, it comes first, before any -required arguments. +required arguments; optional arguments could come after required +arguments, or both before and after. Inside of an optional argument, to use the character close square bracket (‘]’) hide it inside curly braces, as in ‘\item[closing bracket @@ -368,23 +541,23 @@ argument after it, then to make the first character of the following text be an open square bracket, hide it inside curly braces. LaTeX has the convention that some commands have a ‘*’ form that is -related to the form without a ‘*’, such as ‘\chapter’ and ‘\chapter*’. -The exact difference in behavior varies from command to command. +closely related to the form without a ‘*’, such as ‘\chapter’ and +‘\chapter*’. The difference in behavior varies from command to command. This manual describes all accepted options and ‘*’-forms for the commands it covers (barring unintentional omissions, a.k.a. bugs). As of the 2020-10-01 release of LaTeX, the ‘expl3’ and ‘xparse’ packages are part of the LaTeX2e format. They provide a completely -different underlying programming language syntax. We won’t try to cover -them in this document; see the related package documentation and other +different underlying programming language syntax. We won't try to cover +that in this document; see the related package documentation and other LaTeX manuals. -File: latex2e.info, Node: Environment, Next: CTAN, Prev: LaTeX command syntax, Up: Overview +File: latex2e.info, Node: Environment syntax, Next: \DocumentMetadata, Prev: LaTeX command syntax, Up: Overview -2.5 Environment -=============== +2.6 Environment syntax +====================== Synopsis: @@ -415,31 +588,61 @@ the table to be aligned on its top row) while the second argument is required (it specifies the formatting of columns). \begin{tabular}[t]{r|l} - ... rows of table ... + ... ROWS-OF-TABLE ... \end{tabular} -File: latex2e.info, Node: CTAN, Prev: Environment, Up: Overview +File: latex2e.info, Node: \DocumentMetadata, Next: CTAN, Prev: Environment syntax, Up: Overview + +2.7 ‘\DocumentMetadata’: Producing tagged PDF output +==================================================== + +The ‘\DocumentMetadata’ command was added to LaTeX in 2022. It enables +so-called "tagging" of the PDF output, aiding accessibility of the PDF. +It is supported best with LuaLaTeX; pdfLaTeX and XeLaTeX are supported +as well as possible (*note TeX engines::). + + It is unlike nearly any other command in LaTeX in that it must occur +before the ‘\documentclass’ command that starts a LaTeX document proper +(*note \documentclass::). Therefore it must be called with +‘\RequirePackage’ rather than ‘\usepackage’ (*note \RequirePackage::). + + This support is still in development, so we will not try to list all +the possible settings. Please see the ‘documentmetadata-support-doc’ +document, part of the ‘latex-lab’ package +(<https://ctan.org/pkg/latex-lab>). Here is a simple example which +enables most tagging currently implemented: + + \DocumentMetadata{testphase={phase-III,firstaid}} + \documentclass{article} + ... + + As you can see from the key name ‘testphase’, this is all still in an +experimental phase. The LaTeX developers strongly encourage users to +give it a try and report problems, so it can be improved. + + +File: latex2e.info, Node: CTAN, Prev: \DocumentMetadata, Up: Overview -2.6 CTAN: The Comprehensive TeX Archive Network +2.8 CTAN: The 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 +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 +a package that allows authors to format papers to that publisher's specifications. - In addition to the massive holdings, the ‘ctan.org’ web site offers + In addition to its massive holdings, the ‘ctan.org’ web site offers features such as search by name or by functionality. CTAN is not a single host, but instead is a set of hosts, one of -which is the so-called “master”. The master host actively manages the +which is the so-called "master". The master host actively manages the material, for instance, by accepting uploads of new or updated packages. For many years, it has been hosted by the German TeX group, DANTE e.V. @@ -455,13 +658,13 @@ File: latex2e.info, Node: Document classes, Next: Fonts, Prev: Overview, Up: 3 Document classes ****************** -The document’s overall class is defined with this command, which is -normally the first command in a LaTeX source file. +The document's overall class is defined with the ‘\documentclass’ +command, which is normally the first command in a LaTeX source file. \documentclass[OPTIONS]{CLASS} - The following document CLASS names are built into LaTeX. (Many other -document classes are available as separate packages; *note Overview::.) + The following document CLASS names are built into LaTeX. Many other +document classes are available as separate packages (*note Overview::). ‘article’ For a journal article, a presentation, and miscellaneous general @@ -480,21 +683,21 @@ document classes are available as separate packages; *note Overview::.) technical reports or theses, which may contain several chapters. ‘slides’ - For slide presentations—rarely used nowadays. The ‘beamer’ package - is perhaps the most prevalent (<https://ctan.org/pkg/beamer>). - *Note beamer template::, for a small template for a beamer - document. + For slide presentations--rarely used nowadays. The ‘beamer’ + package is perhaps the most prevalent replacement + (<https://ctan.org/pkg/beamer>). *Note beamer template::, for a + small template for a beamer document. Standard OPTIONS are described in the next section. * Menu: -* Document class options:: Global options. -* Additional packages:: Bring in packages. -* Class and package construction:: Create new classes and packages. +* Document class options:: Global options. +* \usepackage:: Bring in additional packages. +* Class and package creation:: Writing new classes and packages. -File: latex2e.info, Node: Document class options, Next: Additional packages, Up: Document classes +File: latex2e.info, Node: Document class options, Next: \usepackage, Up: Document classes 3.1 Document class options ========================== @@ -505,15 +708,18 @@ specify more than one OPTION, separate them with a comma. \documentclass[OPTION1,OPTION2,...]{CLASS} + LaTeX automatically passes options specified for ‘\documentclass’ on +to any other loaded classes that can handle them. + Here is the list of the standard class options. All of the standard classes except ‘slides’ accept the following -options for selecting the typeface size (default is ‘10pt’): +options for selecting the typeface size; the default is ‘10pt’: 10pt 11pt 12pt All of the standard classes accept these options for selecting the -paper size (these show height by width): +paper size (dimensions are listed height by width): ‘a4paper’ 210 by 297mm (about 8.25 by 11.75 inches) @@ -535,12 +741,12 @@ paper size (these show height by width): When using one of the engines pdfLaTeX, LuaLaTeX, or XeLaTeX (*note TeX engines::), options other than ‘letterpaper’ set the print area but -you must also set the physical paper size. One way to do that is to put -‘\pdfpagewidth=\paperwidth’ and ‘\pdfpageheight=\paperheight’ in your -document’s preamble. - - The ‘geometry’ package provides flexible ways of setting the print -area and physical page size. +you must also set the physical paper size. Usually, the ‘geometry’ +package is the best way to do that; it provides flexible ways of setting +the print area and physical page size. Otherwise, setting the paper +size is engine-dependent. For example, with pdfLaTeX, you could include +‘\pdfpagewidth=\paperwidth’ and ‘\pdfpageheight=\paperheight’ in the +preamble. Miscellaneous other options: @@ -560,7 +766,7 @@ area and physical page size. right side. ‘openbib’ - Use “open” bibliography format. + Use "open" bibliography format. ‘titlepage’ ‘notitlepage’ @@ -583,7 +789,7 @@ area and physical page size. For one-sided printing, the text is centered on the page. For two-sided printing, the ‘\evensidemargin’ (‘\oddsidemargin’) parameter determines the distance on even (odd) numbered pages - between the left side of the page and the text’s left margin, with + between the left side of the page and the text's left margin, with ‘\oddsidemargin’ being 40% of the difference between ‘\paperwidth’ and ‘\textwidth’, and ‘\evensidemargin’ is the remainder. @@ -596,29 +802,39 @@ area and physical page size. the bottom of each note. -File: latex2e.info, Node: Additional packages, Next: Class and package construction, Prev: Document class options, Up: Document classes +File: latex2e.info, Node: \usepackage, Next: Class and package creation, Prev: Document class options, Up: Document classes -3.2 Additional packages -======================= +3.2 ‘\usepackage’: Additional packages +====================================== -Load a package PKG, with the package options given in the -comma-separated list OPTIONS, as here. +To load a package PKG, with the package options given in the +comma-separated list OPTIONS: - \usepackage[OPTIONS]{PKG}. + \usepackage[OPTIONS]{PKG}[MINDATE] To specify more than one package you can separate them with a comma, as in ‘\usepackage{PKG1,PKG2,...}’, or use multiple ‘\usepackage’ commands. - Any options given in the ‘\documentclass’ command that are unknown to -the selected document class are passed on to the packages loaded with -‘\usepackage’. + If the MINDATE optional argument is given, LaTeX gives a warning if +the loaded package has an earlier date, i.e., is too old. The MINDATE +argument must be in the form ‘YYYY/MM/DD’. More info on this: +<https://tex.stackexchange.com/questions/47743>. + + ‘\usepackage’ must be used in the document preamble, between the +‘\documentclass’ declaration and the ‘\begin{document}’. Occasionally +it is necessary to load packages before the ‘\documentclass’; see +‘\RequirePackage’ for that (*note \RequirePackage::). + + Any options given in the global ‘\documentclass’ command that are +unknown to the selected document class are passed on to the packages +loaded with ‘\usepackage’. -File: latex2e.info, Node: Class and package construction, Prev: Additional packages, Up: Document classes +File: latex2e.info, Node: Class and package creation, Prev: \usepackage, Up: Document classes -3.3 Class and package construction -================================== +3.3 Class and package creation +============================== You can create new document classes and new packages. For instance, if your memos must satisfy some local requirements, such as a standard @@ -628,30 +844,33 @@ and begin your documents with ‘\documentclass{smcmemo}’. What separates a package from a document class is that the commands in a package are useful across classes while those in a document class are specific to that class. Thus, a command to set page headers is for -a package while a command to make the page headers say ‘Memo from the -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 & \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. +a package while a command to make the page headers be ‘Memo from the SMC +Math Department’ is for a class. + + Inside of a class or package definition 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 & \makeatother::). This allows you to create commands +that users will not accidentally redefine. + + It is also highly desirable to prefix class- or package-specific +commands with your package name or similar string, to prevent your +definitions from clashing with those from other packages. For instance, +the class ‘smcmemo’ might have commands ‘\smc@tolist’, ‘\smc@fromlist’, +etc. * Menu: * Class and package structure:: Layout of the file. -* Class and package commands:: List of commands. -File: latex2e.info, Node: Class and package structure, Next: Class and package commands, Up: Class and package construction +File: latex2e.info, Node: Class and package structure, Up: Class and package creation 3.3.1 Class and package structure --------------------------------- A class file or package file typically has four parts. + 1. In the “identification part”, the file says that it is a LaTeX package or class and describes itself, using the ‘\NeedsTeXFormat’ and ‘\ProvidesClass’ or ‘\ProvidesPackage’ commands. @@ -687,361 +906,15 @@ file. 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. +class to provide the basis for this class's code. For more, see the official guide for class and package writers, the -Class Guide, at -<https://www.latex-project.org/help/documentation/clsguide.pdf> (much of -the descriptions here derive from this document), or the tutorial -<https://www.tug.org/TUGboat/tb26-3/tb84heff.pdf>. - - -File: latex2e.info, Node: Class and package commands, Prev: Class and package structure, Up: Class and package construction - -3.3.2 Class and package commands --------------------------------- - -These are the commands designed to help writers of classes or packages. - -‘\AtBeginDvi{specials}’ - Save in a box register things that are written to the ‘.dvi’ file - at the beginning of the shipout of the first page of the document. - -‘\AtEndOfClass{CODE}’ -‘\AtEndOfPackage{CODE}’ - Hook to insert CODE to be executed when LaTeX finishes processing - the current class or package. You can use these hooks multiple - times; the ‘code’ will be executed in the order that you called it. - See also *note \AtBeginDocument::. - -‘\CheckCommand{CMD}[NUM][DEFAULT]{DEFINITION}’ -‘\CheckCommand*{CMD}[NUM][DEFAULT]{DEFINITION}’ - Like ‘\newcommand’ (*note \newcommand & \renewcommand::) but does - not define CMD; instead it checks that the current definition of - CMD is exactly as given by DEFINITION and is or is not “long” as - expected. A long command is a command that accepts ‘\par’ within - an argument. The CMD command is expected to be long with the - unstarred version of ‘\CheckCommand’. Raises an error when the - check fails. This allows you to check before you start redefining - ‘cmd’ yourself that no other package has already redefined this - command. - -‘\ClassError{CLASS NAME}{ERROR TEXT}{HELP TEXT}’ -‘\ClassWarning{CLASS NAME}{WARNING TEXT}’ -‘\ClassWarningNoLine{CLASS NAME}{WARNING TEXT}’ -‘\ClassInfo{CLASS NAME}{INFO TEXT}’ -‘\ClassInfoNoLine{CLASS NAME}{INFO TEXT}’ -‘\PackageError{PACKAGE NAME}{ERROR TEXT}{HELP TEXT}’ -‘\PackageWarning{PACKAGE NAME}{WARNING TEXT}’ -‘\PackageWarningNoLine{PACKAGE NAME}{WARNING TEXT}’ -‘\PackageInfo{PACKAGE NAME}{INFO TEXT}’ -‘\PackageInfoNoLine{PACKAGE NAME}{INFO TEXT}’ - Produce an error message, or warning or informational messages. - - For ‘\ClassError’ and ‘\PackageError’ the message is ERROR TEXT, - followed by TeX’s ‘?’ error prompt. If the user then asks for help - by typing ‘h’, they see the HELP TEXT. - - The four warning commands are similar except that they write - WARNING TEXT on the screen with no error prompt. The four info - commands write INFO TEXT only in the transcript file. The ‘NoLine’ - versions do not show the number of the line generating the message, - while the other versions do show that number. - - To format the messages, including the HELP TEXT: use ‘\protect’ to - stop a command from expanding, get a line break with - ‘\MessageBreak’, and get a space with ‘\space’ when a space - character does not allow it, like after a command. Note that LaTeX - appends a period to the messages. - -‘\CurrentOption’ - Expands to the name of the currently-being-processed option. Can - only be used within the CODE argument of either ‘\DeclareOption’ or - ‘\DeclareOption*’. - -‘\DeclareOption{OPTION}{CODE}’ -‘\DeclareOption*{CODE}’ - Make an option available to a user to invoke in their - ‘\documentclass’ command. For example, the ‘smcmemo’ class could - 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 - this will produce a warning like ‘Unused global option(s): - [badoption].’ Change this behavior with the starred version - ‘\DeclareOption*{CODE}’. For example, many classes extend an - existing class, using a command such as ‘\LoadClass{article}’, and - for passing extra options to the underlying class use code such as - this. - - \DeclareOption*{% - \PassOptionsToClass{\CurrentOption}{article}% - } - - Another example is that the class ‘smcmemo’ may allow users to keep - lists of memo recipients in external files. Then the user could - invoke ‘\documentclass[math]{smcmemo}’ and it will read the file - ‘math.memo’. This code handles the file if it exists and otherwise - passes the option to the ‘article’ class. - - \DeclareOption*{\InputIfFileExists{\CurrentOption.memo}{}{% - \PassOptionsToClass{\CurrentOption}{article}}} - -‘\DeclareRobustCommand{CMD}[NUM][DEFAULT]{DEFINITION}’ -‘* \DeclareRobustCommand*{CMD}[NUM][DEFAULT]{DEFINITION}’ - Like ‘\newcommand’ and ‘\newcommand*’ (*note \newcommand & - \renewcommand::) but these declare a robust command, even if some - code within the DEFINITION is fragile. (For a discussion of robust - and fragile commands *note \protect::.) Use this command to define - new robust commands or to redefine existing commands and make them - robust. Unlike ‘\newcommand’ these do not give an error if macro - CMD already exists; instead, a log message is put into the - transcript file if a command is redefined. - - Commands defined this way are a bit less efficient than those - defined using ‘\newcommand’ so unless the command’s data is fragile - and the command is used within a moving argument, use - ‘\newcommand’. - - 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 - the higher level LaTeX ‘\protect’ mechanism, so they do not - incur the slight loss of performance mentioned above, and - 2. They make the same distinction between ‘\new...’, ‘\renew...’, - and ‘\provide...’, as the standard commands, so they do not - just make a log message when you redefine CMD that already - exists, in that case you need to use either ‘\renew...’ or - ‘\provide...’ or you get an error. - -‘\IfFileExists{FILENAME}{TRUE CODE}{FALSE CODE}’ -‘\InputIfFileExists{FILENAME}{TRUE CODE}{FALSE CODE}’ - 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 - current directory do something like ‘\IfFileExists{./filename}{TRUE - CODE}{FALSE CODE}’. If you ask for a filename without a ‘.tex’ - extension then LaTeX will first look for the file by appending the - ‘.tex’; for more on how LaTeX handles file extensions see *note - \input::. - -‘\LoadClass[OPTIONS LIST]{CLASS NAME}[RELEASE DATE]’ -‘\LoadClassWithOptions{CLASS NAME}[RELEASE DATE]’ - Load a class, as with ‘\documentclass[OPTIONS LIST]{CLASS - NAME}[RELEASE INFO]’. An example is - ‘\LoadClass[twoside]{article}’. - - The OPTIONS LIST, if present, is a comma-separated list. The - RELEASE DATE is optional. If present it must have the form - YYYY/MM/DD. - - 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 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 - passed to it via ‘\PassOptionsToClass’. This is a convenience - command that lets you build classes on existing ones, such as the - standard ‘article’ class, without having to track which options - were passed. - -‘\ExecuteOptions{OPTIONS-LIST}’ - For each option OPTION in the OPTIONS-LIST, in order, this command - executes the command ‘\ds@OPTION’. If this command is not defined - then that option is silently ignored. - - It can be used to provide a default option list before - ‘\ProcessOptions’. For example, if in a class file you want the - default to be 11pt fonts then you could specify - ‘\ExecuteOptions{11pt}\ProcessOptions\relax’. - -‘\NeedsTeXFormat{FORMAT}[FORMAT DATE]’ - Specifies the format that this class must be run under. Often - issued as the first line of a class file, and most often used as: - ‘\NeedsTeXFormat{LaTeX2e}’. When a document using that class is - processed, the format name given here must match the format that is - actually being run (including that the FORMAT string is case - sensitive). If it does not match then execution stops with an - error like ‘This file needs format `LaTeX2e' but this is `xxx'.’ - - To specify a version of the format that you know to have certain - 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 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 - used within the CODE argument of either ‘\DeclareOption’ or - ‘\DeclareOption*’. - -‘\PassOptionsToClass{OPTION LIST}{CLASS NAME}’ -‘\PassOptionsToPackage{OPTION LIST}{PACKAGE NAME}’ - Adds the options in the comma-separated list OPTION LIST to the - options used by any future ‘\RequirePackage’ or ‘\usepackage’ - command for package PACKAGE NAME or the class CLASS NAME. - - The reason for these commands is: you may load a package any number - of times with no options but if you want options then you may only - supply them when you first load the package. Loading a package - with options more than once will get you an error like ‘Option - clash for package foo.’ (LaTeX throws an error even if there is no - conflict between the options.) - - 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}’ 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 - ‘graphicx’ package with the option ‘draft’ and also wants to use a - class ‘foo’ that loads the ‘graphicx’ package, but without that - option. The user could start their LaTeX file with - ‘\PassOptionsToPackage{draft}{graphicx}\documentclass{foo}’. - -‘\ProcessOptions’ -‘\ProcessOptions*\@OPTIONS’ - Execute the code for each option that the user has invoked. - Include it in the class file as ‘\ProcessOptions\relax’ (because of - the existence of the starred command). - - Options come in two types. “Local options” have been specified for - this particular package in the OPTIONS argument of - ‘\PassOptionsToPackage{OPTIONS}’, ‘\usepackage[OPTIONS]’, or - ‘\RequirePackage[OPTIONS]’. “Global options” are those given by - the class user in ‘\documentclass[OPTIONS]’ (If an option is - specified both locally and globally then it is local.) - - When ‘\ProcessOptions’ is called for a package ‘pkg.sty’, the - following happens: - 1. For each option OPTION so far declared with ‘\DeclareOption’, - it looks to see if that option is either a global or a local - option for ‘pkg’. If so then it executes the declared code. - This is done in the order in which these options were given in - ‘pkg.sty’. - 2. For each remaining local option, it executes the command - ‘\ds@’OPTION if it has been defined somewhere (other than by a - ‘\DeclareOption’); otherwise, it executes the default option - code given in ‘\DeclareOption*’. If no default option code - has been declared then it gives an error message. This is - done in the order in which these options were specified. - - When ‘\ProcessOptions’ is called for a class it works in the same - way except that all options are local, and the default CODE for - ‘\DeclareOption*’ is ‘\OptionNotUsed’ rather than an error. - - The starred version ‘\ProcessOptions*’ executes the options in the - order specified in the calling commands, rather than in the order - of declaration in the class or package. For a package this means - that the global options are processed first. - -‘\ProvidesClass{CLASS NAME}[RELEASE DATE BRIEF ADDITIONAL INFORMATION]’ -‘\ProvidesClass{CLASS NAME}[RELEASE DATE]’ -‘\ProvidesPackage{PACKAGE NAME}[RELEASE DATE BRIEF ADDITIONAL INFORMATION]’ -‘\ProvidesPackage{PACKAGE NAME}[RELEASE DATE]’ - Identifies the class or package, printing a message to the screen - and the log file. - - 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 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{FILENAME}[ADDITIONAL INFORMATION]’ - Declare a file other than the main class and package files, such as - configuration files or font definition files. Put this command in - that file and you get in the log a string like ‘File: test.config - 2017/10/12 config file for test.cls’ for FILENAME equal to - ‘test.config’ and ADDITIONAL INFORMATION equal to ‘2017/10/12 - config file for test.cls’. - -‘\RequirePackage[OPTION LIST]{PACKAGE NAME}[RELEASE DATE]’ -‘\RequirePackageWithOptions{PACKAGE NAME}[RELEASE DATE]’ - 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 - release date of the package as installed on your system is earlier - than RELEASE DATE then you get a warning like ‘You have requested, - on input line 9, version `2017/07/03' of package jhtest, but only - version `2000/01/01' is available’. - - The ‘\RequirePackageWithOptions’ version uses the list of options - for the current class. This means it ignores any options passed to - it via ‘\PassOptionsToClass’. This is a convenience command to - allow easily building classes on existing ones without having to - track which options were passed. - - The difference between ‘\usepackage’ and ‘\RequirePackage’ is - small. The ‘\usepackage’ command is intended for the document file - while ‘\RequirePackage’ is intended for package and class files. - Thus, using ‘\usepackage’ before the ‘\documentclass’ command - causes LaTeX to give error like ‘\usepackage before - \documentclass’, but you can use ‘\RequirePackage’ there. +Class Guide, at <https://ctan.org/pkg/clsguide> (much of the description +here derives from this document), or the tutorial at +<https://tug.org/TUGboat/tb26-3/tb84heff.pdf>. + + *Note Class and package commands::, for some of the commands +specifically intended for class and package writers. File: latex2e.info, Node: Fonts, Next: Layout, Prev: Document classes, Up: Top @@ -1111,7 +984,7 @@ character codes to the font glyphs that are used to typeset your output. engines::). If you use the ‘xelatex’ or ‘lualatex’ engine then instead use the ‘fontspec’ package. - TeX’s original font family, Computer Modern, has a limited character + TeX's original font family, Computer Modern, has a limited character set. For instance, to make common accented characters you must use ‘\accent’ (*note \accent::) but this disables hyphenation. TeX users have agreed on a number of standards to access the larger sets of @@ -1130,17 +1003,17 @@ to directly enter accented characters into your source file.) blurry or do not magnify well then your fonts may be bitmapped, sometimes called raster or Type 3. You want vector fonts. Use a package such as ‘lmodern’ or ‘cm-super’ to get a font that extends -LaTeX’s default using vector fonts. +LaTeX's default using vector fonts. For each FONT_ENCODING given as an option but not already declared, this package loads the encoding definition files, named ‘FONT_ENCODINGenc.def’. It also sets ‘\encodingdefault’ to be the last encoding in the option list. - These are the common values for FONT_ENCODING. + These are the common values for FONT_ENCODING: ‘OT1’ - The original encoding for TeX. Limited to mostly English + The original 7-bit encoding for TeX. Limited to mostly English characters. ‘OMS, OML’ @@ -1148,14 +1021,14 @@ encoding in the option list. ‘T1’ TeX text extended. Sometimes called the Cork encoding for the - Users Group meeting where it was developed. Gives access to most - European accented characters. The most common option for this + users group meeting where it was developed (1990). Gives access to + most European accented characters. The most common option for this package. ‘TS1’ Text Companion encoding. -LaTeX’s default is to load ‘OML’, ‘T1’, ‘OT1’, and then ‘OMS’, and set +LaTeX's default is to load ‘OML’, ‘T1’, ‘OT1’, and then ‘OMS’, and set the default to ‘OT1’. Even if you do not use accented letters, you may need to specify a @@ -1166,7 +1039,7 @@ family then you may need to load the package that selects your fonts before loading ‘fontenc’, to prevent the system from loading any ‘T1’ encoded fonts from the default. - The LaTeX team reserve encoding names starting with: ‘T’ for the + The LaTeX team reserves encoding names starting with: ‘T’ for the standard text encodings with 256 characters, ‘TS’ for symbols that extend the corresponding T encodings, ‘X’ for test encodings, ‘M’ for standard math encodings with 256 characters, ‘A’ for special @@ -1181,9 +1054,9 @@ is not in effect. * Menu: -* \DeclareFontEncoding:: Define an encoding. -* \DeclareTextAccent:: Define an accent in the encoding. -* \DeclareTextAccentDefault:: Fallback for using an accent in the encoding. +* \DeclareFontEncoding:: Define an encoding. +* \DeclareTextAccent:: Define an accent in the encoding. +* \DeclareTextAccentDefault:: Fallback for using an accent in the encoding. * \DeclareTextCommand & \ProvideTextCommand:: New encoding-specific command. * \DeclareTextCommandDefault & \ProvideTextCommandDefault:: Fallback for encoding-specific commands. * \DeclareTextComposite:: Directly access an accented glyph, in the encoding. @@ -1439,9 +1312,9 @@ Symbols defined in this way are for use in text, not mathematics. For example, this line from ‘t1enc.def’ declares the number of the glyph to use for «, the left guillemet. - \DeclareTextSymbol{\guillemotleft}{T1}{19} + \DeclareTextSymbol{\guillemetleft}{T1}{19} -The command ‘\DeclareTextCommand{\guillemotleft}{T1}{\char 19}’ has the +The command ‘\DeclareTextCommand{\guillemetleft}{T1}{\char 19}’ has the same effect but is slower (*note \DeclareTextCommand & \ProvideTextCommand::). @@ -1558,7 +1431,7 @@ form. But shown after it in parenthesis is the corresponding 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}’, which we’ll describe further at the +‘\begin{itshape}...\end{itshape}’, which we'll describe further at the end of the section. These commands, in any of the three forms, are cumulative; for @@ -1677,9 +1550,9 @@ switching to bold letters and symbols in formulas. ‘\mathversion{normal}’ restores the default. Finally, the command ‘\oldstylenums{NUMERALS}’ will typeset so-called -“old-style” numerals, which have differing heights and depths (and -sometimes widths) from the standard “lining” numerals, which all have -the same height as uppercase letters. LaTeX’s default fonts support +"old-style" numerals, which have differing heights and depths (and +sometimes widths) from the standard "lining" numerals, which all have +the same height as uppercase letters. LaTeX's default fonts support this, and will respect ‘\textbf’ (but not other styles; there are no italic old-style numerals in Computer Modern). Many other fonts have old-style numerals also; sometimes package options are provided to make @@ -1723,7 +1596,7 @@ end of the current group, so you could enclose it in curly braces Trying to use these commands in math, as with ‘$\small mv^2/2$’, results in ‘LaTeX Font Warning: Command \small invalid in math mode’, -and the font size doesn’t change. To work with a too-large formula, +and the font size doesn't change. To work with a too-large formula, often the best option is to use the ‘displaymath’ environment (*note Math formulas::), or one of the environments from the ‘amsmath’ package. For inline mathematics, such as in a table of formulas, an alternative @@ -1735,7 +1608,7 @@ also changes a number of other aspects of how mathematics is typeset. An “environment form” of each of these commands is also defined; for instance, ‘\begin{tiny}...\end{tiny}’. However, in practice this form can easily lead to unwanted spaces at the beginning and/or end of the -environment without careful consideration, so it’s generally less +environment without careful consideration, so it's generally less error-prone to stick to the declaration form. (Aside: Technically, due to the way LaTeX defines ‘\begin’ and @@ -1758,7 +1631,7 @@ ones. ‘\fontencoding{ENCODING}’ Select the font encoding, the encoding of the output font. There are a large number of valid encodings. The most common are ‘OT1’, - Knuth’s original encoding for Computer Modern (the default), and + Knuth's original encoding for Computer Modern (the default), and ‘T1’, also known as the Cork encoding, which has support for the accented characters used by the most widespread European languages (German, French, Italian, Polish and others), which allows TeX to @@ -1979,7 +1852,7 @@ following parameters control float behavior of two-column output. ‘\dblfloatpagefraction’ For a float page of two-column wide floats, this is the minimum fraction that must be occupied by floats, limiting the amount of - blank space. LaTeX’s default is ‘0.5’. Change it with + blank space. LaTeX's default is ‘0.5’. Change it with ‘\renewcommand’. ‘\dblfloatsep’ @@ -1999,7 +1872,7 @@ following parameters control float behavior of two-column output. maximum number of floats allowed at the top of the page. The LaTeX default is ‘2’. - This example uses ‘\twocolumn’’s optional argument of to create a + This example uses ‘\twocolumn’'s optional argument of to create a title that spans the two-column article: \documentclass[twocolumn]{article} @@ -2096,7 +1969,7 @@ File: latex2e.info, Node: Page layout parameters, Next: \baselineskip & \basel Width of the current line, decreased for each nested ‘list’ (*note list::). That is, the nominal value for ‘\linewidth’ is to equal ‘\textwidth’ but for each nested list the ‘\linewidth’ is decreased - by the sum of that list’s ‘\leftmargin’ and ‘\rightmargin’ (*note + by the sum of that list's ‘\leftmargin’ and ‘\rightmargin’ (*note itemize::). ‘\marginparpush’ @@ -2128,13 +2001,13 @@ File: latex2e.info, Node: Page layout parameters, Next: \baselineskip & \basel ‘\oddsidemargin’ ‘\evensidemargin’ The ‘\oddsidemargin’ length is the extra distance between the left - side of the page and the text’s left margin, on odd-numbered pages + side of the page and the text's left margin, on odd-numbered pages when the document class option ‘twoside’ is chosen and on all pages when ‘oneside’ is in effect. When ‘twoside’ is in effect, on even-numbered pages the extra distance on the left is ‘\evensidemargin’. - LaTeX’s default is that ‘\oddsidemargin’ is 40% of the difference + LaTeX's default is that ‘\oddsidemargin’ is 40% of the difference between ‘\paperwidth’ and ‘\textwidth’, and ‘\evensidemargin’ is the remainder. @@ -2208,14 +2081,14 @@ baseline to baseline. Ordinarily document authors do not directly change ‘\baselineskip’ while writing. Instead, it is set by the low level font selection command ‘\fontsize’ (*note low level font commands fontsize::). The -‘\baselineskip’’s value is reset every time a font change happens and so +‘\baselineskip’'s value is reset every time a font change happens and so any direct change to ‘\baselineskip’ would vanish the next time there was a font switch. For how to influence line spacing, see the discussion of ‘\baselinestretch’ below. - Usually, a font’s size and baseline skip is assigned by the font + Usually, a font's size and baseline skip is assigned by the font designer. These numbers are nominal in the sense that if, for instance, -a font’s style file has the command ‘\fontsize{10pt}{12pt}’ then that +a font's style file has the command ‘\fontsize{10pt}{12pt}’ then that does not mean that the characters in the font are 10pt tall; for instance, parentheses and accented capitals may be taller. Nor does it mean that if the lines are spaced less than 12pt apart then they risk @@ -2225,7 +2098,7 @@ touching. Rather these numbers are typographic judgements. (Often, the The ‘\baselineskip’ is not a property of each line but of the entire paragraph. As a result, large text in the middle of a paragraph, such as a single ‘{\Huge Q}’, will be squashed into its line. TeX will make -sure it doesn’t scrape up against the line above but won’t change the +sure it doesn't scrape up against the line above but won't change the ‘\baselineskip’ for that one line to make extra room above. For the fix, use a ‘\strut’ (*note \strut::). @@ -2246,7 +2119,7 @@ less than ‘\baselineskip’ then TeX inserts vertical glue to make up the difference. There are two fine points. The first is that if the lines would be too close together, closer than ‘\lineskiplimit’, then TeX instead uses ‘\lineskip’ as the interline glue. The second is that TeX -doesn’t actually use the depth of the previous line. Instead it uses +doesn't actually use the depth of the previous line. Instead it uses ‘\prevdepth’, which usually contains that depth. But at the beginning of the paragraph (or any vertical list) or just after a rule, ‘\prevdepth’ has the value -1000pt and this special value tells TeX not @@ -2271,9 +2144,9 @@ spacing, take FACTOR to be 1.6 and for one-and-a-half spacing use 1.3. These numbers are rough: for instance, since the ‘\baselineskip’ is about 1.2 times the font size, multiplying by 1.6 gives a baseline skip to font size ratio of about 2. (The ‘\linespread’ command is defined as -‘\renewcommand{\baselinestretch}{FACTOR}’ so it also won’t take effect +‘\renewcommand{\baselinestretch}{FACTOR}’ so it also won't take effect until a font setting happens. But that always takes place at the start -of a document, so there you don’t need to follow it with ‘\selectfont’.) +of a document, so there you don't need to follow it with ‘\selectfont’.) A simpler approach is the ‘setspace’ package. The basic example: @@ -2330,41 +2203,41 @@ below. The default for both ‘figure’ and ‘table’, in both ‘article’ ‘book’ classes, is ‘tbp’. ‘t’ - (Top)—at the top of a text page. + (Top)--at the top of a text page. ‘b’ - (Bottom)—at the bottom of a text page. (However, ‘b’ is not + (Bottom)--at the bottom of a text page. (However, ‘b’ is not allowed for full-width floats (‘figure*’) with double-column output. To ameliorate this, use the ‘stfloats’ or ‘dblfloatfix’ package, but see the discussion at caveats in the FAQ: <https://www.texfaq.org/FAQ-2colfloat>. ‘h’ - (Here)—at the position in the text where the ‘figure’ environment + (Here)--at the position in the text where the ‘figure’ environment appears. However, ‘h’ is not allowed by itself; ‘t’ is automatically added. - To absolutely force a float to appear “here”, you can + To absolutely force a float to appear "here", you can ‘\usepackage{float}’ and use the ‘H’ specifier which it defines. For further discussion, see the FAQ entry at <https://www.texfaq.org/FAQ-figurehere>. ‘p’ - (Page of floats)—on a separate “float page”, which is a page + (Page of floats)--on a separate “float page”, which is a page containing no text, only floats. ‘!’ Used in addition to one of the above; for this float only, LaTeX ignores the restrictions on both the number of floats that can appear and the relative amounts of float and non-float text on the - page. The ‘!’ specifier does _not_ mean “put the float here”; see + page. The ‘!’ specifier does _not_ mean "put the float here"; see above. Note: the order in which letters appear in the PLACEMENT argument does not change the order in which LaTeX tries to place the float; for instance, ‘btp’ has the same effect as ‘tbp’. All that PLACEMENT does is that if a letter is not present then the algorithm does not try that -location. Thus, LaTeX’s default of ‘tbp’ is to try every location +location. Thus, LaTeX's default of ‘tbp’ is to try every location except placing the float where it occurs in the source. To prevent LaTeX from moving floats to the end of the document or a @@ -2439,10 +2312,10 @@ a command of the form ‘\setcounter{CTRNAME}{NATURAL NUMBER}’): The principal TeX FAQ entry relating to floats <https://www.texfaq.org/FAQ-floats> contains suggestions for relaxing -LaTeX’s default parameters to reduce the problem of floats being pushed +LaTeX's default parameters to reduce the problem of floats being pushed to the end. A full explanation of the float placement algorithm is in -Frank Mittelbach’s article “How to influence the position of float -environments like figure and table in LaTeX?” +Frank Mittelbach's article "How to influence the position of float +environments like figure and table in LaTeX?" (<https://www.latex-project.org/publications/2014-FMi-TUB-tb111mitt-float-placement.pdf>). * Menu: @@ -2543,7 +2416,7 @@ 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’, +all of LaTeX's standard document classes ‘book’, ‘report’, and ‘article’, except that ‘\chapter’ is not available in ‘article’. Sectioning unit Command Level @@ -2574,7 +2447,7 @@ 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 +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 @@ -2604,7 +2477,7 @@ commands. ‘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 + without the number. LaTeX's default ‘secnumdepth’ is 3 in ‘article’ class and 2 in the ‘book’ and ‘report’ classes. ‘tocdepth’ @@ -2613,7 +2486,7 @@ commands. 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 ‘tocdepth’ is 3 in + sections but not subsections. LaTeX's default ‘tocdepth’ is 3 in ‘article’ class and 2 in the ‘book’ and ‘report’ classes. * Menu: @@ -2656,7 +2529,7 @@ 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 +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. @@ -2733,7 +2606,7 @@ 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 +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} @@ -3051,7 +2924,7 @@ Synopsis, one or more of: 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 + 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 @@ -3059,7 +2932,7 @@ numbered.) The back matter may contain such things as a glossary, notes, a bibliography, and an index. The ‘\frontmatter’ command makes the pages numbered in lowercase -roman, and makes chapters not numbered, although each chapter’s title +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::). @@ -3075,7 +2948,7 @@ commands. File: latex2e.info, Node: \@startsection, Prev: \frontmatter & \mainmatter & \backmatter, Up: Sectioning -6.8 ‘\@startsection’, typesetting sectional unit headings +6.8 ‘\@startsection’: Typesetting sectional unit headings ========================================================= Synopsis: @@ -3085,14 +2958,14 @@ Synopsis: Used to help redefine the behavior of commands that start sectioning divisions such as ‘\section’ or ‘\subsection’. - Note that the ‘titlesec’ package makes manipulation of sectioning -easier. Further, while most requirements for sectioning commands can be + The ‘titlesec’ package makes manipulation of sectioning easier. +Further, while most requirements for sectioning commands can be satisfied with ‘\@startsection’, some cannot. For instance, in the standard LaTeX ‘book’ and ‘report’ classes the commands ‘\chapter’ and -‘\report’ are not constructed in this way. To make such a command you +‘\report’ are not constructed using this. To make such a command you may want to use the ‘\secdef’ command. - Technically, ‘\@startsection’ has the form + The ‘\@startsection’ macro is used like this: \@startsection{NAME} {LEVEL} @@ -3111,7 +2984,7 @@ so that issuing {STYLE}} redefines ‘\section’ while keeping its standard calling form -‘\section*[TOCTITLE]{TITLE}’ (in which, for reminder, the star ‘*’ is +‘\section*[TOCTITLE]{TITLE}’ (in which, as a reminder, the star ‘*’ is optional). *Note Sectioning::. This implies that when you write a command like ‘\renewcommand{\section}{...}’, the ‘\@startsection{...}’ must come last in the definition. See the examples below. @@ -3121,7 +2994,7 @@ NAME counter must be defined separately. Most commonly this is either ‘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. + 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. @@ -3134,9 +3007,9 @@ LEVEL ‘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” + ‘\section{Introduction}’ will produce output like "1 Introduction" while ‘\subsection{Discussion}’ will produce output like - “Discussion”, without the number prefix. + "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 @@ -3152,11 +3025,11 @@ INDENT BEFORESKIP The absolute value of this length is the amount of vertical space - that is inserted before this sectioning unit’s title. This space + that is inserted before this sectioning unit's title. This space will be discarded if the sectioning unit happens to start at the beginning of a page. If this number is negative then the first - paragraph following the header is not indented, if it is - non-negative then the first paragraph is indented. (Note that the + paragraph following the header is not indented; if it is + non-negative then the first paragraph is indented. (Example: the negative of ‘1pt plus 2pt minus 3pt’ is ‘-1pt plus -2pt minus -3pt’.) @@ -3168,7 +3041,7 @@ BEFORESKIP flexibility in making up the page (*note Lengths::). The full accounting of the vertical space between the baseline of - the line prior to this sectioning unit’s header and the baseline of + the line prior to this sectioning unit's header and the baseline of the header is that it is the sum of the ‘\parskip’ of the text font, the ‘\baselineskip’ of the title font, and the absolute value of the BEFORESKIP. This space is typically rubber so it may @@ -3179,7 +3052,7 @@ BEFORESKIP AFTERSKIP This is a length. If AFTERSKIP is non-negative then this is the - vertical space inserted after the sectioning unit’s title header. + vertical space inserted after the sectioning unit's title header. If it is negative then the title header becomes a run-in header, so that it becomes part of the next paragraph. In this case the absolute value of the length gives the horizontal space between the @@ -3192,13 +3065,13 @@ AFTERSKIP flexibility in putting together the page. If ‘afterskip’ is non-negative then the full accounting of the - vertical space between the baseline of the sectioning unit’s header + vertical space between the baseline of the sectioning unit's header and the baseline of the first line of the following paragraph is that it is the sum of the ‘\parskip’ of the title font, the ‘\baselineskip’ of the text font, and the value of AFTER. That space is typically rubber so it may stretch or shrink. (Note that because the sign of ‘afterskip’ changes the sectioning unit - header’s from standalone to run-in, you cannot use a negative + header's from standalone to run-in, you cannot use a negative ‘afterskip’ to cancel part of the ‘\parskip’.) STYLE @@ -3211,7 +3084,7 @@ STYLE STYLE to ‘\bfseries\MakeUppercase’ would produce titles that are bold and uppercase. - These are LaTeX’s defaults for the first three sectioning units that + These are LaTeX's defaults for the first three sectioning units that are defined with ‘\@startsection’, for the ‘article’, ‘book’, and ‘report’ classes. @@ -3235,7 +3108,7 @@ mode.’ means that you forgot this.) *Note \makeatletter & \makeatother::. This will put section titles in large boldface type, centered. It -says ‘\renewcommand’ because LaTeX’s standard classes have already +says ‘\renewcommand’ because LaTeX's standard classes have already defined a ‘\section’. For the same reason it does not define a ‘section’ counter, or the commands ‘\thesection’ and ‘\l@section’. @@ -3316,10 +3189,10 @@ 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. + 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.” +output ‘Theorem 3.21’, without you having to enter the "Theorem." * Menu: @@ -3428,7 +3301,7 @@ Synopsis: Produces the number of the sectional unit, equation, footnote, figure, ..., of the corresponding ‘\label’ command (*note \label::). It -does not produce any text, such as the word ‘Section’ or ‘Figure’, just +does not produce any text, such as the word 'Section' or 'Figure', just the bare number itself. If there is no ‘\label{KEY}’ then you get something like ‘LaTeX @@ -3550,7 +3423,7 @@ an error like: ‘! LaTeX Error: \begin{table*} on input line 5 ended by * 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. @@ -3655,7 +3528,7 @@ features of the two environments, including the optional POS argument. is that ‘array’ entries are typeset in math mode, in textstyle (*note Math styles::) 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 +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. @@ -3717,7 +3590,7 @@ space between the last two lines. the School of Environmental Engineering \end{center} - In this example, depending on the page’s line width, LaTeX may choose + In this example, depending on the page's line width, LaTeX may choose a line break for the part before the double backslash. If so, it will center each of the two lines and if not it will center the single line. Then LaTeX will break at the double backslash, and will center the @@ -3730,7 +3603,7 @@ ending. \end{center} A double backslash after the final line is optional. If present it -doesn’t add any vertical space. +doesn't add any vertical space. In a two-column document the text is centered in a column, not in the entire page. @@ -3758,7 +3631,7 @@ or 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 + This example's ‘\centering’ declaration causes the graphic to be horizontally centered. \begin{figure} @@ -3770,7 +3643,7 @@ horizontally centered. 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. That’s its advantage in +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 @@ -3798,7 +3671,7 @@ Synopsis: ... \end{description} - Environment to make a list of labeled items. Each item’s LABEL is + 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 @@ -3869,17 +3742,17 @@ environment (*note equation::). displayed equation facilities. For example, there are a number of ways in that package for having math text broken across lines. - The construct ‘\[MATH\]’ is a synonym for the environment + The construct ‘\[ MATH \]’ is a synonym for the environment ‘\begin{displaymath} MATH \end{displaymath}’ but the latter is easier to work with in the source; for instance, searching for a square bracket may get false positives but the word ‘displaymath’ will likely be unique. - (Aside: The construct ‘$$MATH$$’ from Plain TeX is sometimes -mistakenly used as a synonym for ‘displaymath’. It is not a synonym, -and is not officially supported in LaTeX at all; ‘$$’ doesn’t support -the ‘fleqn’ option (*note Document class options::), has different -vertical spacing, and doesn’t perform consistency checks.) + The construct ‘$$MATH$$’ from Plain TeX is sometimes used as a +synonym for LaTeX's ‘displaymath’. It is not a synonym, and is not +officially supported in LaTeX at all; ‘$$’ doesn't support the ‘fleqn’ +option (*note Document class options::), has different vertical spacing, +and doesn't perform consistency checks. The output from this example is centered and alone on its line. @@ -3980,7 +3853,7 @@ optional text, which may contain multiple paragraphs. Enumerations may be nested within other ‘enumerate’ environments, or within any paragraph-making environment such as ‘itemize’ (*note -itemize::), up to four levels deep. This gives LaTeX’s default for the +itemize::), up to four levels deep. This gives LaTeX's default for the format at each nesting level, where 1 is the top level, the outermost level. @@ -4020,7 +3893,7 @@ File: latex2e.info, Node: eqnarray, Next: equation, Prev: enumerate, Up: Env The ‘eqnarray’ environment is obsolete. It has infelicities, including spacing that is inconsistent with other mathematics elements. (See -“Avoid eqnarray!” by Lars Madsen +"Avoid eqnarray!" by Lars Madsen <https://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. We @@ -4086,8 +3959,8 @@ 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. +‘\end{equation}’, or LaTeX will tell you that there is a missing dollar +sign. The package ‘amsmath’ package has extensive displayed equation facilities. New documents should include this package. @@ -4117,7 +3990,7 @@ or: 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 +sequence with normal text but instead "floats" them to a convenient place, such as the top of a following page (*note Floats::). The FIGURE BODY can consist of imported graphics (*note Graphics::), @@ -4279,7 +4152,7 @@ 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 -units. To affect a paragraph unit’s format, the scope of the +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. @@ -4342,13 +4215,12 @@ 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 -units. To affect a paragraph unit’s format, the scope of the +units. To affect a paragraph unit's formatting, 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::, -where one just have mutatis mutandis to replace ‘\raggedright’ by -‘\raggedleft’. + *Note \raggedright::, for an example related to this environment; +just replace ‘\raggedright’ there by ‘\raggedleft’. File: latex2e.info, Node: itemize, Next: letter, Prev: flushright, Up: Environments @@ -4375,8 +4247,8 @@ the LaTeX error ‘Something's wrong--perhaps a missing \item’. \item Rice portrait \end{itemize} -With the default locale—without loading e.g. ‘babel’ package with -another language than USenglish—as a top-level list each label would +With the default locale--without loading e.g. ‘babel’ package with +another language than USenglish--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. @@ -4437,8 +4309,9 @@ within a single item (‘\parskip’ is not list-specific, *note \parindent \newenvironment{itemize*}% {\begin{itemize}% \setlength{\itemsep}{0pt}% - \setlength{\parsep}{0pt}}% - \setlength{\parskip}{0pt}}% + \setlength{\parsep}{0pt}% + \setlength{\parskip}{0pt}% + }% {\end{itemize}} @@ -4530,7 +4403,7 @@ 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 +‘\setlength{\itemsep}{2pt plus1pt minus1pt}’. For some effects these lengths should be zero or negative. ‘\itemindent’ @@ -4539,7 +4412,7 @@ lengths should be zero or negative. ‘\itemsep’ Vertical space between items, beyond the ‘\parsep’. The defaults - for the first three levels in LaTeX’s ‘article’, ‘book’, and + for the first three levels in LaTeX's ‘article’, ‘book’, and ‘report’ classes at 10 point size are: ‘4pt plus2pt minus1pt’, ‘\parsep’ (that is, ‘2pt plus1pt minus1pt’), and ‘\topsep’ (that is, ‘2pt plus1pt minus1pt’). The defaults at 11 point are: ‘4.5pt @@ -4551,7 +4424,7 @@ lengths should be zero or negative. ‘\labelsep’ Horizontal space between the label and text of an item. The - default for LaTeX’s ‘article’, ‘book’, and ‘report’ classes is + default for LaTeX's ‘article’, ‘book’, and ‘report’ classes is ‘0.5em’. ‘\labelwidth’ @@ -4559,18 +4432,18 @@ lengths should be zero or negative. wide. If ‘\makelabel’ returns text that is wider than this then the first line of the item will be indented to make room for this extra material. If ‘\makelabel’ returns text of width less than or - equal to ‘\labelwidth’ then LaTeX’s default is that the label is + equal to ‘\labelwidth’ then LaTeX's default is that the label is typeset flush right in a box of this width. The left edge of the label box is ‘\leftmargin’+‘\itemindent’-‘\labelsep’-‘\labelwidth’ from the left margin of the enclosing environment. - The default for LaTeX’s ‘article’, ‘book’, and ‘report’ classes at + The default for LaTeX's ‘article’, ‘book’, and ‘report’ classes at the top level is ‘\leftmargini’-‘\labelsep’, (which is ‘2em’ in one column mode and ‘1.5em’ in two column mode). At the second level it is ‘\leftmarginii’-‘\labelsep’, and at the third level it is - ‘\leftmarginiii’-‘\labelsep’. These definitions make the label’s + ‘\leftmarginiii’-‘\labelsep’. These definitions make the label's left edge coincide with the left margin of the enclosing environment. @@ -4586,7 +4459,7 @@ lengths should be zero or negative. ‘\leftmarginvi’. (Nesting greater than level five generates the error message ‘Too deeply nested’.) - The defaults for the first three levels in LaTeX’s ‘article’, + The defaults for the first three levels in LaTeX's ‘article’, ‘book’, and ‘report’ classes are: ‘\leftmargini’ is ‘2.5em’ (in two column mode, ‘2em’), ‘\leftmarginii’ is ‘2.2em’, and ‘\leftmarginiii’ is ‘1.87em’. @@ -4594,12 +4467,12 @@ lengths should be zero or negative. ‘\listparindent’ Horizontal space of additional line indentation, beyond ‘\leftmargin’, for second and subsequent paragraphs within a list - item. A negative value makes this an “outdent”. Its default value + item. A negative value makes this an "outdent". Its default value is ‘0pt’. ‘\parsep’ Vertical space between paragraphs within an item. The defaults for - the first three levels in LaTeX’s ‘article’, ‘book’, and ‘report’ + the first three levels in LaTeX's ‘article’, ‘book’, and ‘report’ classes at 10 point size are: ‘4pt plus2pt minus1pt’, ‘2pt plus1pt minus1pt’, and ‘0pt’. The defaults at 11 point size are: ‘4.5pt plus2pt minus1pt’, ‘2pt plus1pt minus1pt’, and ‘0pt’. The defaults @@ -4613,7 +4486,7 @@ lengths should be zero or negative. changes spacing at both the top and bottom of the list; whether the line following the list is blank does not matter.) - The defaults for the first three levels in LaTeX’s ‘article’, + The defaults for the first three levels in LaTeX's ‘article’, ‘book’, and ‘report’ classes at 10 point size are: ‘2pt plus1 minus1pt’, ‘2pt plus1pt minus1pt’, and ‘1pt plus0pt minus1pt’. The defaults at 11 point are: ‘3pt plus1pt minus1pt’, ‘3pt plus1pt @@ -4629,7 +4502,7 @@ lengths should be zero or negative. ‘\topsep’ Vertical space added to both the top and bottom of the list, in addition to ‘\parskip’ (*note \parindent & \parskip::). The - defaults for the first three levels in LaTeX’s ‘article’, ‘book’, + 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’, @@ -4696,11 +4569,11 @@ H4 H5 ‘\rightmargin’ - The list’s left and right margins, shown above as H3 and H5, are with + The list's left and right margins, shown above as H3 and H5, are with respect to the ones provided by the surrounding environment, or with respect to the page margins for a top-level list. The line width used for typesetting the list items is ‘\linewidth’ (*note Page layout -parameters::). For instance, set the list’s left margin to be one +parameters::). For instance, set the list's left margin to be one quarter of the distance between the left and right margins of the enclosing environment with ‘\setlength{\leftmargin}{0.25\linewidth}’. @@ -4804,7 +4677,7 @@ Synopsis: A restricted version of the list environment, in which margins are not indented and an ‘\item’ without an optional argument produces no text. It is most often used in macros, to define an environment where -the ‘\item’ command is part of the environment’s definition. For +the ‘\item’ command is part of the environment's definition. For instance, the ‘center’ environment is defined essentially like this: \newenvironment{center} @@ -4899,11 +4772,11 @@ aligns with the surrounding material. ‘t’ Align the baseline of the top line in the ‘minipage’ with the - baseline of the surrounding text (plain TeX’s ‘\vtop’). + baseline of the surrounding text (plain TeX's ‘\vtop’). ‘b’ Align the baseline of the bottom line in the ‘minipage’ with the - baseline of the surrounding text (plain TeX’s ‘\vbox’). + baseline of the surrounding text (plain TeX's ‘\vbox’). To see the effects of these, contrast running this @@ -4915,7 +4788,7 @@ 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 +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. @@ -4937,7 +4810,7 @@ is the value of POSITION). stretchable space. The INNER-POS argument makes sense when the HEIGHT option is set to a -value larger than the ‘minipage’’s natural height. To see the effect of +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 @@ -5023,7 +4896,7 @@ or PICTURE COMMAND \end{picture} -Where there may be any number of PICTURE COMMAND’s. +Where there may be any number of PICTURE COMMAND's. An environment to create simple pictures containing lines, arrows, boxes, circles, and text. This environment is not obsolete, but new @@ -5031,7 +4904,7 @@ documents typically use much more powerful graphics creation systems, such as TikZ, PSTricks, MetaPost, or Asymptote. None of these are covered in this document; see CTAN. - To start, here’s an example showing the parallelogram law for adding + To start, here's an example showing the parallelogram law for adding vectors. \setlength{\unitlength}{1cm} @@ -5049,7 +4922,7 @@ positive real numbers (WIDTH,HEIGHT). Multiply these by the value ‘\unitlength’ to get the nominal size of the output, i.e. 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. +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 @@ -5063,7 +4936,7 @@ point at the lower-left corner of the picture. \begin{picture}(100,200)(10,20) 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 +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 @@ -5078,7 +4951,7 @@ 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 + 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. @@ -5134,7 +5007,7 @@ exact location. For example: The red X will be precisely a quarter of the ‘\textwidth’ from the left margin, and ‘0.35\textwidth’ up from the bottom of the picture. 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. +repeat material on each of a document's pages. * Menu: @@ -5223,8 +5096,8 @@ line at (X3,Y3). \qbezier(1,1)(1.25,0.75)(1,0) -The curve’s tangent line at (1,1) contains (1.25,0.75), as does the -curve’s tangent line at (1,0). +The curve's tangent line at (1,1) contains (1.25,0.75), as does the +curve's tangent line at (1,0). The optional argument NUM gives the number of calculated intermediate points. The default is to draw a smooth curve whose maximum number of @@ -5256,7 +5129,7 @@ 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 + 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. @@ -5283,8 +5156,8 @@ Synopsis: \line(X_RUN,Y_RISE){TRAVEL} 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 +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. @@ -5300,8 +5173,8 @@ length of the line, it is the change in x. 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 +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. If TRAVEL is negative then you get ‘LaTeX Error: Bad \line or \vector @@ -5463,7 +5336,7 @@ is smaller than that between the third and last row. You can adjust row heights and depths either by putting in the usual interline spacing with ‘\shortstack{X\\ \strut o\\o\\X}’ (*note \strut::), or explicitly, via an zero-width box ‘\shortstack{X \\ \rule{0pt}{12pt} o\\o\\X}’ or by -using ‘\\’’s optional argument ‘\shortstack{X\\[2pt] o\\o\\X}’. +using ‘\\’'s optional argument ‘\shortstack{X\\[2pt] o\\o\\X}’. The ‘\shortstack’ command is also available outside the ‘picture’ environment. @@ -5480,7 +5353,7 @@ Synopsis: 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 +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. @@ -5615,7 +5488,7 @@ and height RECT-HEIGHT units. \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 +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 @@ -5745,12 +5618,12 @@ They are all fragile (*note \protect::). Moves everything that you have typed so far in the current column, i.e., everything from the most recent ‘\>’, ‘\<’, ‘\'’, ‘\\’, or ‘\kill’ command, to the previous column and aligned to the right, - flush against the current column’s tab stop. + flush against the current column's tab stop. ‘\` (tabbing)’ Allows you to put text flush right against any tab stop, including - tab stop 0. However, it can’t move text to the right of the last - column because there’s no tab stop there. The ‘\`’ command moves + tab stop 0. However, it can't move text to the right of the last + column because there's no tab stop there. The ‘\`’ command moves all the text that follows it, up to the ‘\\’ or ‘\end{tabbing}’ command that ends the line, to the right margin of the ‘tabbing’ environment. There must be no ‘\>’ or ‘\'’ command between the @@ -5899,7 +5772,7 @@ illustrates many of the features. \end{tabular} The output will have two left-aligned columns with a vertical bar -between them. This is specified in ‘tabular’’s argument ‘{l|l}’. Put +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’. @@ -5909,7 +5782,7 @@ follows to put a rule below the table. The required and optional arguments to ‘tabular’ consist of: POS - Optional. Specifies the table’s vertical position. The default is + Optional. Specifies the table's vertical position. The default is to align the table so its vertical center matches the baseline of the surrounding text. There are two other possible alignments: ‘t’ aligns the table so its top row matches the baseline of the @@ -5942,7 +5815,7 @@ COLS (*note \protect::). If between two column specifiers there is no @-expression then - LaTeX’s ‘book’, ‘article’, and ‘report’ classes will put on + LaTeX's ‘book’, ‘article’, and ‘report’ classes will put on either side of each column a space of width ‘\tabcolsep’, which by default is 6pt. That is, by default adjacent columns are separated by 12pt (so ‘\tabcolsep’ is misleadingly named @@ -6086,7 +5959,7 @@ spanned by the single heading ‘Name’. ‘\begin{tabular}{|r|ccp{1.5in}|}’ the parts are ‘|r|’, ‘c’, ‘c’, and ‘p{1.5in}|’. - The COLS argument overrides the ‘array’ or ‘tabular’ environment’s + The COLS argument overrides the ‘array’ or ‘tabular’ environment's intercolumn area default adjoining this multicolumn entry. To affect that area, this argument can contain vertical bars ‘|’ indicating the placement of vertical rules, and ‘@{...}’ expressions. Thus if COLS is @@ -6107,7 +5980,7 @@ 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 +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’ leaves it out, and that takes precedence. Finally, following entry four @@ -6115,7 +5988,7 @@ there is a vertical rule because of the default. The number of spanned columns NUMCOLS can be 1. Besides giving the ability to change the horizontal alignment, this also is useful to -override for one row the ‘tabular’ definition’s default intercolumn area +override for one row the ‘tabular’ definition's default intercolumn area specification, including the placement of vertical rules. In the example below, in the ‘tabular’ definition the first column is @@ -6136,8 +6009,8 @@ center those two columns on the page range en-dash. Although the ‘tabular’ specification by default puts a vertical rule between the first and second columns, no such vertical rule appears in -the first row here. That’s because there is no vertical bar in the COLS -part of the first row’s first ‘\multicolumn’ command. +the first row here. That's because there is no vertical bar in the COLS +part of the first row's first ‘\multicolumn’ command. File: latex2e.info, Node: \vline, Next: \cline, Prev: \multicolumn, Up: tabular @@ -6146,18 +6019,18 @@ File: latex2e.info, Node: \vline, Next: \cline, Prev: \multicolumn, Up: tabu --------------- Draw a vertical line in a ‘tabular’ or ‘array’ environment extending the -full height and depth of an entry’s row. Can also be used in an +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 +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’ (*note tabular::). - The example below illustrates some pitfalls. In the first row’s + 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 row’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 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 @@ -6200,13 +6073,13 @@ File: latex2e.info, Node: \hline, Prev: \cline, Up: tabular --------------- 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, +environment. It's most commonly used to draw a line at the top, bottom, and between the rows of a table. In this example the top of the table has two horizontal rules, one above the other, that span both columns. The bottom of the table has a single rule spanning both columns. Because of the ‘\hline’, the -‘tabular’ second row’s line ending double backslash ‘\\’ is required. +‘tabular’ second row's line ending double backslash ‘\\’ is required. \begin{tabular}{ll} \hline\hline Baseball &Red Sox \\ @@ -6261,7 +6134,7 @@ tradition is to use ‘9’ for bibliographies with less than 10 references, 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 +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}’. @@ -6421,14 +6294,14 @@ sophisticated approach to managing bibliographies is provided by the BibTeX program. This is only an introduction; see the full documentation on CTAN (*note CTAN::). - With BibTeX, you don’t use the ‘thebibliography’ environment directly + With BibTeX, you don't use the ‘thebibliography’ environment directly (*note thebibliography::). Instead, include these lines: \bibliographystyle{BIBSTYLE} \bibliography{BIBFILE1, BIBFILE2, ...} The BIBSTYLE refers to a file ‘BIBSTYLE.bst’, which defines how your -citations will look. The standard BIBSTYLE’s distributed with BibTeX +citations will look. The standard BIBSTYLE's distributed with BibTeX are: ‘alpha’ @@ -6467,7 +6340,7 @@ that format. } Only the bibliographic entries referred to via ‘\cite’ and ‘\nocite’ -will be listed in the document’s bibliography. Thus you can keep all +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. @@ -6619,20 +6492,22 @@ already be converted to a token list along the catcode regime in effect when the macro was called. However, 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’. + One common use of verbatim input is to typeset computer code. Some +packages offer many features not provided by the ‘verbatim’ environment; +two of the most popular are ‘listings’ and ‘minted’. For example, they +are capable of pretty-printing, line numbering, and selecting parts of +files for a continuing listing. 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 (*note CTAN::). + For a list of all the relevant packages, see CTAN (*note CTAN::), +particularly the topics ‘listing’ (<https://ctan.org/topic/listing>) and +‘verbatim’ (<https://ctan.org/topic/verbatim>). * Menu: -* \verb:: The macro form of the ‘verbatim’ environment. +* \verb:: The macro form of the ‘verbatim’ environment. File: latex2e.info, Node: \verb, Up: verbatim @@ -6657,9 +6532,9 @@ 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 + 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 @@ -6676,9 +6551,6 @@ word ‘with’: For typesetting Internet addresses, urls, the package ‘url’ is a better option than the ‘\verb’ command, since it allows line breaks. - 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 work, as the ‘\verb’ @@ -6704,7 +6576,7 @@ Synopsis: An environment for poetry. - Here are two lines from Shakespeare’s Romeo and Juliet. + 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. @@ -6753,7 +6625,8 @@ fiddling with breaks that will change anyway. * \obeycr & \restorecr:: Make each input line start a new output line. * \newline:: Break the line * \- (hyphenation):: Insert explicit hyphenation. -* \discretionary:: Explicit control of the hyphen character. +* \slash:: Insert a breakable /. +* \discretionary:: Explicit control of hyphenation character(s). * \fussy & \sloppy:: Be more or less particular with line breaking. * \hyphenation:: Tell LaTeX how to hyphenate a word. * \linebreak & \nolinebreak:: Forcing & avoiding line breaks. @@ -6787,8 +6660,8 @@ The starred form, ‘\\*’, tells LaTeX not to start a new page between the two lines, by issuing a ‘\nobreak’. 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 +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::). @@ -6837,7 +6710,7 @@ command restores normal line-breaking behavior. This is not the way to show verbatim text or computer code. Use ‘verbatim’ (*note verbatim::) instead. - With LaTeX’s usual defaults, this + With LaTeX's usual defaults, this aaa bbb @@ -6894,7 +6767,7 @@ of the table. The ‘Date:’ will be baseline-aligned with ‘Name:’. -File: latex2e.info, Node: \- (hyphenation), Next: \discretionary, Prev: \newline, Up: Line breaking +File: latex2e.info, Node: \- (hyphenation), Next: \slash, Prev: \newline, Up: Line breaking 9.4 ‘\-’ (discretionary hyphen) =============================== @@ -6931,9 +6804,23 @@ require that it break there. You can force a split with something like this forced break may look out of place, so this approach requires care. -File: latex2e.info, Node: \discretionary, Next: \fussy & \sloppy, Prev: \- (hyphenation), Up: Line breaking +File: latex2e.info, Node: \slash, Next: \discretionary, Prev: \- (hyphenation), Up: Line breaking + +9.5 ‘\slash’: breakable ‘/’ +=========================== + +The ‘\slash’ command produces a ‘/’ character and then a penalty of the +same value as an explicit ‘-’ character (‘\exhyphenpenalty’). This +allows TeX to break a line at the ‘/’, similar to a hyphen. Hyphenation +is allowed in the word part preceding the ‘/’, but not after. For +example: + + The input\slash output of the program is complicated. + + +File: latex2e.info, Node: \discretionary, Next: \fussy & \sloppy, Prev: \slash, Up: Line breaking -9.5 ‘\discretionary’ (generalized hyphenation point) +9.6 ‘\discretionary’ (generalized hyphenation point) ==================================================== Synopsis: @@ -6949,17 +6836,17 @@ 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. +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. +automatically by TeX's hyphenation algorithm. File: latex2e.info, Node: \fussy & \sloppy, Next: \hyphenation, Prev: \discretionary, Up: Line breaking -9.6 ‘\fussy’ & ‘\sloppy’ +9.7 ‘\fussy’ & ‘\sloppy’ ======================== Declarations to make TeX more picky or less picky about line breaking. @@ -6980,7 +6867,7 @@ the scope of the command. File: latex2e.info, Node: sloppypar, Up: \fussy & \sloppy -9.6.1 ‘sloppypar’ +9.7.1 ‘sloppypar’ ----------------- Synopsis: @@ -7011,7 +6898,7 @@ Synopsis: File: latex2e.info, Node: \hyphenation, Next: \linebreak & \nolinebreak, Prev: \fussy & \sloppy, Up: Line breaking -9.7 ‘\hyphenation’ +9.8 ‘\hyphenation’ ================== Synopsis: @@ -7020,20 +6907,20 @@ Synopsis: 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, ‘-’. +for hyphenation with an ASCII dash character, ‘-’. 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, no inflections are tried. Multiple ‘\hyphenation’ commands +exactly; no inflections are tried. Multiple ‘\hyphenation’ commands accumulate. File: latex2e.info, Node: \linebreak & \nolinebreak, Prev: \hyphenation, Up: Line breaking -9.8 ‘\linebreak’ & ‘\nolinebreak’ +9.9 ‘\linebreak’ & ‘\nolinebreak’ ================================= Synopses, one of: @@ -7076,7 +6963,7 @@ 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 + 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 @@ -7091,9 +6978,9 @@ 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 + 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 +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. @@ -7128,7 +7015,7 @@ 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::). - LaTeX’s page breaks are optimized so ordinarily you only use this + 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. @@ -7142,7 +7029,7 @@ this command. {\pagestyle{empty}\origdoublepage}% } -If you want LaTeX’s standard ‘\chapter’ command to do this then add the +If you want LaTeX's standard ‘\chapter’ command to do this then add the line ‘\let\cleardoublepage\clearemptydoublepage’. (Of course this affects all uses of ‘\cleardoublepage’, not just the one in ‘\chapter’.) @@ -7163,7 +7050,7 @@ Synopsis: End the current page. This command is robust (*note \protect::). - LaTeX’s page breaks are optimized so ordinarily you only use this + 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. @@ -7238,7 +7125,7 @@ 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 these + LaTeX's page endings are optimized so ordinarily you only use these commands in a document body to polish the final version, or inside commands. @@ -7259,11 +7146,10 @@ 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. - (There is an obsolete declaration ‘\samepage’, which tries to only -allow a break between two paragraphs. There is a related environment -‘samepage’, also obsolete. Neither of these work reliably. For more on -keeping material on the same page, see the FAQ entry -<https://texfaq.org/FAQ-nopagebrk>.) + A declaration ‘\samepage’ and corresponding ‘samepage’ environment +try to only allow breaks between paragraphs. They are not perfectly +reliable. For more on keeping material on the same page, see the FAQ +entry <https://texfaq.org/FAQ-nopagebrk>.) File: latex2e.info, Node: Footnotes, Next: Definitions, Prev: Page breaking, Up: Top @@ -7307,7 +7193,8 @@ Synopsis, one of: \footnote{TEXT} \footnote[NUMBER]{TEXT} - Place a footnote TEXT at the bottom of the current page. + Place a footnote TEXT at the bottom of the current page, with a +footnote marker at the current position in the text. There are over a thousand footnotes in Gibbon's \textit{Decline and Fall of the Roman Empire}.\footnote{% @@ -7332,12 +7219,16 @@ you make the change local then you may want to reset the counter with ‘\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 + page's footnotes. Default dimensions in the standard document + classes (except ‘slides’, where it does not appear) are: 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 + % \footnoterule is expanded in vertical mode, thus \kern + % commands ensure that no vertical space is created, + % and the rule is separated vertically with 2pt + % above the note text. + \renewcommand*{\footnoterule}{% \kern -3pt % This -3 is negative \hrule width \textwidth height 1pt % of the sum of this 1 \kern 2pt} % and this 2 @@ -7352,7 +7243,7 @@ you make the change local then you may want to reset the counter with The ‘\footnote’ command is fragile (*note \protect::). - LaTeX’s default puts many restrictions on where you can use a + 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; *note Modes::). There are some workarounds; see @@ -7393,7 +7284,8 @@ footnote markers referring to the same footnote. If there are intervening footnotes then you must remember the value of the number 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. +is a version of ‘\footnote’), by explicitly specifying the number of the +footnote (‘1’). \title{A Treatise on the Binomial Theorem} \author{J Moriarty\thanks{University of Leeds} @@ -7402,17 +7294,6 @@ is a version of ‘\footnote’), by-hand giving the number of the footnote. \begin{document} \maketitle - This uses a counter to remember the footnote number. The third -sentence is followed by the same footnote marker as the first. - - \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 @@ -7424,6 +7305,17 @@ sentence is followed by the same footnote marker as the first. It will work with the package ‘hyperref’. + This uses a counter to remember the footnote number. The third +sentence is followed by the same footnote marker as the first. + + \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. + File: latex2e.info, Node: \footnotetext, Next: Footnotes in section headings, Prev: \footnotemark, Up: Footnotes @@ -7457,7 +7349,7 @@ 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’ +argument to ‘\section’. \section[Please]{Please\footnote{% Don't footnote in chapter and section headers!}} @@ -7515,7 +7407,7 @@ of the regular footnote sequence, use the ‘\footnotemark’ and Little is known other than her death.}% \stepcounter{mpFootnoteValueSaver}% \footnotetext[\value{mpFootnoteValueSaver}]{% - Relationship is unresolved in XXI.} + Relationship is unresolved.} \end{center} For a floating ‘table’ environment (*note table::), use the @@ -7546,7 +7438,7 @@ File: latex2e.info, Node: Footnotes of footnotes, Prev: Footnotes in a table, Particularly in the humanities, authors can have multiple classes of footnotes, including having footnotes of footnotes. The package -‘bigfoot’ extends LaTeX’s default footnote mechanism in many ways, +‘bigfoot’ extends LaTeX's default footnote mechanism in many ways, including allow these two, as in this example. \usepackage{bigfoot} % in preamble @@ -7580,6 +7472,7 @@ LaTeX has support for making new commands of many different kinds. * \protect:: Using tricky commands. * \ignorespaces & \ignorespacesafterend:: Discard extra spaces. * xspace package:: Space after a macro, conditionally. +* Class and package commands:: Primarily for LaTeX programmers. File: latex2e.info, Node: \newcommand & \renewcommand, Next: \providecommand, Up: Definitions @@ -7596,7 +7489,7 @@ Synopses, one of (three regular forms, three starred forms): \newcommand*{\CMD}[NARGS]{DEFN} \newcommand*{\CMD}[NARGS][OPTARGDEFAULT]{DEFN} -or all the same possibilities with ‘\renewcommand’ instead of +or the same six possibilities with ‘\renewcommand’ instead of ‘\newcommand’: \renewcommand{\CMD}{DEFN} @@ -7610,8 +7503,9 @@ or all the same possibilities with ‘\renewcommand’ instead of *note Class and package commands::). The starred form of these two forbids the arguments from containing -multiple paragraphs of text (in plain TeX terms: the commands are not -‘\long’). With the default form, arguments can be multiple paragraphs. +multiple paragraphs of text (i.e., a ‘\par’ token; in plain TeX terms: +the commands are not ‘\long’). With the default form, arguments can be +multiple paragraphs. These are the parameters (examples follow): @@ -7761,7 +7655,7 @@ whitespace in the output (*note \newcommand & \renewcommand:: and *note simply print ‘Hello!’ (if you use the Emacs info viewer, turn on the ‘whitespace-mode’ minor mode to see the trailing spaces): - Hel\relax + Hel\relax lo! This is because blanks after ‘\relax’, including the newline, are @@ -7825,7 +7719,7 @@ backslash, followed by letters, category 11 characters (except that a command name can also consist of a category 0 character followed by a single non-letter symbol). - LaTeX’s source code has the convention that some commands use ‘@’ in + LaTeX's source code has the convention that some commands use ‘@’ in their name. These commands are mainly intended for package or class writers. The convention prevents authors who are just using a package or class from accidentally replacing such a command with one of their @@ -7833,7 +7727,7 @@ own, because by default the at-sign has catcode 12. Use the pair ‘\makeatletter’ and ‘\makeatother’ inside a ‘.tex’ file, typically in the preamble, when you are defining or redefining commands -named with ‘@’, by having them surround your definition. Don’t use +named with ‘@’, by having them surround your definition. Don't use these inside ‘.sty’ or ‘.cls’ files since the ‘\usepackage’ and ‘\documentclass’ commands already arrange that the at-sign has the character code of a letter, catcode 11. @@ -7895,7 +7789,7 @@ will return "not starry blue sky" while ‘\ciel*{night}’ will return \makeatother In the next example, the starred variant takes a different number of -arguments than the unstarred one. With this definition, Agent 007’s +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}.''’ @@ -8117,7 +8011,7 @@ 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 + This example gives an environment like LaTeX's ‘quotation’ except that it will be set in smaller type. \newenvironment{smallquote}{% @@ -8144,7 +8038,7 @@ environment that cites the author. \end{quotation} } -The author’s name is optional, and defaults to ‘Shakespeare’. In the +The author's name is optional, and defaults to ‘Shakespeare’. In the document, use the environment like this. \begin{citequote}[Lincoln] @@ -8213,7 +8107,7 @@ TITLE NUMBERED_WITHIN Optional; the name of an already defined counter, usually a sectional unit such as ‘chapter’ or ‘section’. When the - NUMBERED_WITHIN counter is reset then the NAME environment’s + NUMBERED_WITHIN counter is reset then the NAME environment's counter will also be reset. If this optional argument is not used then the command ‘\theNAME’ @@ -8241,7 +8135,7 @@ results in ‘Definition 1’ and ‘Definition 2’ in the output. \end{defn} This example has the same document body as the prior one. But here -‘\newtheorem’’s optional argument NUMBERED_WITHIN is given as ‘section’, +‘\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] @@ -8300,9 +8194,9 @@ backslash, ‘\’. 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 +‘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 +dimensions relative to the font's design size, which is a value defined in the ‘.tfm’ file. This defines two equivalent fonts and typesets a few characters in @@ -8320,53 +8214,59 @@ File: latex2e.info, Node: \protect, Next: \ignorespaces & \ignorespacesafteren ================ All LaTeX commands are either “fragile” or “robust”. A fragile command -can break when it is used in the argument to certain other commands. -Commands that contain data that LaTeX writes to an auxiliary file and -re-reads later are fragile. This includes material that goes into a -table of contents, list of figures, list of tables, etc. Fragile -commands also include line breaks, any command that has an optional -argument, and many more. To prevent such commands from breaking, one -solution is to preceded them with the command ‘\protect’. +can break when it is used in the argument to certain other commands, +typically those that write material to the table of contents, the +cross-reference file, etc. To prevent fragile commands from causing +errors, one solution is to precede them with the command ‘\protect’. For example, when LaTeX runs the ‘\section{SECTION NAME}’ command it writes the SECTION NAME text to the ‘.aux’ auxiliary file, moving it there for use elsewhere in the document such as in the table of -contents. Any argument that is internally expanded by LaTeX without -typesetting it directly is referred to as a “moving argument”. A -command is fragile if it can expand during this process into invalid TeX -code. Some examples of moving arguments are those that appear in the -‘\caption{...}’ command (*note figure::), in the ‘\thanks{...}’ command -(*note \maketitle::), and in @-expressions in the ‘tabular’ and ‘array’ -environments (*note tabular::). +contents. Such an argument that is used in multiple places is referred +to as a “moving argument”. A command is fragile if it can expand during +this process into invalid TeX code. Some examples of moving arguments +are those that appear in the ‘\caption{...}’ command (*note figure::), +in the ‘\thanks{...}’ command (*note \maketitle::), and in @-expressions +in the ‘tabular’ and ‘array’ environments (*note tabular::). If you get strange errors from commands used in moving arguments, try -preceding it with ‘\protect’. Every fragile commands must be protected +preceding it with ‘\protect’. Each fragile command must be protected with their own ‘\protect’. - Although usually a ‘\protect’ command doesn’t hurt, length commands -are robust and should not be preceded by a ‘\protect’ command. Nor can -a ‘\protect’ command be used in the argument to ‘\addtocounter’ or -‘\setcounter’ command. + Although usually a ‘\protect’ command doesn't hurt, length commands +such as ‘\parindent’ should not be preceded by a ‘\protect’ command +(*note Lengths::. Nor can a ‘\protect’ command be used in the argument +to ‘\addtocounter’ or ‘\setcounter’ command (*note \setcounter:: and +*note \addtocounter::. These commands are already robust. + + As of the October 2019 release of LaTeX +(<https://www.latex-project.org/news/latex2e-news/ltnews30.pdf>), most +commands that had been previously fragile were fixed to be robust. For +example, any command taking an optional argument, such as ‘\root’ or +‘\raisebox’, was fragile, but is now robust. Similarly, ‘\(...\)’ math +was fragile and is now robust (‘$...$’ has always been robust). - In this example the ‘\caption’ command gives a mysterious error about -an extra curly brace. Fix the problem by preceding each ‘\raisebox’ -command with ‘\protect’. + Perhaps the most commonly used remaining fragile command is ‘\verb’; +for example, \begin{figure} ... - \caption{Company headquarters of A\raisebox{1pt}{B}\raisebox{-1pt}{C}} + \caption{This \verb|\command| causes an error.} \end{figure} - In the next example the ‘\tableofcontents’ command gives an error -because the ‘\(..\)’ in the section title expands to illegal TeX in the -‘.toc’ file. You can solve this by changing ‘\(..\)’ to -‘\protect\(..\protect\)’. + Adding ‘\protect’ does not help here. It's usually feasible to +rewrite the caption (or section heading or whatever) to use ‘\texttt’, +often the simplest solution. - \begin{document} - \tableofcontents - ... - \section{Einstein's \( e=mc^2 \)} - ... + Alternatively, to use ‘\verb’, you can apply the ‘\cprotect’ command +from ‘cprotect’ package (<https://ctan.org/pkg/cprotect>) to the +‘\caption’: + + \cprotect\caption{This \verb|\command| is ok with \verb|\cprotect|.} + + ‘\cprotect’ also allows use of ‘\begin...\end’ environments in moving +arguments, where they are normally not allowed, via a similar prefix +command ‘\cprotEnv’. File: latex2e.info, Node: \ignorespaces & \ignorespacesafterend, Next: xspace package, Prev: \protect, Up: Definitions @@ -8447,12 +8347,12 @@ solution is to change to ‘\newenvironment{eq}{\begin{equation}}{\end{equation}\ignorespacesafterend}’. -File: latex2e.info, Node: xspace package, Prev: \ignorespaces & \ignorespacesafterend, Up: Definitions +File: latex2e.info, Node: xspace package, Next: Class and package commands, Prev: \ignorespaces & \ignorespacesafterend, Up: Definitions -12.13 xspace package -==================== +12.13 ‘xspace’ package +====================== -Synopsis: +This is an add-on package, not part of core LaTeX. Synopsis: \usepackage{xspace} ... @@ -8462,15 +8362,15 @@ Synopsis: adds a space unless the command is followed by certain punctuation characters. - After a command control sequence that is a control word (*note -Control sequences::, as opposed to control symbols such as ‘\$’), TeX -gobbles blank characters. Thus, in the first sentence below, the output -has ‘Vermont’ placed snugly against the period, without any intervening -space. + After a control sequence that is a control word (*note Control +sequences::, as opposed to control symbols such as ‘\$’), TeX gobbles +blank characters. Thus, in the first sentence below, the output has +‘Vermont’ placed snugly against the period, without any intervening +space, despite the space in the input. \newcommand{\VT}{Vermont} Our college is in \VT . - The \VT{} summers are nice. + \VT{} summers are nice. But because of the gobbling, the second sentence needs the empty curly braces or else there would be no space separating ‘Vermont’ from @@ -8489,17 +8389,576 @@ In this example, the empty braces are not needed. The default exception list contains the characters ‘,.'/?;:!~-)’, the open curly brace and the backslash-space command discussed above, and -the commands ‘\footnote’ or ‘\footnotemark’. Add to that list as with -‘\xspaceaddexceptions{\myfni \myfnii}’ which adds ‘\myfni’ and ‘\myfnii’ -to the list, and remove from that list as with +the commands ‘\footnote’ or ‘\footnotemark’. You can add to that list +as with ‘\xspaceaddexceptions{\myfni \myfnii}’ which adds ‘\myfni’ +and ‘\myfnii’ to the list; and you can remove from that list as with ‘\xspaceremoveexception{!}’. A comment: many experts prefer not to use ‘\xspace’. Putting it in a definition means that the command will usually get the spacing right. -But it isn’t easy to predict when to enter empty braces because +But it isn't easy to predict when to enter empty braces because ‘\xspace’ will get it wrong, such as when it is followed by another command, and so ‘\xspace’ can make editing material harder and more -error-prone than instead always inserting the empty braces. +error-prone than instead of always inserting the empty braces. + + +File: latex2e.info, Node: Class and package commands, Prev: xspace package, Up: Definitions + +12.14 Class and package commands +================================ + +These are commands designed to help writers of classes or packages. + +* Menu: + +* \AtBeginDvi & \AtEndDvi:: +* \AtEndOfClass & \AtEndOfPackage:: +* \CheckCommand:: +* \ClassError and \PackageError and others:: +* \CurrentOption:: +* \DeclareOption:: +* \DeclareRobustCommand:: +* \ExecuteOptions:: +* \IfFileExists & \InputIfFileExists:: +* \LoadClass & \LoadClassWithOptions:: +* \NeedsTeXFormat:: +* \OptionNotUsed:: +* \PassOptionsToClass & \PassOptionsToPackage:: +* \ProcessOptions:: +* \ProvidesClass & \ProvidesPackage:: +* \ProvidesFile:: +* \RequirePackage & \RequirePackageWithOptions :: + + +File: latex2e.info, Node: \AtBeginDvi & \AtEndDvi, Next: \AtEndOfClass & \AtEndOfPackage, Up: Class and package commands + +12.14.1 ‘\AtBeginDvi’ & ‘\AtEndDvi’ +----------------------------------- + +Synopsis: + + \AtBeginDvi{CODE} + \AtEndDvi{CODE} + + ‘\AtBeginDvi’ saves, in a box register, CODE to be executed at the +beginning of the shipout of the first page of the document. Despite the +name, it applies to DVI, PDF, and XDV output. It fills the +‘shipout/firstpage’ hook; new code should use that hook directly. + + Similarly, ‘\AtEndDvi’ (previously available only with the ‘atenddvi’ +package) is code executed when finalizing the main output document. + + +File: latex2e.info, Node: \AtEndOfClass & \AtEndOfPackage, Next: \CheckCommand, Prev: \AtBeginDvi & \AtEndDvi, Up: Class and package commands + +12.14.2 ‘\AtEndOfClass’ & ‘\AtEndOfPackage’ +------------------------------------------- + +Synopses: + + \AtEndOfClass{CODE} + \AtEndOfPackage{CODE} + + Hooks to insert CODE to be executed when LaTeX finishes processing +the current class resp. package. + + These hooks can be used multiple times; each ‘code’ segment will be +executed in the order called. Many packages and classes use these +commands. + + See also *note \AtBeginDocument::. + + +File: latex2e.info, Node: \CheckCommand, Next: \ClassError and \PackageError and others, Prev: \AtEndOfClass & \AtEndOfPackage, Up: Class and package commands + +12.14.3 ‘\CheckCommand’ +----------------------- + +Synopsis: + + \CheckCommand{CMD}[NUM][DEFAULT]{DEFINITION} + \CheckCommand* (same parameters) + + Like ‘\newcommand’ (*note \newcommand & \renewcommand::) but does not +define CMD; instead it checks that the current definition of CMD is +exactly as given by DEFINITION and is or is not “‘\long’” as expected. +A long command is a command that accepts ‘\par’ within an argument. + + With the unstarred version of ‘\CheckCommand’, CMD is expected to be +‘\long’; with the starred version, CMD must not be ‘\long’ + + ‘\CheckCommand’ raises an error when the check fails. This allows +you to check before you start redefining ‘cmd’ yourself that no other +package has already redefined this command. + + +File: latex2e.info, Node: \ClassError and \PackageError and others, Next: \CurrentOption, Prev: \CheckCommand, Up: Class and package commands + +12.14.4 ‘\ClassError’ and ‘\PackageError’ and others +---------------------------------------------------- + +Produce error, warning, and informational messages for classes: + +‘\ClassError{CLASS NAME}{ERROR-TEXT}{HELP-TEXT}’ +‘\ClassWarning{CLASS NAME}{WARNING-TEXT}’ +‘\ClassWarningNoLine{CLASS NAME}{WARNING-TEXT}’ +‘\ClassInfo{CLASS NAME}{INFO-TEXT}’ +‘\ClassInfoNoLine{CLASS NAME}{INFO-TEXT}’ + +and the same for packages: +‘\PackageError{PACKAGE NAME}{ERROR-TEXT}{HELP-TEXT}’ +‘\PackageWarning{PACKAGE NAME}{WARNING-TEXT}’ +‘\PackageWarningNoLine{PACKAGE NAME}{WARNING-TEXT}’ +‘\PackageInfo{PACKAGE NAME}{INFO-TEXT}’ +‘\PackageInfoNoLine{PACKAGE NAME}{INFO-TEXT}’ + + For ‘\ClassError’ and ‘\PackageError’ the message is ERROR-TEXT, +followed by TeX's '‘?’' error prompt. If the user then asks for help by +typing ‘h’, they see the HELP TEXT. + + The four ‘Warning’ commands are similar except that they write +WARNING-TEXT on the screen with no error prompt. The four ‘Info’ +commands write INFO-TEXT only in the transcript file. The ‘NoLine’ +versions omit the number of the line generating the message, while the +other versions do show that number. + + To format the messages, including the HELP-TEXT: use ‘\protect’ to +stop a command from expanding, get a line break with ‘\MessageBreak’, +and get a space with ‘\space’ when a space character is ignore, most +commonly after a command. + + LaTeX appends a period to the messages. + + +File: latex2e.info, Node: \CurrentOption, Next: \DeclareOption, Prev: \ClassError and \PackageError and others, Up: Class and package commands + +12.14.5 ‘\CurrentOption’ +------------------------ + +Expands to the name of the option currently being processed. This can +only be used within the CODE argument of either ‘\DeclareOption’ or +‘\DeclareOption*’. + + +File: latex2e.info, Node: \DeclareOption, Next: \DeclareRobustCommand, Prev: \CurrentOption, Up: Class and package commands + +12.14.6 ‘\DeclareOption’ +------------------------ + +Synopsis: + + \DeclareOption{OPTION}{CODE} + \DeclareOption*{OPTION}{CODE} + + Define an option a user can include in their ‘\documentclass’ +command. For example, a class ‘smcmemo’ could have an option ‘logo’ +allowing users to put the institutional logo on the first page. The +document would start with ‘\documentclass[logo]{smcmemo}’. To enable +this, the class file must contain ‘\DeclareOption{logo}{CODE}’ (and +later, ‘\ProcessOptions’). + + If you request an option that has not been declared, by default this +will produce a warning like ‘Unused global option(s): [badoption].’ This +can be changed by using ‘\DeclareOption*{CODE}’, which executes CODE for +any unknown option. + + For example, many classes extend an existing class, using code such +as ‘\LoadClass{article}’ (*note \LoadClass::). In this case, it makes +sense to pass any otherwise-unknown options to the underlying class, +like this: + + \DeclareOption*{% + \PassOptionsToClass{\CurrentOption}{article}% + } + + As another example, our class ‘smcmemo’ might allow users to keep +lists of memo recipients in external files, so the user could invoke +‘\documentclass[math]{smcmemo}’ and it will read the file ‘math.memo’. +This code inputs the file if it exists, while if it doesn't, the option +is passed to the ‘article’ class: + + \DeclareOption*{\InputIfFileExists{\CurrentOption.memo} + {}{% + \PassOptionsToClass{\CurrentOption}{article}}} + + +File: latex2e.info, Node: \DeclareRobustCommand, Next: \ExecuteOptions, Prev: \DeclareOption, Up: Class and package commands + +12.14.7 ‘\DeclareRobustCommand’ +------------------------------- + +Synopsis: + + \DeclareRobustCommand{CMD}[NUM][DEFAULT]{DEFINITION} + \DeclareRobustCommand* (same parameters + + ‘\DeclareRobustCommand’ and its starred form are generally like +‘\newcommand’ and ‘\newcommand*’ (*note \newcommand & \renewcommand::), +with the addition that they define a so-called “robust” command, even if +some code within the DEFINITION is fragile. (For a discussion of robust +and fragile commands, *note \protect::.) + + Also unlike ‘\newcommand’, these do not give an error if macro CMD +already exists; instead, a log message is put into the transcript file +if a command is redefined. Thus, ‘\DeclareRobustCommand’ can be used to +define new robust commands or to redefine existing commands, making them +robust. + + The starred form, ‘\DeclareRobustCommand*’, disallows the arguments +from containing multiple paragraphs, just like the starred form of +‘\newcommand’ and ‘\renewcommand’. The meaning of the arguments is the +same. + + Commands defined this way are a bit less efficient than those defined +using ‘\newcommand’ so unless the command's data is fragile and the +command is used within a moving argument, use ‘\newcommand’. + + Related to this, the ‘etoolbox’ package offers three commands and +their starred forms: ‘\newrobustcmd’(‘*’) ‘\renewrobustcmd’(‘*’), and +‘\providerobustcmd’(‘*’). They are similar to ‘\newcommand’, +‘\renewcommand’, and ‘\providecommand’ and their own starred forms, but +define a robust CMD. They have two possible advantages compared to +‘\DeclareRobustCommand’: + + 1. They use the low-level e-TeX protection mechanism rather than the + higher-level LaTeX ‘\protect’ mechanism, so they do not incur the + slight loss of performance mentioned above, and + + 2. They make the same distinction between ‘\new...’, ‘\renew...’, and + ‘\provide...’, as the standard commands. That is, they do not just + write a log message when you redefine CMD that already exists; you + need to use either ‘\renew...’ or ‘\provide...’, or you get an + error. This may or may not be a benefit. + + +File: latex2e.info, Node: \ExecuteOptions, Next: \IfFileExists & \InputIfFileExists, Prev: \DeclareRobustCommand, Up: Class and package commands + +12.14.8 ‘\ExecuteOptions’ +------------------------- + +Synopsis: + + \ExecuteOptions{OPTION-LIST} + + For each option OPTION in OPTION-LIST, in order, this command +executes the command ‘\ds@OPTION’. If this command is not defined then +that option is silently ignored. + + This can be used to provide a default option list before +‘\ProcessOptions’. For example, if in a class file you want the default +to be 11pt fonts then you could specify +‘\ExecuteOptions{11pt}\ProcessOptions\relax’. + + +File: latex2e.info, Node: \IfFileExists & \InputIfFileExists, Next: \LoadClass & \LoadClassWithOptions, Prev: \ExecuteOptions, Up: Class and package commands + +12.14.9 ‘\IfFileExists’ & ‘\InputIfFileExists’ +---------------------------------------------- + +Synopses: + + \IfFileExists{FILENAME}{TRUE-CODE}{FALSE-CODE} + \InputIfFileExists{FILENAME}{TRUE-CODE}{FALSE-CODE} + + ‘\IfFileExists’ executes TRUE-CODE if LaTeX finds the file ‘FILENAME’ +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 current +directory do something like +‘\IfFileExists{./FILENAME}{TRUE-CODE}{FALSE-CODE}’. If you ask for a +filename without a ‘.tex’ extension then LaTeX will first look for the +file by appending the ‘.tex’; for more on how LaTeX handles file +extensions see *note \input::. + + ‘\InputIfFileExists’ is similar, but, as the name states, +automatically ‘\input’s FILENAME if it exists. The TRUE-CODE is +executed just before the ‘\input’; if the file doesn't exist, the +FALSE-CODE is executed. An example: + + \InputIfFileExists{mypkg.cfg} + {\PackageInfo{Loading mypkg.cfg for configuration information}} + {\PackageInfo{No mypkg.cfg found}} + + +File: latex2e.info, Node: \LoadClass & \LoadClassWithOptions, Next: \NeedsTeXFormat, Prev: \IfFileExists & \InputIfFileExists, Up: Class and package commands + +12.14.10 ‘\LoadClass’ & ‘\LoadClassWithOptions’ +----------------------------------------------- + +Synopses: + + \LoadClass[OPTIONS-LIST]{CLASS-NAME}[RELEASE-DATE] + \LoadClassWithOptions{CLASS-NAME}[RELEASE-DATE] + + Load a class, as with +‘\documentclass[OPTIONS-LIST]{CLASS-NAME}[RELEASE-DATE]’. An example: +‘\LoadClass[twoside]{article}’. + + The OPTIONS-LIST, if present, is a comma-separated list. The +RELEASE-DATE is also optional. If present it must have the form +‘YYYY/MM/DD’. + + If you request 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 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 passed to it +via ‘\PassOptionsToClass’. This is a convenience command that lets you +build classes on existing ones, such as the standard ‘article’ class, +without having to track which options were passed. + + +File: latex2e.info, Node: \NeedsTeXFormat, Next: \OptionNotUsed, Prev: \LoadClass & \LoadClassWithOptions, Up: Class and package commands + +12.14.11 ‘\NeedsTeXFormat’ +-------------------------- + +Synopsis: + + \NeedsTeXFormat{FORMAT}[FORMAT-DATE] + + Specifies the format that this class must be run under. Often issued +as the first line of a class file, and most often used as: +‘\NeedsTeXFormat{LaTeX2e}’. When a document using that class is +processed, the format being run must exactly match the FORMAT name +given, including case. If it does not match then execution stops with +an error like ‘This file needs format `LaTeX2e' but this is `plain'.’. + + To require a version of the format that you know to have certain +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 this. + + You have requested release `2038/01/20' of LaTeX, but only + release `2016/02/01' is available. + + +File: latex2e.info, Node: \OptionNotUsed, Next: \PassOptionsToClass & \PassOptionsToPackage, Prev: \NeedsTeXFormat, Up: Class and package commands + +12.14.12 ‘\OptionNotUsed’ +------------------------- + +Adds the current option to the list of unused options. Can only be used +within the CODE argument of either ‘\DeclareOption’ or +‘\DeclareOption*’. + + +File: latex2e.info, Node: \PassOptionsToClass & \PassOptionsToPackage, Next: \ProcessOptions, Prev: \OptionNotUsed, Up: Class and package commands + +12.14.13 ‘\PassOptionsToClass’ & ‘\PassOptionsToPackage’ +-------------------------------------------------------- + +Synopses: + + \PassOptionsToClass{OPTIONS}{CLSNAME} + \PassOptionsToPackage{OPTION}{PKGNAME} + + Adds the options in the comma-separated list OPTIONS to the options +used by any future ‘\RequirePackage’ or ‘\usepackage’ command for the +class CLSNAME or the package PKGNAME, respectively. + + The reason for these commands is that although you may load a package +any number of times with no options, if you can specify options only the +first time you load the package. Loading a package with options more +than once will get you an error like ‘Option clash for package foo.’. +LaTeX throws an error even if there is no conflict between the options. + + If your own code is bringing in a package twice then you can combine +the calls; for example, replacing the two + + \RequirePackage[landscape]{geometry} + \RequirePackage[margins=1in]{geometry} + +with the single command + + \RequirePackage[landscape,margins=1in]{geometry} + + However, suppose you are loading ‘firstpkg’ and inside that package +it loads ‘secondpkg’, and you need ‘secondpkg’ to be loaded with option +‘draft’. Then before load the first package you must tell LaTeX about +the desired 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, or yours. + + These commands are useful for general users as well as class and +package writers. For instance, suppose a user wants to load the +‘graphicx’ package with the option ‘draft’ and also wants to use a class +‘foo’ that loads the ‘graphicx’ package, but without that option. The +user could start their LaTeX file with +‘\PassOptionsToPackage{draft}{graphicx} \documentclass{foo}’. + + +File: latex2e.info, Node: \ProcessOptions, Next: \ProvidesClass & \ProvidesPackage, Prev: \PassOptionsToClass & \PassOptionsToPackage, Up: Class and package commands + +12.14.14 ‘\ProcessOptions’ +-------------------------- + +Synopsis: + + \ProcessOptions\@OPTIONS + \ProcessOptions*\@OPTIONS + + Execute the code for each option that the user has invoked. Invoke +it in the class file as ‘\ProcessOptions\relax’ (because of the +existence of the starred version, described below). + + Options come in two types. “Local options” have been specified for +this particular package in ‘\usepackage[OPTIONS]’, +‘\RequirePackage[OPTIONS]’, or the OPTIONS argument of +‘\PassOptionsToPackage{OPTIONS}’. “Global options” are those given by +the class user in ‘\documentclass[OPTIONS]’. If an option is specified +both locally and globally then it is local. + + When ‘\ProcessOptions’ is called for a package ‘pkg.sty’, the +following happens: + + 1. For each option OPTION so far declared with ‘\DeclareOption’, + ‘\ProcessOptions’ looks to see if that option is either global or + local for ‘pkg’. If so, then it executes the declared code. This + is done in the order in which these options were given in + ‘pkg.sty’. + + 2. For each remaining local option, it executes the command + ‘\ds@’OPTION if it has been defined somewhere (other than by a + ‘\DeclareOption’); otherwise, it executes the default option code + given in ‘\DeclareOption*’. If no default option code has been + declared then it gives an error message. This is done in the order + in which these options were specified. + + When ‘\ProcessOptions’ is called for a class it works in the same way +except that all options are local, and the default CODE for +‘\DeclareOption*’ is ‘\OptionNotUsed’ rather than an error. + + The starred version ‘\ProcessOptions*’ executes the options in the +order specified in the calling commands, rather than in the order of +declaration in the class or package. For a package, this means that the +global options are processed first. + + +File: latex2e.info, Node: \ProvidesClass & \ProvidesPackage, Next: \ProvidesFile, Prev: \ProcessOptions, Up: Class and package commands + +12.14.15 ‘\ProvidesClass’ & ‘\ProvidesPackage’ +---------------------------------------------- + +Synopses: + + \ProvidesClass{CLSNAME}[RELEASE-DATE [INFO-TEXT]] + \ProvidesPackage{PKGNAME}[RELEASE-DATE [INFO-TEXT]] + + Identifies the class or package being defined, printing a message to +the screen and the log file. + + When you load a class or package, for example with +‘\documentclass{smcmemo}’ or ‘\usepackage{test}’, LaTeX inputs a file +(‘smcmemo.cls’ and ‘test.sty’, respectively). 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{foo}’ then you get a +warning like ‘You have requested document class `smcmemo', but the +document class provides 'foo'.’ 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. +It 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 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. Perhaps more importantly, the date serves as +documentation of the last release. (In practice, package users rarely +include a date, and class users almost never do.) + + +File: latex2e.info, Node: \ProvidesFile, Next: \RequirePackage & \RequirePackageWithOptions, Prev: \ProvidesClass & \ProvidesPackage, Up: Class and package commands + +12.14.16 ‘\ProvidesFile’ +------------------------ + +Synopsis: + + \ProvidesFile{FILENAME}[INFO-TEXT] + + Declare a file other than the main class and package files, such as a +configuration or font definition file. It writes the given information +to the log file, essentially like ‘\ProvidesClass’ and +‘\ProvidesPackage’ (see the previous section). + + For example: + + \ProvidesFile{smcmemo.cfg}[2017/10/12 config file for smcmemo.cls] + +writes this into the log: + + File: smcmemo.cfg 2017/10/12 config file for smcmemo.cls + + +File: latex2e.info, Node: \RequirePackage & \RequirePackageWithOptions, Prev: \ProvidesFile, Up: Class and package commands + +12.14.17 ‘\RequirePackage’ & ‘\RequirePackageWithOptions’ +--------------------------------------------------------- + +Synopsis: + + \RequirePackage[OPTION-LIST]{PKGNAME}[RELEASE-DATE] + \RequirePackageWithOptions{PKGNAME}[RELEASE-DATE] + + Load a package, like the command ‘\usepackage’ (*note Additional +packages::). An example: +‘\RequirePackage[landscape,margin=1in]{geometry}’ + + The initial optional argument OPTION-LIST, if present, must be a +comma-separated list. The trailing optional argument RELEASE-DATE, if +present, must have the form ‘YYYY/MM/DD’. If the release date of the +package as installed on your system is earlier than RELEASE-DATE then +you get a warning like ‘You have requested, on input line 9, version +`2017/07/03' of package jhtest, but only version `2000/01/01' is +available’. + + The ‘\RequirePackageWithOptions’ variant uses the list of options for +the current class. This means it ignores any options passed to it via +‘\PassOptionsToClass’. This is a convenience command to allow easily +building classes on existing ones without having to track which options +were passed. + + The difference between ‘\usepackage’ and ‘\RequirePackage’ is small. +The ‘\usepackage’ command is intended to be used in documents, while +‘\RequirePackage’ is intended for package and class files. The most +significant difference in practice is that ‘\RequirePackage’ can be used +in a document before the ‘\documentclass’ command, while ‘\usepackage’ +gives an error there. The most common need for this nowadays is for the +‘\DocumentMetadata’ command (*note \DocumentMetadata::). + + The LaTeX development team strongly recommends use of these and +related commands over Plain TeX's ‘\input’; see the Class Guide +(<https://ctan.org/pkg/clsguide>). File: latex2e.info, Node: Counters, Next: Lengths, Prev: Definitions, Up: Top @@ -8509,11 +8968,11 @@ File: latex2e.info, Node: Counters, Next: Lengths, Prev: Definitions, Up: To Everything LaTeX numbers for you has a counter associated with it. The name of the counter is often the same as the name of the environment or -command associated with the number, except that the counter’s name has +command associated with the number, except that the counter's name has no backslash ‘\’. Thus, associated with the ‘\chapter’ command is the ‘chapter’ counter that keeps track of the chapter number. - Below is a list of the counters used in LaTeX’s standard document + Below is a list of the counters used in LaTeX's standard document classes to control numbering. part paragraph figure enumi @@ -8557,12 +9016,12 @@ 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’, ... If - the counter’s value is less than 1 or more than 26 then you get + 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’, ... If the counter’s value + 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.’ @@ -8570,19 +9029,19 @@ with a backslash. Print in Arabic numbers such as ‘5’ or ‘-2’. ‘\roman{COUNTER}’ - Print in lowercase roman numerals: ‘i’, ‘ii’, ... If the counter’s + 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’, ... If the counter’s + 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 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 + 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. @@ -8677,7 +9136,7 @@ Synopsis: \setcounter{COUNTER}{VALUE} 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 +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. @@ -8719,7 +9178,7 @@ Synopsis: 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::.) +definition of "counters numbered within", *note \newcounter::.) In addition, this command also defines the current ‘\ref’ value to be the result of ‘\thecounter’. @@ -8738,7 +9197,7 @@ Synopsis: \stepcounter{COUNTER} Globally adds one to COUNTER and resets all counters numbered within -it. (For the definition of “counters numbered within”, *note +it. (For the definition of "counters numbered within", *note \newcounter::.) This command differs from ‘\refstepcounter’ in that this one does not @@ -8796,10 +9255,10 @@ TeX to stretch or shrink the length to optimize placement. \newcommand{\showhbox}[2]{% \fboxsep=0pt\fbox{\hbox to #1{#2}}} -This example uses those commands to show a black bar 100 points long -between ‘XXX’ and ‘YYY’. This length is rigid. +This next example uses those commands to show a black bar 100 points +long between ‘ABC’ and ‘XYZ’. This length is rigid. - XXX\showhbox{100pt}{\blackbar{100pt}}YYY + ABC\showhbox{100pt}{\blackbar{100pt}}XYZ As for rubber lengths, shrinking is simpler one: with ‘1cm minus 0.05cm’, the natural length is 1cm but TeX can shrink it down as far as @@ -8807,15 +9266,15 @@ between ‘XXX’ and ‘YYY’. This length is rigid. first one works fine, producing a space of 98 points between the two bars. - XXX\showhbox{300pt}{% + ABC\showhbox{300pt}{% \blackbar{101pt}\hspace{100pt minus 2pt}\blackbar{101pt}}YYY - XXX\showhbox{300pt}{% + ABC\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 +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. @@ -8823,16 +9282,16 @@ allocated, as TeX has refused to shrink the total to less than beyond the given amount, it will do it. Here the first line is fine, producing a space of 110 points between the bars. - XXX\showhbox{300pt}{% + ABC\showhbox{300pt}{% \blackbar{95pt}\hspace{100pt plus 10pt}\blackbar{95pt}}YYY - XXX\showhbox{300pt}{% + ABC\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. TeX stretches the space to the required length but it gives you a warning like ‘Underfull \hbox (badness 10000) detected at line -22’. (We won’t discuss badness.) +22’. (We won't discuss badness.) You can put both stretch and shrink in the same length, as in ‘1ex plus 0.05ex minus 0.02ex’. @@ -8840,20 +9299,20 @@ 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}{% + ABC\showhbox{300pt}{% \blackbar{100pt}% left \hspace{0pt plus 50pt}\blackbar{80pt}\hspace{0pt plus 10pt}% middle \blackbar{100pt}}YYY % right The left and right bars take up 100 points, so the middle needs another -100. The middle bar is 80 points so the two ‘\hspace’’s must stretch +100. The middle bar is 80 points so the two ‘\hspace’'s must stretch 20 points. Because the two are ‘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 TeX could set it to any -distance. Here the two figures will be equal-spaced across the page. +distance. Here the two figures will be equally spaced across the page. \begin{minipage}{\linewidth} \hspace{0pt plus 1fill}\includegraphics{godel.png}% @@ -8962,7 +9421,7 @@ 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, with LaTeX’s defaults the first paragraph will be indented + 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. @@ -9216,7 +9675,7 @@ So ‘\the\glueexpr 5pt plus 1pt * 2 \relax’ results in ‘10pt plus 2pt’. TeX will coerce other numerical types in the same way as it does when doing register assignment. Thus ‘\the\numexpr\dimexpr 1pt\relax\relax’ will result in ‘65536’, which is ‘1pt’ converted to scaled points (*note -‘sp’: units of length sp, TeX’s internal unit) and then coerced into an +‘sp’: units of length sp, TeX's internal unit) and then coerced into an integer. With a ‘\glueexpr’ here, the stretch and shrink would be dropped. Going the other way, a ‘\numexpr’ inside a ‘\dimexpr’ or ‘\glueexpr’ will need appropriate units, as in ‘\the\dimexpr\numexpr 1 + @@ -9231,7 +9690,7 @@ a division) which is done as one combined operation with a 64-bit product as intermediate value. The result of each operation is again checked to be in the allowed range. - Finally, division and scaling take place with rounding (unlike TeX’s + Finally, division and scaling take place with rounding (unlike TeX's ‘\divide’, which truncates). Thus ‘\the\dimexpr 5pt*(3/2)\relax’ puts ‘10.0pt’ in the document, because it rounds ‘3/2’ to ‘2’, while ‘\the\dimexpr 5pt*(4/3)\relax’ produces ‘5.0pt’. @@ -9277,11 +9736,11 @@ identical: Second paragraph. \end{document} - Once LaTeX has gathered all of a paragraph’s contents it divides that + Once LaTeX has gathered all of a paragraph's contents it divides that content into lines in a way that is optimized over the entire paragraph (*note Line breaking::). - There are places where a new paragraph is not permitted. Don’t put a + There are places where a new paragraph is not permitted. Don't put a blank line in math mode (*note Modes::); here the blank line before the ‘\end{equation}’ @@ -9388,7 +9847,7 @@ 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. +command's only effect is to output a space. This example starts a fresh paragraph. @@ -9447,7 +9906,7 @@ is ‘1em’. (These values are set before LaTeX calls ‘\normalfont’ so different font then to set ‘\parindent’ to 1em matching that font, put ‘\AtBeginDocument{\setlength{\parindent}{1em}}’ in the preamble.) - The default value for ‘\parskip’ in LaTeX’s standard document classes + The default value for ‘\parskip’ in LaTeX's standard document classes is ‘0pt plus1pt’. @@ -9480,7 +9939,7 @@ paragraph. Revert that to the default position with ‘\normalmarginpar’. note in the left margin, while the mandatory argument RIGHT is used for a note in the right margin. - Normally, a note’s first word will not be hyphenated. You can enable + 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: @@ -9578,10 +10037,10 @@ on CTAN. * Math symbols:: Various mathematical squiggles. * Math functions:: Math function names like sin and exp. * Math accents:: Accents in math. -* Over- and Underlining:: Things over or under formulas. +* Over- or under math:: Lines, braces, arrows over/under formulas. * Spacing in math mode:: Thick, medium, thin, and negative spaces. * Math styles:: Determine the size of things. -* Math miscellany:: Stuff that doesn’t fit anywhere else. +* Math miscellany:: Stuff that doesn't fit anywhere else. File: latex2e.info, Node: Subscripts & superscripts, Next: Math symbols, Up: Math formulas @@ -9602,14 +10061,14 @@ or, one of: Make EXP appear as a superscript of BASE (with the caret character, ‘^’) or a subscript (with underscore, ‘_’). - In this example the ‘0’’s and ‘1’’s are subscripts while the ‘2’’s + In this example the ‘0’'s and ‘1’'s are subscripts while the ‘2’'s are superscripts. \( (x_0+x_1)^2 \leq (x_0)^2+(x_1)^2 \) 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 +example's fourth line shows curly braces used to group an expression for the exponent. \begin{displaymath} @@ -9657,7 +10116,7 @@ File: latex2e.info, Node: Math symbols, Next: Math functions, Prev: Subscript 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 π. See the “Comprehensive LaTeX Symbol List” package at +the pi symbol π. See the "Comprehensive LaTeX Symbol List" package at <https://ctan.org/pkg/comprehensive>. Here is a list of commonly-used symbols. It is by no means @@ -10051,7 +10510,7 @@ whatever the current mode, see *note \ensuremath::. μ Lowercase Greek letter (ordinary). ‘\nabla’ - ∇ Hamilton’s del, or differential, operator (ordinary). + ∇ Hamilton's del, or differential, operator (ordinary). ‘\natural’ ♮ Musical natural notation (ordinary). @@ -10077,7 +10536,7 @@ whatever the current mode, see *note \ensuremath::. Long solidus, or slash, used to overstrike a following operator (relation). - Many negated operators are available that don’t require ‘\not’, + Many negated operators are available that don't require ‘\not’, particularly with the ‘amssymb’ package. For example, ‘\notin’ is typographically preferable to ‘\not\in’. @@ -10456,7 +10915,7 @@ whatever the current mode, see *note \ensuremath::. use the ‘mathtools’ package to create flexibly-sized norm symbols. ‘\vert’ - | Single line vertical bar (ordinary). For “such that”, as in the + | Single line vertical bar (ordinary). For "such that", as in the definition of a set, use ‘\mid’ because it is a relation. *Note Delimiters::, for how to use the ‘mathtools’ package to create flexibly-sized absolute-value symbols. @@ -10623,7 +11082,7 @@ the same.) If you do have a bold math font, though, then ‘\boldmath’ and ‘bm’ work fine. If no such font is available, one alternative is to construct fake -bold fonts with the ‘fontspec’ package’s ‘FakeBold=1’ parameter (see its +bold fonts with the ‘fontspec’ package's ‘FakeBold=1’ parameter (see its documentation, <https://ctan.org/pkg/fontspec>). This may be acceptable for drafting or informal distribution, but the results are far from a true bold font. @@ -10631,7 +11090,7 @@ true bold font. Another alternative to handling bold for OpenType math fonts is to use the ‘\symbf’ (bold), ‘\symbfit’ (bold italic), and related commands from the ‘unicode-math’ package. These do not change the current font, -but rather change the (Unicode) “alphabet” used, which in practice is +but rather change the (Unicode) "alphabet" used, which in practice is more widely supported than a separate bold font. Many variations are possible, and so there are subtleties to getting the desired output. As usual, see the package documentation @@ -10805,7 +11264,7 @@ But with ‘\left’ and ‘\right’ Lorem ipsum dolor sit amet \( \left(a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+w+x+y+z\right) \) -LaTeX won’t break the line, causing the formula to extend into the +LaTeX won't break the line, causing the formula to extend into the margin. Because ‘\left ... \right’ make a group, all the usual grouping rules @@ -10821,7 +11280,7 @@ forgotten, and the output is ‘1.2pt’. The ‘\left ... \right’ pair affect the horizontal spacing of the enclosed formula, in two ways. The first is that in ‘\( \sin(x) = \sin\left(x\right) \)’ the one after the equals sign has more space -around the ‘x’. That’s because ‘\left( ... \right)’ inserts an inner +around the ‘x’. That's because ‘\left( ... \right)’ inserts an inner node while ‘( ... )’ inserts an opening node. The second way that the pair affect the horizontal spacing is that because they form a group, the enclosed subformula will be typeset at its natural width, with no @@ -10851,7 +11310,7 @@ TeX can choose delimiters that are too small, as in ‘\( \left| |x|+|y| A third awkward case is when a long displayed formula is on more than one line and you must match the sizes of the opening and closing -delimiter; you can’t use ‘\left’ on the first line and ‘\right’ on the +delimiter; you can't use ‘\left’ on the first line and ‘\right’ on the last because they must be paired. To size the delimiters manually, see *note \bigl & \bigr etc.::. @@ -11004,16 +11463,16 @@ 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. - The ‘\dots’ command from ‘amsmath’ differs from the LaTeX kernel’s + The ‘\dots’ command from ‘amsmath’ differs from the LaTeX kernel's ‘\dots’ command in another way: it outputs a thin space after the ellipsis. Furthermore, the ‘unicode-math’ package automatically loads -‘amsmath’, so ‘amsmath’’s ‘\dots’ may be active even when you did not +‘amsmath’, so ‘amsmath’'s ‘\dots’ may be active even when you did not explicitly load it, thus changing the output from ‘\dots’ in both text and math mode. Yet more about the ellipsis commands: when running under Unicode engines (‘lualatex’, ‘xelatex’), LaTeX will use the Unicode ellipsis -character (U+2026) in the font if it’s available; under traditional TeX +character (U+2026) in the font if it's available; under traditional TeX engines (‘pdflatex’, ‘latex’), it will typeset three spaced periods. Generally, the Unicode single-character ellipsis has almost no space between the three periods, while the spacing of the non-Unicode ellipsis @@ -11056,7 +11515,7 @@ Symbol Command Name ψ, Ψ ‘\psi’, ‘\Psi’ Psi ω, Ω ‘\omega’, ‘\Omega’ Omega - For omicron, if you are using LaTeX’s default Computer Modern font + For omicron, if you are using LaTeX's default Computer Modern font then enter omicron just as ‘o’ or ‘O’. If you like having the name or if your font shows a difference then you can use something like ‘\newcommand\omicron{o}’. The package ‘unicode-math’ has ‘\upomicron’ @@ -11185,7 +11644,7 @@ any superscript or subscript to be above and below, as is traditional with ‘\lim’, ‘\sup’, or ‘\max’. -File: latex2e.info, Node: Math accents, Next: Over- and Underlining, Prev: Math functions, Up: Math formulas +File: latex2e.info, Node: Math accents, Next: Over- or under math, Prev: Math functions, Up: Math formulas 16.4 Math accents ================= @@ -11237,35 +11696,37 @@ Accents::). use one without a dot, ‘\imath’ or ‘jmath’ (*note Math symbols::). -File: latex2e.info, Node: Over- and Underlining, Next: Spacing in math mode, Prev: Math accents, Up: Math formulas +File: latex2e.info, Node: Over- or under math, Next: Spacing in math mode, Prev: Math accents, Up: Math formulas -16.5 Over- and Underlining -========================== +16.5 Over- or under math +======================== -LaTeX provides commands for making overlines or underlines, or putting -braces over or under some material. +LaTeX provides commands for putting lines, braces, and arrows over or +under math material. -‘\underline{TEXT}’ - Underline TEXT. Works inside math mode, and outside. The line is +‘\underline{MATH}’ + Underline MATH. For example: ‘\underline{x+y}’. 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::). + ‘\(\underline{x}\)’. As of approximately 2019, this command and + others in this section are robust; before that, they were 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. + The package ‘ulem’ (<https://ctan.org/pkg/uelem>) does text mode + underlining and allows line breaking as well as a number of other + features. See also *note \hrulefill & \dotfill:: for producing a + line for such things as a signature or placeholder. -‘\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::). +‘\overline{MATH}’ + Put a horizontal line over MATH. For example: ‘\overline{x+y}’. + This differs from the accent 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 the subscript command, ‘_’, or - superscript, ‘^’, as here. + Put a brace under MATH. For example: + ‘(1-\underbrace{1/2)+(1/2}-1/3)’. + + You can attach text to the brace as a subscript (‘_’) or + superscript (‘^’) as here: \begin{displaymath} 1+1/2+\underbrace{1/3+1/4}_{>1/2}+ @@ -11276,15 +11737,20 @@ braces over or under some material. unconnected to the underbrace. ‘\overbrace{MATH}’ - Put a brace over MATH, as with - ‘\overbrace{x+x+\cdots+x}^{\mbox{\(k\) times}}’. See also - ‘\underbrace’. + Put a brace over MATH. For example: + ‘\overbrace{x+x+\cdots+x}^{\mbox{\(k\) times}}’. + +‘\overrightarrow{MATH}’ + Put a right arrow over MATH. For example: ‘\overrightarrow{x+y}’. + +‘\overleftarrow{MATH}’ + Put a left arrow over MATH. For example: ‘\overleftarrow{a+b}’. - The package ‘mathtools’ adds an over- and underbrace, as well as some -improvements on the braces. See the documentation on CTAN. + The package ‘mathtools’ (<https://ctan.org/pkg/mathtools>) adds an +over- and underbracket, as well as some improvements on the braces. -File: latex2e.info, Node: Spacing in math mode, Next: Math styles, Prev: Over- and Underlining, Up: Math formulas +File: latex2e.info, Node: Spacing in math mode, Next: Math styles, Prev: Over- or under math, Up: Math formulas 16.6 Spacing in math mode ========================= @@ -11293,7 +11759,7 @@ 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. - But LaTeX’s rules occasionally need tweaking. For example, in an + But LaTeX's rules occasionally 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: @@ -11417,15 +11883,15 @@ with the height of the ‘\sum’ (*note \phantom & \vphantom & \hphantom::). While most often used in mathematics, the ‘\smash’ command can appear -in other contexts. However, it doesn’t change into horizontal mode. So +in other contexts. However, it doesn't change into horizontal mode. So if it starts a paragraph then you should first put a ‘\leavevmode’, as in the bottom line below. - xxx xxx xxx + Text above. - \smash{yyy} % no paragraph indent + \smash{smashed, no indent} % no paragraph indent - \leavevmode\smash{zzz} % usual paragraph indent + \leavevmode\smash{smashed, with indent} % usual paragraph indent The package ‘mathtools’ has operators that provide even finer control over smashing a subformula box. @@ -11492,7 +11958,7 @@ should give it such a status, for example with the ‘\operatorname’ command from the package ‘amsmath’. While most often used in mathematics, these three can appear in other -contexts. However, they don’t cause LaTeX to change into horizontal +contexts. However, they don't cause LaTeX to change into horizontal mode. So if one of these starts a paragraph then you should prefix it with ‘\leavevmode’. @@ -11527,12 +11993,12 @@ File: latex2e.info, Node: Math styles, Next: Math miscellany, Prev: Spacing i 16.7 Math styles ================ -TeX’s rules for typesetting a formula depend on the context. For +TeX's rules for typesetting a formula depend on the context. For example, inside a displayed equation, the input ‘\sum_{0\leq i<n}k^m=\frac{n^{m+1}}{m+1}+\mbox{lower order terms}’ will give output with the summation index centered below the summation symbol. But if that input is inline then the summation index is off to the right rather -than below, so it won’t push the lines apart. Similarly, in a displayed +than below, so it won't push the lines apart. Similarly, in a displayed context, the symbols in the numerator and denominator will be larger than for an inline context, and in display math subscripts and superscripts are further apart then they are in inline math. @@ -11554,7 +12020,7 @@ superscripts are further apart then they are in inline math. declaration of ‘\displaystyle’, or ‘\textstyle’, or ‘\scriptstyle’, or ‘\scriptscriptstyle’. - In this example, the ‘Arithmetic’ line’s fraction will look + In this example, the ‘Arithmetic’ line's fraction will look scrunched. \begin{tabular}{r|cc} @@ -11565,7 +12031,7 @@ scrunched. &$\displaystyle a\cdot\frac{1-b^n}{1-b}$ \\ \end{tabular} -But because of the ‘\displaystyle’ declaration, the ‘Geometric’ line’s +But because of the ‘\displaystyle’ declaration, the ‘Geometric’ line's fraction will be easy to read, with characters the same size as in the rest of the line. @@ -11599,7 +12065,7 @@ File: latex2e.info, Node: Math miscellany, Prev: Math styles, Up: Math formul ==================== LaTeX contains a wide variety of mathematics facilities. Here are some -that don’t fit into other categories. +that don't fit into other categories. * Menu: @@ -11719,13 +12185,13 @@ the math modes), and error messages will refer to these. “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 + 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 might well complain that the finished - LR box won’t fit there.) + LR box won't fit there.) • “Math mode” is when LaTeX is generating an inline mathematical formula. @@ -11808,6 +12274,7 @@ See its documentation. * \pagenumbering:: Set the style used for page numbers. * \pagestyle:: Change the headings/footings style. * \thispagestyle:: Change the headings/footings style for this page. +* \thepage:: Changing page number representation everywhere. File: latex2e.info, Node: \maketitle, Next: \pagenumbering, Up: Page styles @@ -11854,23 +12321,23 @@ 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 + 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}’ - 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 + 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}’ Optional. Produce a footnote. You can use it in the author information for acknowledgements as illustrated above, but you can - also use it in the title, or any place a footnote mark makes sense. - It can be any text at all so you can use it for any purpose, such - as to print an email address. + also use it in the title, or anywhere that a footnote mark makes + sense. It can be any text at all so you can use it for any + purpose, such as to print an email address. ‘\title{TEXT}’ Required. Declare TEXT to be the title of the document. Get line @@ -11878,11 +12345,11 @@ either in the preamble or in the document body. ‘\title’ declaration then the ‘\maketitle’ command yields error ‘LaTeX Error: No \title given’. - To make your own title page, see *note titlepage::. You can either + To make your own title page, *note titlepage::. You can either create this as a one-off or you can include it as part of a renewed -‘\maketitle’ command. (Many publishers will provide a class to use in +‘\maketitle’ command. Many publishers will provide a class to use in place of ‘article’ that formats the title according to their house -requirements.) +requirements. File: latex2e.info, Node: \pagenumbering, Next: \pagestyle, Prev: \maketitle, Up: Page styles @@ -11900,14 +12367,7 @@ contents and other page references. This declaration has global scope so its effect is not stopped by an end of group such as a closing brace or an end of environment. - In this example, before the ‘Main’ section the pages are numbered -‘a’, etc. Starting on the page containing the ‘\pagenumbering’ call in -that section, the pages are numbered ‘1’, etc. - - \begin{document}\pagenumbering{alph} - ... - \section{Main}\pagenumbering{arabic} - ... + By default, LaTeX numbers pages starting at 1, using Arabic numerals. The argument NUMBER-STYLE is one of the following (see also *note \alph \Alph \arabic \roman \Roman \fnsymbol::). @@ -11930,20 +12390,35 @@ that section, the pages are numbered ‘1’, etc. 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}’.) + no page number is output, though the number is still reset. + References to that page also are blank. + + This setting does not work with the popular package ‘hyperref’, so + to omit page numbers 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 typeset the page number in some other way, or change +where the page number appears on the page, see *note \pagestyle:: (in +short: use the ‘fancyhdr’ package). The list above of LaTeX's built-in +numbering styles cannot be extended. - If you want to change where the page number appears on the page, -see *note \pagestyle::. If you want to change the value of the page -number, then you manipulate the ‘page’ counter (*note Counters::). + 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. LaTeX implements this, by +providing explicit commands for the different parts (*note \frontmatter +& \mainmatter & \backmatter::). + + As an explicit example, before the ‘Main’ section the pages are +numbered ‘a’, etc. Starting on the page containing the ‘\pagenumbering’ +call in that section, the pages are numbered ‘1’, etc. + + \begin{document}\pagenumbering{alph} + ... + \section{Main}\pagenumbering{arabic} + ... + + If you want to change the value of the page number, then you +manipulate the ‘page’ counter (*note Counters::). File: latex2e.info, Node: \pagestyle, Next: \thispagestyle, Prev: \pagenumbering, Up: Page styles @@ -11958,10 +12433,11 @@ Synopsis: 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 + A discussion with an example is below. First, however: 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. +options below should use this package. See its documentation +(<https://ctan.org/pkg/fancyhdr>). Values for STYLE: @@ -11980,10 +12456,10 @@ options below should use this package. See its documentation on CTAN. Custom headers, specified via the ‘\markboth’ or the ‘\markright’ commands. - Some discussion of the motivation for LaTeX’s mechanism will help you + 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 +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 @@ -12034,7 +12510,7 @@ etc. Sets the right hand page heading, leaving the left unchanged. -File: latex2e.info, Node: \thispagestyle, Prev: \pagestyle, Up: Page styles +File: latex2e.info, Node: \thispagestyle, Next: \thepage, Prev: \pagestyle, Up: Page styles 18.4 ‘\thispagestyle’ ===================== @@ -12065,6 +12541,32 @@ make the page entirely empty, the command ‘\thispagestyle{empty}’ immediately follows the second ‘\chapter’. +File: latex2e.info, Node: \thepage, Prev: \thispagestyle, Up: Page styles + +18.5 ‘\thepage’ +=============== + +If you want to change the appearance of page numbers only in the page +headers, for example by adding an ornament, typesetting in small caps, +etc., then the ‘fancyhdr’ package, as mentioned in a previous section, +is the best approach. + + On the other hand, you may want to change how page numbers are +denoted everywhere, including the table of contents and +cross-references, as well as the page headers. In this case, you should +redefine ‘\thepage’, which is the command LaTeX uses for the +representation of page numbers. + + However, ‘\thepage’ should do any typesetting or other complicated +maneuvers, but merely expand to the intended page number representation. +The results of a complicated redefinition of ‘\thepage’ are not +predictable, but LaTeX's report of page numbers in diagnostic messages, +at least, will become unusable. + + There is some discussion of this issue at +<https://tex.stackexchange.com/questions/687258>. + + File: latex2e.info, Node: Spaces, Next: Boxes, Prev: Page styles, Up: Top 19 Spaces @@ -12148,8 +12650,8 @@ stretchable and shrinkable, it is sometimes called “glue”. \noindent\makebox[\linewidth][r]{Name:\hspace{1in}} The ‘*’-form inserts horizontal space that is 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 ‘*’-form avoids +precisely, when TeX breaks a paragraph into lines any white space--glues +and kerns--that come at a line break are discarded. The ‘*’-form avoids that (technically, it adds a non-discardable invisible item in front of the space). @@ -12173,7 +12675,7 @@ If you erase the ‘*’ then LaTeX discards the blank. \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 a little if the three figures are too wide. But each space won't shrink more than 0.25cm (*note Lengths::). @@ -12210,7 +12712,7 @@ space can be discarded at line breaks. To avoid that instead use \caption{Comparison of two graphs} \label{fig:twographs} \end{figure} -Note the ‘\hspace*’’s where the space could otherwise be dropped. +Note the ‘\hspace*’'s where the space could otherwise be dropped. File: latex2e.info, Node: \hss, Next: \spacefactor, Prev: \hfill, Up: Spaces @@ -12227,7 +12729,7 @@ 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, + 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. @@ -12247,13 +12749,13 @@ Synopsis: \spacefactor=INTEGER - Influence LaTeX’s glue stretch and shrink behavior. Most user-level -documents do not use this command. + Influence LaTeX's stretching and shrinking of glue. Few user-level +documents need to use this. 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 +“interword glue”; *note \hspace::). The ‘\spacefactor’ parameter (a TeX +primitive) 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 @@ -12263,24 +12765,25 @@ 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 +exclamation mark, or question mark, 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 + 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 -3.3333 points). Otherwise, if the space factor F is greater than 2000 -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 +3.3333pt). Otherwise, if the space factor F is greater than 2000 then +TeX adds the font's extra space value (for Computer Modern Roman 10 +point this is 1.11111pt), 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). +1.11111pt). 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 +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. +after ‘friend’ or any of the other words, since they are not followed by +punctuation. The rules for space factors are even more complex because they play additional roles. In practice, there are two consequences. First, if a @@ -12288,19 +12791,19 @@ 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 \@::). +after a capital letter then the normal effect of the period is does not +happen, 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::.) + Finally, not especially related to ‘\spacefactor’ itself: 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: @@ -12318,22 +12821,19 @@ Synopsis: CAPITAL-LETTER\@. - 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::). + Treat a period (or other punctuation) 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. This example shows the two cases to remember. The songs \textit{Red Guitar}, etc.\ are by Loudon Wainwright~III\@. -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. +The first period ends the abbreviation ‘etc.’ but not the sentence. The +backslash-space, ‘\ ’, produces a mid-sentence space. The second period +ends the sentence, despite it being preceded by a capital letter. We +tell LaTeX that it ends the sentence by putting ‘\@’ before it. 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 @@ -12346,16 +12846,22 @@ characters. For example, this 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::). + The ‘\@’ command is only for text modes. If you use it outside of a +text mode then you get the error ‘You can't use `\spacefactor' in +vertical mode’ (*note Modes::). + + All the above applies equally to question marks and exclamation +points as periods, since all are sentence-ending punctuation, and LaTeX +increases the space after each in the same way, when they end a +sentence. LaTeX also increases spacing after colon, semicolon, and +comma characters (*note \spacefactor::). - 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 + In addition: the converse case is a period (or other punctuation) +that does not end a 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). +in the last one that the ‘\@’ comes after the period but before the +closing parenthesis). File: latex2e.info, Node: \frenchspacing & \nonfrenchspacing, Next: \normalsfcodes, Prev: \@, Up: \spacefactor @@ -12368,18 +12874,21 @@ Synopsis, one of: \frenchspacing \nonfrenchspacing - The first declaration causes LaTeX to handle spacing between -sentences in the same way as spacing between words in the middle of a -sentence. The second switches back to the default handling in which -spacing between sentences stretches or shrinks more (*note -\spacefactor::). + ‘\frenchspacing’ causes LaTeX to make spacing after all punctuation, +including periods, be the same as the space between words in the middle +of a sentence. ‘\nonfrenchspacing’ switches back to the default +handling in which spacing after most punctuation stretches or shrinks +differently than a word space (*note \spacefactor::). - 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. + In American English, the typesetting tradition is to adjust, +typically increasing, the space after punctuation more than the space +between words that are in the middle of a sentence. Declaring +‘\frenchspacing’ (the command is inherited from plain TeX) switches to +the tradition that all spaces are treated equally. + + If your LaTeX document specifies the language being used, for example +with the ‘babel’ package, the necessary settings should be taken care of +for you. File: latex2e.info, Node: \normalsfcodes, Prev: \frenchspacing & \nonfrenchspacing, Up: \spacefactor @@ -12401,16 +12910,15 @@ File: latex2e.info, Node: \(SPACE), Next: ~, Prev: \spacefactor, Up: Spaces ========================== This section refers to the command consisting of two characters, a -backslash followed by a space. -Synopsis: +backslash followed by a space. Synopsis: - \ + \ Produce a space. By default it produces white space of length 3.33333pt plus 1.66666pt minus 1.11111pt. - When you type one or more blanks between words, LaTeX produces white -space. But that is different than an explicit space. This illustrates. + When you type one or more blanks between words, LaTeX produces +whitespace that is different than an explicit space. This illustrates: \begin{tabular}{rl} One blank:& makes some space \\ @@ -12441,9 +12949,9 @@ of ending a sentence, as in ‘Prof.\ Smith’ or ‘Jones et al.\ (1993)’ Under normal circumstances, ‘\’<TAB> and ‘\’<NEWLINE> are equivalent to backslash-space, ‘\ ’. - Please also note that in order to allow source code indentation, -under normal circumstances, TeX ignores leading blanks in a line. So -the following prints ‘one word’: + In order to allow source code indentation, under normal +circumstances, TeX ignores leading blanks in a line. So the following +prints ‘one word’: one word @@ -12454,8 +12962,8 @@ newline after ‘one’, not by the space before ‘word’. File: latex2e.info, Node: ~, Next: \thinspace & \negthinspace, Prev: \(SPACE), Up: Spaces -19.7 ‘~’ -======== +19.7 ‘~’, ‘\nobreakspace’ +========================= Synopsis: @@ -12463,11 +12971,13 @@ Synopsis: 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::). +length 3.33333pt plus 1.66666pt minus 1.11111pt (*note Lengths::). The +command ‘\nobreakspace’ and the Unicode input character U+00A0 (also in +many 8-bit encodings) are synonyms. Note that the word ‘tie’ has this meaning in the TeX/Texinfo -community; this differs from the typographic term “tie”, which is a -diacritic in the shape of an arc, called a “tie-after” accent in ‘The +community; this differs from the typographic term "tie", which is a +diacritic in the shape of an arc, called a "tie-after" accent in ‘The TeXbook’. Here LaTeX will not break the line between the final two words: @@ -12477,14 +12987,14 @@ TeXbook’. In addition, despite the period, LaTeX does not use the end-of-sentence spacing (*note \@::). - Ties prevent the end of line separation of things where that could -cause confusion. They also still allow hyphenation (of either of the -tied words), so they are generally preferable to putting consecutive -words in an ‘\mbox’ (*note \mbox & \makebox::). + Ties prevent a line break where that could cause confusion. They +also still allow hyphenation (of either of the tied words), so they are +generally preferable to putting consecutive words in an ‘\mbox’ (*note +\mbox & \makebox::). - They are also matters of taste, sometimes alarmingly dogmatic taste, -among readers. Nevertheless, here are some usage models, many of them -from ‘The TeXbook’. + Exactly where ties should be used is something of a matter of taste, +sometimes alarmingly dogmatic taste, among readers. Nevertheless, here +are some usage models, many of them from ‘The TeXbook’. • Between an enumerator label and number, such as in references: ‘Chapter~12’, or ‘Theorem~\ref{th:Wilsons}’, or @@ -12514,8 +13024,8 @@ from ‘The TeXbook’. • Between symbols in series: ‘$1$,~$2$, or~$3$’ or ‘$1$,~$2$, \ldots,~$n$’. - • Between a person’s given names and between multiple surnames: - ‘Donald~E. Knuth’, or ‘Luis~I. Trabb~Pardo’, or ‘Charles~XII’—but + • Between a person's given names 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 might do ‘Charles Louis Xavier~Joseph de~la Vall\'ee~Poussin’. @@ -12574,7 +13084,7 @@ hit the AFTER-CHARACTER roman H because the italic letter f leans far to the right. - If AFTER-CHARACTER is a period or comma then don’t insert an italic + If AFTER-CHARACTER is a period or comma then don't insert an italic correction since those punctuation symbols are so low to the baseline already. However, with semicolons or colons, as well as with normal letters, the italic correction can help. It is typically used between a @@ -12624,10 +13134,10 @@ 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 + 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 + To change the rule's thickness, copy the definition and adjust it, as here \renewcommand{\hrulefill}{% @@ -12667,7 +13177,7 @@ Synopsis, one of: These commands are fragile (*note \protect::). Here the skip suggests the passage of time (from The Golden Ocean by -O’Brian). +O'Brian). Mr Saumarez would have something rude to say to him, no doubt: he was at home again, and it was delightful. @@ -12756,7 +13266,7 @@ having zero height. 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 +list fixes that with a ‘\strut’ at the end of its first item's second line. \setlength{\fboxsep}{0pt} @@ -12789,7 +13299,7 @@ line. \end{enumerate} \end{minipage}% -The final two lists use ‘\fbox’ to show what’s happening. The first +The final two lists use ‘\fbox’ to show what's happening. The first item ‘\parbox’ of the third list 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 @@ -12798,7 +13308,7 @@ 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 +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. @@ -12816,7 +13326,7 @@ keeps the second integral from hitting the first. \end{tabular} (Although the line-ending double backslash command has an available -optional argument to change the corresponding baseline skip, that won’t +optional argument to change the corresponding baseline skip, that won't solve this issue. Changing the first double backslash to something like ‘\\[2.5ex]’ will put more room between the header line and the ‘\hline’ rule, and the integral would still hit the rule.) @@ -12833,7 +13343,7 @@ Synopsis, one of: \vspace*{LENGTH} 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’ +or zero. It is a rubber length--it may contain a ‘plus’ or ‘minus’ component (*note Lengths::). This puts space between the two paragraphs. @@ -12918,9 +13428,9 @@ Synopsis: \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 +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 +VERT-LENGTH's in that sequence. This command is fragile (*note \protect::). The VERT-LENGTH is a rubber length (*note Lengths::). This example illustrates. The ‘picture’ draws a scale over which to @@ -12944,14 +13454,14 @@ apart: the sum of the ‘\baselineskip’ and the 10pt from the first 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. +‘\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. 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. +‘theorem’'s are separated by one vertical space, not two. 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 @@ -12959,7 +13469,7 @@ 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: Boxes, Next: Color, Prev: Spaces, Up: Top +File: latex2e.info, Node: Boxes, Next: Graphics, Prev: Spaces, Up: Top 20 Boxes ******** @@ -13005,12 +13515,12 @@ name, ‘T-34’. The first two command invocations shown, ‘\mbox’ and ‘\makebox’, are roughly the same. They create a box just wide enough to contain the -TEXT. (They are like plain TeX’s ‘\hbox’.) +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 +full-line box: \makebox[\linewidth]{Chapter Exam} @@ -13019,7 +13529,7 @@ 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 +‘\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. @@ -13139,7 +13649,7 @@ frame the result. *Note Colored boxes::, for colors other than black and white. The ‘picture’ environment has a version of the ‘\framebox’ command -where the units depend on ‘picture’’s ‘\unitlength’ (*note \framebox +where the units depend on ‘picture’'s ‘\unitlength’ (*note \framebox (picture)::). @@ -13167,7 +13677,7 @@ fragile (*note \protect::). \end{picture} 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 +will break lines to make a paragraph. But it won't make multiple paragraphs; for that, use a ‘minipage’ environment (*note minipage::). The options for ‘\parbox’ (except for CONTENTS) are the same as those @@ -13228,7 +13738,7 @@ 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). +is the box's height plus its depth). This will align two graphics on their top (*note Graphics::). @@ -13287,7 +13797,7 @@ WIDTH, and the position of the text inside that box as POSITION. *Note 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 +LaTeX doesn't give you an error but it ignores what you want: if you enter ‘\sbox{\newreg}{test \\ test}’ and ‘\usebox{\newreg}’ then you get ‘testtest’, while if you enter ‘\sbox{\newreg}{test \par test}’ and ‘\usebox{\newreg}’ then you get ‘test test’, but no error or warning. @@ -13304,7 +13814,7 @@ To fix this use a ‘\parbox’ or ‘minipage’ as here. ... \usebox{\areg} - As an example of the efficiency of reusing a register’s contents, + As an example of the efficiency of reusing a register's contents, this puts the same picture on each page of the document by putting it in the header. LaTeX only typesets it once. @@ -13377,302 +13887,9 @@ variable name BOX-CMD starts with a backslash, ‘\’.) This command is robust (*note \protect::). -File: latex2e.info, Node: Color, Next: Graphics, Prev: Boxes, Up: Top - -21 Color -******** - -You can add color to text, rules, etc. You can also have color in a box -or on an entire page and write text on top of it. - - Color support comes as an additional package. So put -‘\usepackage{color}’ in your document preamble to use the commands -described here. - - Many other packages also supplement LaTeX’s color abilities. -Particularly worth mentioning is ‘xcolor’, which is widely used and -significantly extends the capabilities described here, including adding -‘HTML’ and ‘Hsb’ color models. - -* Menu: - -* Color package options:: Options when you load the standard package. -* Color models:: How colors are represented. -* Commands for color:: The available commands. - - -File: latex2e.info, Node: Color package options, Next: Color models, Up: Color - -21.1 ‘color’ package options -============================ - -Synopsis (must be in the document preamble): - - \usepackage[COMMA-SEPARATED OPTION LIST]{color} - - When you load the ‘color’ package there are two kinds of available -options. - - The first specifies the “printer driver”. LaTeX doesn’t contain -information about different output systems but instead depends on -information stored in a file. Normally you should not specify the -driver option in the document, and instead rely on your system’s -default. One advantage of this is that it makes the document portable -across systems. For completeness we include a list of the drivers. The -currently relevant ones are: ‘dvipdfmx’, ‘dvips’, ‘dvisvgm’, ‘luatex’, -‘pdftex’, ‘xetex’. The two ‘xdvi’ and ‘oztex’ are essentially aliases -for ‘dvips’ (and ‘xdvi’ is monochrome). Ones that should not be used -for new systems are: ‘dvipdf’, ‘dvipdfm’, ‘dviwin’, ‘dvipsone’, ‘emtex’, -‘pctexps’, ‘pctexwin’, ‘pctexhp’, ‘pctex32’, ‘truetex’, ‘tcidvi’, ‘vtex’ -(and ‘dviwindo’ is an alias for ‘dvipsone’). - - The second kind of options, beyond the drivers, are below. - -‘monochrome’ - Disable the color commands, so that they do not generate errors but - do not generate color either. - -‘dvipsnames’ - Make available a list of 68 color names that are often used, - particularly in legacy documents. These color names were - originally provided by the ‘dvips’ driver, giving the option name. - -‘nodvipsnames’ - Do not load that list of color names, saving LaTeX a tiny amount of - memory space. - - -File: latex2e.info, Node: Color models, Next: Commands for color, Prev: Color package options, Up: Color - -21.2 Color models -================= - -A “color model” is a way of representing colors. LaTeX’s capabilities -depend on the printer driver. However, the ‘pdftex’, ‘xetex’, and -‘luatex’ printer drivers are today by far the most commonly used. The -models below work for those drivers. All but one of these is also -supported by essentially all other printer drivers used today. - - Note that color combination can be additive or subtractive. Additive -mixes colors of light, so that for instance combining full intensities -of red, green, and blue produces white. Subtractive mixes pigments, -such as with inks, so that combining full intensity of cyan, magenta, -and yellow makes black. - -‘cmyk’ - A comma-separated list with four real numbers between 0 and 1, - inclusive. The first number is the intensity of cyan, the second - is magenta, and the others are yellow and black. A number value of - 0 means minimal intensity, while a 1 is for full intensity. This - model is often used in color printing. It is a subtractive model. - -‘gray’ - A single real number between 0 and 1, inclusive. The colors are - shades of grey. The number 0 produces black while 1 gives white. - -‘rgb’ - A comma-separated list with three real numbers between 0 and 1, - inclusive. The first number is the intensity of the red component, - the second is green, and the third the blue. A number value of 0 - means that none of that component is added in, while a 1 means full - intensity. This is an additive model. - -‘RGB’ - (‘pdftex’, ‘xetex’, ‘luatex’ drivers) A comma-separated list with - three integers between 0 and 255, inclusive. This model is a - convenience for using ‘rgb’ since outside of LaTeX colors are often - described in a red-green-blue model using numbers in this range. - The values entered here are converted to the ‘rgb’ model by - dividing by 255. - -‘named’ - Colors are accessed by name, such as ‘PrussianBlue’. The list of - names depends on the driver, but all support the names ‘black’, - ‘blue’, ‘cyan’, ‘green’, ‘magenta’, ‘red’, ‘white’, and ‘yellow’ - (See the ‘dvipsnames’ option in *note Color package options::). - - -File: latex2e.info, Node: Commands for color, Prev: Color models, Up: Color - -21.3 Commands for color -======================= - -These are the commands available with the ‘color’ package. - -* Menu: - -* Define colors:: Give a color a name. -* Colored text:: Text or rules in color. -* Colored boxes:: A box of color, to write over. -* Colored pages:: A whole page colored. - - -File: latex2e.info, Node: Define colors, Next: Colored text, Up: Commands for color - -21.3.1 Define colors --------------------- - -Synopsis: - - \definecolor{NAME}{MODEL}{SPECIFICATION} - - 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. - - \definecolor{logocolor}{RGB}{145,92,131} % RGB needs pdflatex - \newcommand{\logo}{\textcolor{logocolor}{Bob's Big Bagels}} - - Often a document’s colors are defined in the preamble, or in the -class or style, rather than in the document body. - - -File: latex2e.info, Node: Colored text, Next: Colored boxes, Prev: Define colors, Up: Commands for color - -21.3.2 Colored text -------------------- - -Synopses: - - \textcolor{NAME}{...} - \textcolor[COLOR MODEL]{COLOR SPECIFICATION}{...} - -or - - \color{NAME} - \color[COLOR MODEL]{COLOR 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! - -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} - I'm thinking about getting a \textcolor{MidlifeCrisisRed}{sports car}. - - The two ‘\textcolor’ and ‘\color’ differ in that the first is a -command form, enclosing the text to be colored as an argument. Often -this form is more convenient, or at least more explicit. The second -form is a declaration, as in ‘The moon is made of {\color{green} green} -cheese’, so it is in effect until the end of the current group or -environment. This is sometimes useful when writing macros or as below -where it colors everything inside the ‘center’ environment, including -the vertical and horizontal lines. - - \begin{center} \color{blue} - \begin{tabular}{l|r} - UL &UR \\ \hline - LL &LR - \end{tabular} - \end{center} - - 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) - \end{equation} - - Typically the colors used in a document are declared in a class or -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. - - The format of COLOR SPECIFICATION depends on the color model (*note -Color models::). For instance, while ‘rgb’ takes three numbers, ‘gray’ -takes only one. - - The selection was \textcolor[gray]{0.5}{grayed out}. - - Colors inside colors do not combine. Thus - - \textcolor{green}{kind of \textcolor{blue}{blue}} - -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 - -21.3.3 Colored boxes --------------------- - -Synopses: +File: latex2e.info, Node: Graphics, Next: Color, Prev: Boxes, Up: Top - \colorbox{NAME}{...} - \colorbox[MODEL NAME]{BOX BACKGROUND COLOR}{...} - -or - - \fcolorbox{FRAME COLOR}{BOX BACKGROUND COLOR}{...} - \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 -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. - - \colorbox{blue}{\textcolor{white}{Welcome to the machine.}} - - The ‘\fcolorbox’ commands use the same parameters as ‘\fbox’ (*note -\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. - - This example changes the thickness of the border to 0.8 points. Note -that it is surrounded by curly braces so that the change ends at the end -of the second line. - - {\setlength{\fboxrule}{0.8pt} - \fcolorbox{black}{red}{Under no circumstances turn this knob.}} - - -File: latex2e.info, Node: Colored pages, Prev: Colored boxes, Up: Commands for color - -21.3.4 Colored pages --------------------- - -Synopses: - - \pagecolor{NAME} - \pagecolor[COLOR MODEL]{COLOR SPECIFICATION} - \nopagecolor - - The first two set the background of the page, and all subsequent -pages, to the color. For an explanation of the specification in the -second form *note Colored text::. The third returns the background to -normal, which is a transparent background. (If that is not supported -use ‘\pagecolor{white}’, although that will make a white background -rather than the default transparent background.) - - ... - \pagecolor{cyan} - ... - \nopagecolor - - -File: latex2e.info, Node: Graphics, Next: Special insertions, Prev: Color, Up: Top - -22 Graphics +21 Graphics *********** You can use graphics such as PNG or PDF files in your LaTeX document. @@ -13718,7 +13935,7 @@ see their documentation on CTAN. File: latex2e.info, Node: Graphics package options, Next: Graphics package configuration, Up: Graphics -22.1 ‘graphics’ package options +21.1 ‘graphics’ package options =============================== Synopsis (must be in the document preamble): @@ -13738,7 +13955,7 @@ kinds of available options. The first is that LaTeX does not contain information about different output systems but instead depends on information stored in a “printer driver” file. Normally you should not specify the driver option in the -document, and instead rely on your system’s default. One advantage of +document, and instead rely on your system's default. One advantage of this is that it makes the document portable across systems. For completeness here is a list of the drivers. The currently @@ -13785,7 +14002,7 @@ 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 +21.2 ‘graphics’ package configuration ===================================== These commands configure the way LaTeX searches the file system for the @@ -13795,7 +14012,7 @@ graphic. 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. +distribution's documentation. * Menu: @@ -13806,7 +14023,7 @@ distribution’s documentation. File: latex2e.info, Node: \graphicspath, Next: \DeclareGraphicsExtensions, Up: Graphics package configuration -22.2.1 ‘\graphicspath’ +21.2.1 ‘\graphicspath’ ---------------------- Synopsis: @@ -13826,9 +14043,9 @@ declaration below tells the system to then look in the subdirectory ... \graphicspath{ {pix/} {../pix/} } - The ‘\graphicspath’ declaration is optional. If you don’t include it -then LaTeX’s default is to search all of the places that it usually -looks for a file (it uses LaTeX’s ‘\input@path’). In particular, in + The ‘\graphicspath’ declaration is optional. If you don't include it +then LaTeX's default is to search all of the places that it usually +looks for a file (it uses LaTeX's ‘\input@path’). In particular, in this case one of the places it looks is the current directory. Enclose each directory name in curly braces; for example, above it @@ -13872,7 +14089,7 @@ it contains ‘\include{chapters/chap1}’. If in ‘chap1.tex’ you put File: latex2e.info, Node: \DeclareGraphicsExtensions, Next: \DeclareGraphicsRule, Prev: \graphicspath, Up: Graphics package configuration -22.2.2 ‘\DeclareGraphicsExtensions’ +21.2.2 ‘\DeclareGraphicsExtensions’ ----------------------------------- Synopses: @@ -13917,7 +14134,7 @@ more than once. Show its value with File: latex2e.info, Node: \DeclareGraphicsRule, Prev: \DeclareGraphicsExtensions, Up: Graphics package configuration -22.2.3 ‘\DeclareGraphicsRule’ +21.2.3 ‘\DeclareGraphicsRule’ ----------------------------- Synopsis: @@ -13993,7 +14210,7 @@ COMMAND File: latex2e.info, Node: Commands for graphics, Prev: Graphics package configuration, Up: Graphics -22.3 Commands for graphics +21.3 Commands for graphics ========================== These are the commands available with the ‘graphics’ and ‘graphicx’ @@ -14009,7 +14226,7 @@ packages. File: latex2e.info, Node: \includegraphics, Next: \rotatebox, Up: Commands for graphics -22.3.1 ‘\includegraphics’ +21.3.1 ‘\includegraphics’ ------------------------- Synopses for ‘graphics’ package: @@ -14106,7 +14323,7 @@ gives the coordinates of the top right corner of the image, as a pair of TeX dimensions (*note Units of length::). If the units are omitted they default to ‘bp’. In this case, the lower left corner of the image is assumed to be at (0,0). If two optional arguments are present then the -leading one is ‘[LLX,LLY]’, specifying the coordinates of the image’s +leading one is ‘[LLX,LLY]’, specifying the coordinates of the image's lower left. Thus, ‘\includegraphics[1in,0.618in]{...}’ calls for the graphic to be placed so it is 1 inch wide and 0.618 inches tall and so its origin is at (0,0). @@ -14129,7 +14346,7 @@ two will end with different widths and heights. Note that a graphic is placed by LaTeX into a box, which is traditionally referred to as its “bounding box” (distinct from the -PostScript BoundingBox described below). The graphic’s printed area may +PostScript BoundingBox described below). The graphic's printed area may go beyond this box, or sit inside this box, but when LaTeX makes up a page it puts together boxes and this is the box allocated for the graphic. @@ -14187,7 +14404,7 @@ graphic. left, ‘r’ for right, ‘b’ for bottom, ‘c’ for center, ‘t’ for top, and ‘B’ for baseline. Thus, entering the command ‘\includegraphics[angle=180,origin=c]{moon}’ will turn the picture - upside down about that picture’s center, while the command + 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 @@ -14236,7 +14453,7 @@ graphic. to which the contents of the page are to be clipped when displayed. The BleedBox is the region to which the contents of the page should be clipped in production. The TrimBox is the intended dimensions - of the finished page. The ArtBox is the extent of the page’s + of the finished page. The ArtBox is the extent of the page's meaningful content. The driver will set the image size based on CropBox if present, otherwise it will not use one of the others, with a driver-defined order of preference. MediaBox is always @@ -14266,7 +14483,7 @@ graphic. graphic files, which have a size specified with a line ‘%%BoundingBox’ that appears in the file. It has four values, giving the lower x coordinate, lower y coordinate, upper x coordinate, and upper y -coordinate. The units are PostScript points, equivalent to TeX’s big +coordinate. The units are PostScript points, equivalent to TeX's big points, 1/72 inch. For example, if an ‘.eps’ file has the line ‘%%BoundingBox 10 20 40 80’ then its natural size is 30/72 inch wide by 60/72 inch tall. @@ -14298,13 +14515,13 @@ points, 1/72 inch. For example, if an ‘.eps’ file has the line 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 + 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 + These following options allow a user to override LaTeX's method of choosing the graphic type based on the filename extension. An example -is that ‘\includegraphics[type=png,ext=.xxx,read=.xxx]{lion}’ will read -the file ‘lion.xxx’ as though it were ‘lion.png’. For more on these, +is that ‘\includegraphics[type=png,ext=.xyz,read=.xyz]{lion}’ will read +the file ‘lion.xyz’ as though it were ‘lion.png’. For more on these, *note \DeclareGraphicsRule::. ‘type’ @@ -14327,7 +14544,7 @@ the file ‘lion.xxx’ as though it were ‘lion.png’. For more on these, File: latex2e.info, Node: \rotatebox, Next: \scalebox, Prev: \includegraphics, Up: Commands for graphics -22.3.2 ‘\rotatebox’ +21.3.2 ‘\rotatebox’ ------------------- Synopsis if you use the ‘graphics’ package: @@ -14370,7 +14587,7 @@ you can get the same effect without needing this package, except for the ‘x’ and ‘y’ options (*note \includegraphics::). ‘origin’ - The point of the MATERIAL’s box about which the rotation happens. + The point of the MATERIAL's box about which the rotation happens. 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, the first line here @@ -14387,7 +14604,7 @@ you can get the same effect without needing this package, except for the ‘x, y’ Specify an arbitrary point of rotation with ‘\rotatebox[x=TeX DIMENSION,y=TeX DIMENSION]{...}’ (*note Units of length::). These - give the offset from the box’s reference point. + give the offset from the box's reference point. ‘units’ This key allows you to change the default of degrees @@ -14398,7 +14615,7 @@ you can get the same effect without needing this package, except for the File: latex2e.info, Node: \scalebox, Next: \resizebox, Prev: \rotatebox, Up: Commands for graphics -22.3.3 ‘\scalebox’ +21.3.3 ‘\scalebox’ ------------------ Synopses: @@ -14433,7 +14650,7 @@ axis. File: latex2e.info, Node: \resizebox, Prev: \scalebox, Up: Commands for graphics -22.3.4 ‘\resizebox’ +21.3.4 ‘\resizebox’ ------------------- Synopses: @@ -14451,7 +14668,7 @@ vertically by the same factor to keep it from being distorted. \resizebox{0.5in}{!}{\includegraphics{lion}} - The unstarred form ‘\resizebox’ takes VERTICAL LENGTH to be the box’s + The unstarred form ‘\resizebox’ takes VERTICAL LENGTH to be the box's height while the starred form ‘\resizebox*’ takes it to be height+depth. For instance, make the text have a height+depth of a quarter-inch with ‘\resizebox*{!}{0.25in}{\parbox{3.5in}{This box has both height and @@ -14463,7 +14680,300 @@ wide but keep the original height with ‘\resizebox{2in}{\height}{Two inches}’. -File: latex2e.info, Node: Special insertions, Next: Splitting the input, Prev: Graphics, Up: Top +File: latex2e.info, Node: Color, Next: Special insertions, Prev: Graphics, Up: Top + +22 Color +******** + +You can add color to text, rules, etc. You can also have color in a box +or on an entire page and write text on top of it. + + Color support comes as an additional package. So put +‘\usepackage{color}’ in your document preamble to use the commands +described here. + + Many other packages also supplement LaTeX's color abilities. +Particularly worth mentioning is ‘xcolor’, which is widely used and +significantly extends the capabilities described here, including adding +‘HTML’ and ‘Hsb’ color models. + +* Menu: + +* Color package options:: Options when you load the standard package. +* Color models:: How colors are represented. +* Commands for color:: The available commands. + + +File: latex2e.info, Node: Color package options, Next: Color models, Up: Color + +22.1 ‘color’ package options +============================ + +Synopsis (must be in the document preamble): + + \usepackage[COMMA-SEPARATED OPTION LIST]{color} + + When you load the ‘color’ package there are two kinds of available +options. + + The first specifies the “printer driver”. LaTeX doesn't contain +information about different output systems but instead depends on +information stored in a file. Normally you should not specify the +driver option in the document, and instead rely on your system's +default. One advantage of this is that it makes the document portable +across systems. For completeness we include a list of the drivers. The +currently relevant ones are: ‘dvipdfmx’, ‘dvips’, ‘dvisvgm’, ‘luatex’, +‘pdftex’, ‘xetex’. The two ‘xdvi’ and ‘oztex’ are essentially aliases +for ‘dvips’ (and ‘xdvi’ is monochrome). Ones that should not be used +for new systems are: ‘dvipdf’, ‘dvipdfm’, ‘dviwin’, ‘dvipsone’, ‘emtex’, +‘pctexps’, ‘pctexwin’, ‘pctexhp’, ‘pctex32’, ‘truetex’, ‘tcidvi’, ‘vtex’ +(and ‘dviwindo’ is an alias for ‘dvipsone’). + + The second kind of options, beyond the drivers, are below. + +‘monochrome’ + Disable the color commands, so that they do not generate errors but + do not generate color either. + +‘dvipsnames’ + Make available a list of 68 color names that are often used, + particularly in legacy documents. These color names were + originally provided by the ‘dvips’ driver, giving the option name. + +‘nodvipsnames’ + Do not load that list of color names, saving LaTeX a tiny amount of + memory space. + + +File: latex2e.info, Node: Color models, Next: Commands for color, Prev: Color package options, Up: Color + +22.2 Color models +================= + +A “color model” is a way of representing colors. LaTeX's capabilities +depend on the printer driver. However, the ‘pdftex’, ‘xetex’, and +‘luatex’ printer drivers are today by far the most commonly used. The +models below work for those drivers. All but one of these is also +supported by essentially all other printer drivers used today. + + Note that color combination can be additive or subtractive. Additive +mixes colors of light, so that for instance combining full intensities +of red, green, and blue produces white. Subtractive mixes pigments, +such as with inks, so that combining full intensity of cyan, magenta, +and yellow makes black. + +‘cmyk’ + A comma-separated list with four real numbers between 0 and 1, + inclusive. The first number is the intensity of cyan, the second + is magenta, and the others are yellow and black. A number value of + 0 means minimal intensity, while a 1 is for full intensity. This + model is often used in color printing. It is a subtractive model. + +‘gray’ + A single real number between 0 and 1, inclusive. The colors are + shades of grey. The number 0 produces black while 1 gives white. + +‘rgb’ + A comma-separated list with three real numbers between 0 and 1, + inclusive. The first number is the intensity of the red component, + the second is green, and the third the blue. A number value of 0 + means that none of that component is added in, while a 1 means full + intensity. This is an additive model. + +‘RGB’ + (‘pdftex’, ‘xetex’, ‘luatex’ drivers) A comma-separated list with + three integers between 0 and 255, inclusive. This model is a + convenience for using ‘rgb’ since outside of LaTeX colors are often + described in a red-green-blue model using numbers in this range. + The values entered here are converted to the ‘rgb’ model by + dividing by 255. + +‘named’ + Colors are accessed by name, such as ‘PrussianBlue’. The list of + names depends on the driver, but all support the names ‘black’, + ‘blue’, ‘cyan’, ‘green’, ‘magenta’, ‘red’, ‘white’, and ‘yellow’ + (See the ‘dvipsnames’ option in *note Color package options::). + + +File: latex2e.info, Node: Commands for color, Prev: Color models, Up: Color + +22.3 Commands for color +======================= + +These are the commands available with the ‘color’ package. + +* Menu: + +* Define colors:: Give a color a name. +* Colored text:: Text or rules in color. +* Colored boxes:: A box of color, to write over. +* Colored pages:: A whole page colored. + + +File: latex2e.info, Node: Define colors, Next: Colored text, Up: Commands for color + +22.3.1 Define colors +-------------------- + +Synopsis: + + \definecolor{NAME}{MODEL}{SPECIFICATION} + + 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. + + \definecolor{logocolor}{RGB}{145,92,131} % RGB needs pdflatex + \newcommand{\logo}{\textcolor{logocolor}{Bob's Big Bagels}} + + Often a document's colors are defined in the preamble, or in the +class or style, rather than in the document body. + + +File: latex2e.info, Node: Colored text, Next: Colored boxes, Prev: Define colors, Up: Commands for color + +22.3.2 Colored text +------------------- + +Synopses: + + \textcolor{NAME}{...} + \textcolor[COLOR MODEL]{COLOR SPECIFICATION}{...} + +or + + \color{NAME} + \color[COLOR MODEL]{COLOR 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! + +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} + I'm thinking about getting a \textcolor{MidlifeCrisisRed}{sports car}. + + The two ‘\textcolor’ and ‘\color’ differ in that the first is a +command form, enclosing the text to be colored as an argument. Often +this form is more convenient, or at least more explicit. The second +form is a declaration, as in ‘The moon is made of {\color{green} green} +cheese’, so it is in effect until the end of the current group or +environment. This is sometimes useful when writing macros or as below +where it colors everything inside the ‘center’ environment, including +the vertical and horizontal lines. + + \begin{center} \color{blue} + \begin{tabular}{l|r} + UL &UR \\ \hline + LL &LR + \end{tabular} + \end{center} + + 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) + \end{equation} + + Typically the colors used in a document are declared in a class or +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. + + The format of COLOR SPECIFICATION depends on the color model (*note +Color models::). For instance, while ‘rgb’ takes three numbers, ‘gray’ +takes only one. + + The selection was \textcolor[gray]{0.5}{grayed out}. + + Colors inside colors do not combine. Thus + + \textcolor{green}{kind of \textcolor{blue}{blue}} + +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 + +22.3.3 Colored boxes +-------------------- + +Synopses: + + \colorbox{NAME}{...} + \colorbox[MODEL NAME]{BOX BACKGROUND COLOR}{...} + +or + + \fcolorbox{FRAME COLOR}{BOX BACKGROUND COLOR}{...} + \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 +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. + + \colorbox{blue}{\textcolor{white}{Welcome to the machine.}} + + The ‘\fcolorbox’ commands use the same parameters as ‘\fbox’ (*note +\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. + + This example changes the thickness of the border to 0.8 points. Note +that it is surrounded by curly braces so that the change ends at the end +of the second line. + + {\setlength{\fboxrule}{0.8pt} + \fcolorbox{black}{red}{Under no circumstances turn this knob.}} + + +File: latex2e.info, Node: Colored pages, Prev: Colored boxes, Up: Commands for color + +22.3.4 Colored pages +-------------------- + +Synopses: + + \pagecolor{NAME} + \pagecolor[COLOR MODEL]{COLOR SPECIFICATION} + \nopagecolor + + The first two set the background of the page, and all subsequent +pages, to the color. For an explanation of the specification in the +second form *note Colored text::. The third returns the background to +normal, which is a transparent background. (If that is not supported +use ‘\pagecolor{white}’, although that will make a white background +rather than the default transparent background.) + + ... + \pagecolor{cyan} + ... + \nopagecolor + + +File: latex2e.info, Node: Special insertions, Next: Splitting the input, Prev: Color, Up: Top 23 Special insertions ********************* @@ -14473,7 +14983,7 @@ meaning do not correspond to simple characters you can type. * Menu: -* Reserved characters:: Inserting ‘# $ % & { } _ ~ ^ \’ +* Printing special characters:: Inserting ‘# $ % & { } _ ~ ^ \’ * Upper and lower case:: Make text upper or lower case. * Symbols by font position:: Inserting font symbols by number. * Text symbols:: Inserting other non-letter symbols in text. @@ -14481,25 +14991,26 @@ meaning do not correspond to simple characters you can type. * Additional Latin letters:: Inserting other non-English characters. * inputenc package:: Set the input file text encoding. * \rule:: Inserting lines and rectangles. -* \today:: Inserting today’s date. +* \today:: Inserting today's date. -File: latex2e.info, Node: Reserved characters, Next: Upper and lower case, Up: Special insertions +File: latex2e.info, Node: Printing special characters, Next: Upper and lower case, Up: Special insertions -23.1 Reserved characters -======================== +23.1 Printing special characters +================================ -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”. They are all discussed -elsewhere in this manual. +LaTeX sets aside a few characters for special purposes; they are called +reserved characters or special characters. Here they are: # $ % & { } _ ~ ^ \ + The meaning of all the special characters is given elsewhere in this +manual (*note Reserved 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, typing ‘\$1.23’ -will produce ‘$1.23’ in your output. +put a ‘\’ 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 @@ -14507,17 +15018,17 @@ receiving a tilde accent). Similarly, to get a text body font 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 (the double backslash ‘\\’ in the example is only there to -split the lines in the output). + To produce the reserved characters in a typewriter font, use +‘\verb!!’ as below (the ‘\newline’ in the example is there only to split +the lines in the output). \begin{center} - \# \$ \% \& \{ \} \_ \~{} \^{} \textbackslash \\ + \# \$ \% \& \{ \} \_ \~{} \^{} \textbackslash \newline \verb!# $ % & { } _ ~ ^ \! \end{center} -File: latex2e.info, Node: Upper and lower case, Next: Symbols by font position, Prev: Reserved characters, Up: Special insertions +File: latex2e.info, Node: Upper and lower case, Next: Symbols by font position, Prev: Printing special characters, Up: Special insertions 23.2 Upper and lower case ========================= @@ -14531,7 +15042,7 @@ Synopsis: Change the case of characters. The TeX primitive commands ‘\uppercase’ and ‘\lowercase’ are set up by default to work only with -the 26 letters a–z and A–Z. The LaTeX commands ‘\MakeUppercase’ and +the 26 letters a-z and A-Z. The LaTeX commands ‘\MakeUppercase’ and ‘\MakeLowercase’ commands also change characters accessed by commands such as ‘\ae’ or ‘\aa’. The commands ‘\MakeUppercase’ and ‘\MakeLowercase’ are robust but they have moving arguments (*note @@ -14567,8 +15078,8 @@ standard LaTeX commands ‘\MakeUppercase’ and ‘\MakeLowerCase’. Handling all the casing rules specified by Unicode, e.g., for non-Latin scripts, is a much bigger job than anything envisioned in the original TeX and LaTeX. It has been implemented in the ‘expl3’ package -as of 2020. The article “Case changing: From TeX primitives to the -Unicode algorithm”, (Joseph Wright, ‘TUGboat’ 41:1, +as of 2020. The article "Case changing: From TeX primitives to the +Unicode algorithm", (Joseph Wright, ‘TUGboat’ 41:1, <https://tug.org/TUGboat/tb41-1/tb127wright-case.pdf>), gives a good overview of the topic, past and present. @@ -14616,12 +15127,16 @@ encoding). ‘\LaTeXe’ The LaTeX2e logo. +‘\guillemetleft («)’ +‘\guillemetright (»)’ ‘\guillemotleft («)’ ‘\guillemotright (»)’ ‘\guilsinglleft (‹)’ ‘\guilsinglright (›)’ «, », ‹, › Double and single angle quotation marks, commonly used - in French. + in French. The commands ‘@guillemotleft’ and ‘@guillemotright’ are + synonyms for ‘@guillemet...’; these are misspellings inherited from + Adobe. (Guillemots are seabirds; guillemets are French quotes.) ‘\ldots’ ‘\textellipsis’ @@ -14631,7 +15146,7 @@ encoding). description for additional general information. ‘\lq’ - ‘ Left (opening) quote. + ' Left (opening) quote. ‘\P’ ‘\textparagraph’ @@ -14646,7 +15161,7 @@ encoding). „ and ‚ Double and single quotation marks on the baseline. ‘\rq’ - ’ Right (closing) quote. + ' Right (closing) quote. ‘\S’ ‘\textsection’ @@ -14714,13 +15229,13 @@ encoding). $ Dollar sign. ‘\textemdash (or ‘---’)’ - — Em-dash. Used for punctuation, usually similar to commas or - parentheses, as in ‘‘The playoffs---if you're lucky enough to make - the playoffs---are more like a sprint.’’ Conventions for spacing + -- Em-dash. Used for punctuation, usually similar to commas or + parentheses, as in '‘The playoffs---if you're lucky enough to make + the playoffs---are more like a sprint.’' Conventions for spacing around em-dashes vary widely. ‘\textendash (or ‘--’)’ - – En-dash. Used for ranges, as in ‘‘see pages 12--14’’. + - En-dash. Used for ranges, as in '‘see pages 12--14’'. ‘\texteuro’ @@ -14737,8 +15252,8 @@ encoding). Dash used between numerals, Unicode U+2012. Defined in the June 2021 release of LaTeX. When used in pdfTeX, approximated by an en-dash; with a Unicode engine, either typesets the glyph if - available in the current font, or writes the usual “Missing - character” warning to the log file. + available in the current font, or writes the usual "Missing + character" warning to the log file. ‘\textgreater’ > Greater than symbol. @@ -14771,16 +15286,16 @@ encoding). ¿ 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.) @@ -14796,13 +15311,13 @@ encoding). →, Right arrow. ‘\textthreequartersemdash’ - ﹘, “Three-quarters” em-dash, between en-dash and em-dash. + ﹘, "Three-quarters" em-dash, between en-dash and em-dash. ‘\texttrademark’ ™ Trademark symbol. ‘\texttwelveudash’ - ﹘, “Two-thirds” em-dash, between en-dash and em-dash. + ﹘, "Two-thirds" em-dash, between en-dash and em-dash. ‘\textunderscore’ _ Underscore. @@ -14816,7 +15331,7 @@ File: latex2e.info, Node: Accents, Next: Additional Latin letters, Prev: Text 23.5 Accents ============ -LaTeX has wide support for many of the world’s scripts and languages, +LaTeX has wide support for many of the world's scripts and languages, provided through the core ‘babel’ package, which supports pdfLaTeX, XeLaTeX and LuaLaTeX. The ‘polyglossia’ package provides similar support with the latter two engines. @@ -14963,7 +15478,7 @@ File: latex2e.info, Node: Additional Latin letters, Next: inputenc package, P 23.6 Additional Latin letters ============================= -Here are the basic LaTeX commands for inserting letters beyond A–Z that +Here are the basic LaTeX commands for inserting letters beyond A-Z that extend the Latin alphabet, used primarily in languages other than English. @@ -15027,51 +15542,46 @@ Synopsis: \usepackage[ENCODING-NAME]{inputenc} - Declare the input file’s text encoding to be ENCODING-NAME. The -default, if this package is not loaded, is UTF-8. Technically, -specifying the encoding name is optional, but in practice it is not -useful to omit it. - - In a computer file, the characters are stored according to a scheme -called the “encoding”. There are many different encodings. The -simplest is ASCII, which supports 95 printable characters, not enough -for most of the world’s languages. For instance, to typeset the -a-umlaut character ‘ä’ in an ASCII-encoded LaTeX source file, the -sequence ‘\"a’ is used. This would make source files for anything but -English hard to read; even for English, often a more extensive encoding -is more convenient. - - The modern encoding standard, in some ways a union of the others, is -UTF-8, one of the representations of Unicode. This is the default for -LaTeX since 2018. - - The ‘inputenc’ package is how LaTeX knows what encoding is used. For + Declare the input file's text encoding to be ENCODING-NAME. (For +basic background, *note Input encodings::). The default, if this +package is not loaded, is UTF-8. Technically, specifying the encoding +name is optional, but in practice it is not useful to omit it. + + The ‘inputenc’ package tells LaTeX what encoding is used. For instance, the following command explicitly says that the input file is UTF-8 (note the lack of a dash). \usepackage[utf8]{inputenc} + The most common values for ENCODING-NAME are: ‘ascii’, ‘latin1’, +‘latin2’, ‘latin3’, ‘latin4’, ‘latin5’, ‘latin9’, ‘latin10’, ‘utf8’. + Caution: use ‘inputenc’ only with the pdfTeX engine (*note TeX -engines::). (The XeTeX and LuaTeX engines assume that the input file is -UTF-8 encoded.) If you invoke LaTeX with either the ‘xelatex’ command -or the ‘lualatex’ command, and try to declare a non-UTF-8 encoding with -‘inputenc’, such as ‘latin1’, then you will get the error ‘inputenc is -not designed for xetex or luatex’. +engines::); with ‘xelatex’ or ‘lualatex’, declaring a non-UTF-8 encoding +with ‘inputenc’, such as ‘latin1’, will get the error ‘inputenc is not +designed for xetex or luatex’. An ‘inputenc’ package error such as ‘Invalid UTF-8 byte "96’ means that some of the material in the input file does not follow the encoding scheme. Often these errors come from copying material from a document -that uses a different encoding than the input file; this one is a left -single quote from a web page using ‘latin1’ inside a LaTeX input file -that uses UTF-8. The simplest solution is to replace the non-UTF-8 -character with its UTF-8 equivalent, or use a LaTeX equivalent command -or character. +that uses a different encoding than the input file. The simplest +solution is often to replace the non-UTF-8 character with a UTF-8 or +LaTeX equivalent. + + If you need to process a non-UTF-8 document with LuaTeX, you can use +the ‘luainputenc’ package (<https://ctan.org/pkg/luainputenc>). With +XeTeX, the ‘\XeTeXinputencoding’ and ‘\XeTeXdefaultencoding’ primitives +can be used (for an explanation and examples, see +<https://tex.stackexchange.com/questions/324948>). + + It's also possible to re-encode a document from an 8-bit encoding to +UTF-8 outside of TeX, using system utilities. For example, ‘recode +latin1..utf8’ or ‘iconv -f latin1 -t utf8’. - In some documents, such as a collection of journal articles from a + In a few documents, such as a collection of journal articles from a variety of authors, changing the encoding in mid-document may be -necessary. Use the command ‘\inputencoding{ENCODING-NAME}’. The most -common values for ENCODING-NAME are: ‘ascii’, ‘latin1’, ‘latin2’, -‘latin3’, ‘latin4’, ‘latin5’, ‘latin9’, ‘latin10’, and ‘utf8’. +necessary. You can use the command ‘\inputencoding{ENCODING-NAME}’ for +this. File: latex2e.info, Node: \rule, Next: \today, Prev: inputenc package, Up: Special insertions @@ -15087,7 +15597,7 @@ Synopsis, one of: Produce a “rule”, a filled-in rectangle. This example produces a rectangular blob, sometimes called a Halmos -symbol, or just “qed”, often used to mark the end of a proof: +symbol, or just "qed", often used to mark the end of a proof: \newcommand{\qedsymbol}{\rule{0.4em}{2ex}} @@ -15121,7 +15631,7 @@ Synopsis: \today - Produce today’s date in the format ‘MONTH DD, YYYY’. An example of a + Produce today's date in the format ‘MONTH DD, YYYY’. An example of a date in that format is ‘July 4, 1976’. Multilingual packages such as ‘babel’ or ‘polyglossia’, or classes @@ -15211,7 +15721,7 @@ Synopsis: after ‘\endinput’ will not be included. This command is optional; if ‘filename.tex’ has no ‘\endinput’ then LaTeX will read all of the file. - For example, suppose that a document’s root file has ‘\input{chap1}’ + For example, suppose that a document's root file has ‘\input{chap1}’ and this is ‘chap1.tex’. \chapter{One} @@ -15259,7 +15769,7 @@ from ‘FILENAME.tex’ into the document, and then it does another The ‘\includeonly’ command controls which files will be read by LaTeX under subsequent ‘\include’ commands. Its list of filenames is comma-separated. It must appear in the preamble or even earlier, e.g., -the command line; it can’t appear in the document body. +the command line; it can't appear in the document body. This example root document, ‘constitution.tex’, brings in three files, ‘preamble.tex’, ‘articles.tex’, and ‘amendments.tex’. @@ -15288,7 +15798,7 @@ 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.aux’. These contain information such as page numbers and cross-references (*note Cross -references::). If you now comment out ‘\includeonly’’s lines with +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 @@ -15423,7 +15933,7 @@ 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. +LaTeX will produce a table of contents on the book's first page. \documentclass{book} % \setcounter{tocdepth}{1} @@ -15480,7 +15990,7 @@ commands such as ‘\l@section{TEXT}{PAGENUMBER}’ and ‘\l@subsection{TEXT}{PAGENUMBER}’. These commands often use the ‘\@dottedtocline’ command (*note \@dottedtocline::). - A consequence of LaTeX’s strategy of using auxiliary files is that to + A consequence of LaTeX's strategy of using auxiliary files is that to get the correct information in the document you must run LaTeX twice, once to store the information and the second time to retrieve it. In the ordinary course of writing a document authors run LaTeX a number of @@ -15656,7 +16166,7 @@ here \addcontentsline{toc}{setcion}{\protect\textbf{Appendices}} -then you don’t get an error but the formatting in the table of contents +then you don't get an error but the formatting in the table of contents will not make sense. @@ -15935,7 +16445,7 @@ Synopsis: \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 +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’. @@ -16138,7 +16648,7 @@ then it is a comment. ‘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 + that the level 0 item doesn't have any page numbers (as in ‘\index{aaa|see{bbb}}’). Default: ‘"\n \\subitem "’. ‘item_12’ @@ -16147,7 +16657,7 @@ then it is a comment. ‘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 + level 1 item doesn't have page numbers. Default: ‘"\n \\subsubitem "’. ‘delim_0’ @@ -16171,7 +16681,7 @@ then it is a comment. range. Default: ‘"--"’. ‘line_max’ - An integer. Maximum length of an index entry’s line in the output, + An integer. Maximum length of an index entry's line in the output, beyond which the line wraps. Default: ‘72’. ‘indent_space’ @@ -16422,10 +16932,10 @@ typically ends with a ‘\closing’ command such as ‘\closing{Yours,}’. Additional material may come after the ‘\closing’. You can say who 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 +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 sender name and the closing above it + 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. @@ -16455,17 +16965,17 @@ marked as optional are typically omitted. * Menu: -* \address:: Sender’s return address. +* \address:: Sender's return address. * \cc:: Carbon copy list. * \closing:: Saying goodbye. * \encl:: List of enclosed material. -* \location:: Sender’s organizational location. +* \location:: Sender's organizational location. * \makelabels:: Make address labels. -* \name:: Sender’s name, for the return address. +* \name:: Sender's name, for the return address. * \opening:: Saying hello. * \ps:: Adding a postscript. -* \signature:: Sender’s signature. -* \telephone:: Sender’s phone number. +* \signature:: Sender's signature. +* \telephone:: Sender's phone number. File: latex2e.info, Node: \address, Next: \cc, Up: Letters @@ -16524,7 +17034,7 @@ Synopsis: \closing{TEXT} - Produce the letter’s closing. This is optional, but usual. It + Produce the letter's closing. This is optional, but usual. It appears at the end of a letter, above a handwritten signature. For example: @@ -16631,7 +17141,7 @@ Synopsis: \name{NAME} - Optional. Sender’s name, used for printing on the envelope together + Optional. Sender's name, used for printing on the envelope together with the return address. @@ -16675,7 +17185,7 @@ Synopsis: \signature{FIRST LINE \\ ... } - The sender’s name. This command is optional, although its inclusion + 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 @@ -16685,7 +17195,7 @@ 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 + LaTeX's default for the vertical space from the ‘\closing’ text down 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). @@ -16712,7 +17222,7 @@ Synopsis: \telephone{NUMBER} - The sender’s telephone number. This is typically in the preamble, + The sender's telephone number. This is typically in the preamble, where it applies to all letters. This only appears if the ‘firstpage’ pagestyle is selected. If so, it appears on the lower right of the page. @@ -16790,7 +17300,7 @@ writes one line to it, and closes it. But filenames with a period can cause trouble: if TeX finds a FILENAME of ‘presidents.dat’ it could look first for ‘presidents.dat.tex’ and later for ‘presidents.dat’, or it could do the opposite. Your -distribution’s documentation should say more, and if you find something +distribution's documentation should say more, and if you find something that works for you then you are good, but to ensure complete portability the best thing is to use file names containing only the twenty six ASCII letters (not case-sensitive) and the ten digits, along with underscore @@ -16800,7 +17310,7 @@ and dash, and in particular with no dot or space. error. It just considers that the stream is not open (test for this with ‘\ifeof’; one recourse is the command ‘\InputIfFileExists’, *note Class and package commands::). If you try to use the same number twice, -LaTeX won’t give you an error. If you try to use a bad number then you +LaTeX won't give you an error. If you try to use a bad number then you get an error message like ‘! Bad number (16). <to be read again> = l.30 \openin16=test.jh’. @@ -16908,7 +17418,7 @@ outputs ‘Recommendation for John Dee’. Like what happens here with ‘\renewcommand’ (among others) are replaced by their definitions before being printed. - LaTeX’s usual rules for treating multiple spaces as a single space + LaTeX's usual rules for treating multiple spaces as a single space and ignoring spaces after a command name apply to ‘msg’. Use the command ‘\space’ to get a single space, independent of surrounding spaces. Use ‘^^J’ to get a newline. Get a percent character with @@ -16988,7 +17498,7 @@ So, you use ‘\write’ in one of three contexts: that you should use ‘#’ instead of ‘##’). 2. With the second, STRING is stored on the current list of things (as - a TeX “whatsit” item) and kept until the page is shipped out and + a TeX "whatsit" item) and kept until the page is shipped out and likewise the macros are unexpanded until ‘\shipout’. At ‘\shipout’, STRING is fully expanded. @@ -16998,7 +17508,7 @@ So, you use ‘\write’ in one of three contexts: protected or to have some other special definition for the write. As a simple example of expansion with ‘\write’, STRING here contains -a control sequence ‘\triplex’ which we’ve defined to be the text ‘XYZ’: +a control sequence ‘\triplex’ which we've defined to be the text ‘XYZ’: \newwrite\jhfile \openout\jhfile=test.jh @@ -17009,7 +17519,7 @@ This results in the file ‘test.jh’ containing the text ‘test XYZtest’ followed by a newline. The cases where NUMBER is 16, 17, or 18 are special. Because of -‘\write’’s behavior when NUMBER is outside the range from 0 to 15 +‘\write’'s behavior when NUMBER is outside the range from 0 to 15 described above, in Plain TeX ‘\write16’ and ‘\write17’ were sometimes used to write to the log file and the terminal; however, in LaTeX, the natural way to do that is with ‘\typeout’ (*note \typeout::). The @@ -17141,7 +17651,7 @@ Synopsis: \write18{SHELL_COMMAND} Issue a command to the operating system shell. The operating system -runs the command and LaTeX’s execution is blocked until that finishes. +runs the command and LaTeX's execution is blocked until that finishes. This sequence (on Unix) @@ -17307,7 +17817,7 @@ generally use the ‘=’ syntax. eliminates most terminal output. ‘-jobname=STRING’ - Set the value of TeX’s “jobname” to the string. The log file and + 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’. *note Jobname::. @@ -17395,8 +17905,8 @@ different versions. 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. (*note -Jobname::.) +called ‘main.pdf’ and the second would overwrite the first (*note +Jobname::). In this example we use the command line to select which parts of a document to include. For a book named ‘mybook.tex’ and structured like @@ -17442,7 +17952,7 @@ argument to ‘\input’. There are two more possibilities for the jobname. It can be directly specified with the ‘-jobname’ option, as in ‘pdflatex -jobname=myname’ -(*note Command line input:: for a real example). +(*note Command line input:: for a practical example). The final possibility is ‘texput’, which is the final fallback default if no other name is available to TeX. That is, if no ‘-jobname’ @@ -17473,8 +17983,8 @@ catcode 11. Because of this catcode situation, using the jobname in a conditional can become complicated. One solution is to use the macro ‘\IfBeginWith’ from the ‘xstring’ package in its star variant, which is insensitive to -catcode. For example, in the following text the footnote “Including -Respublica Bananensis Francorum.” is only present if the task name +catcode. For example, in the following text the footnote "Including +Respublica Bananensis Francorum." is only present if the task name starts with ‘my-doc’. If a democracy is just a regime where citizens vote then @@ -17649,7 +18159,7 @@ 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 with ‘\input’.) +You don't get the cross-reference benefit with ‘\input’.) \documentclass[titlepage]{book} \usepackage{makeidx}\makeindex @@ -17698,17 +18208,9 @@ Index * Menu: -* $ inline math: math. (line 12) -* $$...$$ plain TeX display math: displaymath. (line 32) -* & (for table cells): tabular. (line 32) -* * prompt: Recovering from errors. - (line 23) -* *, to \nocite all keys: Using BibTeX. (line 61) -* *-form of environment commands: \newenvironment & \renewenvironment. - (line 27) -* *-form of sectioning commands: Sectioning. (line 31) -* *-form, defining new commands: \newcommand & \renewcommand. - (line 28) +* _ character, meaning of: Special characters. (line 30) +* _ subscript: Subscripts & superscripts. + (line 6) * --disable-write18 command-line option: Command line options. (line 61) * --enable-write18 command-line option: Command line options. @@ -17734,6 +18236,8 @@ Index * --version command-line option: Command line options. (line 18) * -1, write stream number: \write. (line 30) +* : (for math): Colon character & \colon. + (line 6) * .aux file: Output files. (line 33) * .aux file and BibTeX commands: BibTeX error messages. (line 6) @@ -17760,43 +18264,85 @@ Index * .toc file <1>: Table of contents etc.. (line 6) * .toc file <2>: \contentsline. (line 6) -* .xdv file: TeX engines. (line 42) -* /bin/sh, used by \write18: \write18. (line 60) -* 10pt option: Document class options. - (line 14) -* 11pt option: Document class options. - (line 14) -* 12pt option: Document class options. - (line 14) -* : (for math): Colon character & \colon. - (line 6) +* .xdv file: TeX engines. (line 43) * [...] (for optional arguments): LaTeX command syntax. (line 6) +* { character, meaning of: Special characters. (line 15) +* {...} (for required arguments): LaTeX command syntax. + (line 6) +* } character, meaning of: Special characters. (line 15) +* * prompt: Recovering from errors. + (line 23) +* *-form of environment commands: \newenvironment & \renewenvironment. + (line 27) +* *-form of sectioning commands: Sectioning. (line 31) +* *-form, defining new commands: \newcommand & \renewcommand. + (line 28) +* *, to \nocite all keys: Using BibTeX. (line 61) +* /bin/sh, used by \write18: \write18. (line 60) * \ (backslash-space): \(SPACE). (line 6) * \ character starting commands: LaTeX command syntax. (line 6) +* \ character, meaning of: Special characters. (line 11) +* \_: Printing special characters. + (line 14) +* \-: tabbing. (line 83) +* \- (hyphenation): \- (hyphenation). (line 6) +* \,: Spacing in math mode. + (line 47) +* \;: Spacing in math mode. + (line 23) +* \:: Spacing in math mode. + (line 36) * \!: Spacing in math mode. (line 61) -* \" (umlaut accent): Accents. (line 25) -* \#: Reserved characters. (line 13) -* \$: Reserved characters. (line 13) -* \%: Reserved characters. (line 13) -* \&: Reserved characters. (line 13) +* \. (dot-over accent): Accents. (line 32) * \' (acute accent): Accents. (line 29) * \' (tabbing): tabbing. (line 87) +* \" (umlaut accent): Accents. (line 25) * \(...\) inline math: math. (line 12) +* \[...\] display math: displaymath. (line 26) +* \{: Printing special characters. + (line 14) +* \}: Printing special characters. + (line 14) +* \@: \@. (line 6) +* \@auxout: \write. (line 45) +* \@beginparpenalty: list. (line 261) +* \@dottedtocline: \@dottedtocline. (line 6) +* \@endparpenalty: list. (line 269) +* \@fnsymbol: \footnote. (line 25) +* \@ifstar: \@ifstar. (line 6) +* \@itempenalty: list. (line 265) +* \@mainaux: \write. (line 45) +* \@startsection: \@startsection. (line 6) * \*: \*. (line 6) -* \+: tabbing. (line 79) -* \,: Spacing in math mode. - (line 47) -* \-: tabbing. (line 83) -* \- (hyphenation): \- (hyphenation). (line 6) -* \. (dot-over accent): Accents. (line 32) * \/: \/. (line 6) -* \:: Spacing in math mode. - (line 36) -* \;: Spacing in math mode. - (line 23) +* \\ (for \author): \maketitle. (line 43) +* \\ (for \shortstack objects): \shortstack. (line 35) +* \\ (for \title): \maketitle. (line 64) +* \\ (for center): center. (line 16) +* \\ (for eqnarray): eqnarray. (line 29) +* \\ (for flushleft): flushleft. (line 14) +* \\ (for flushright): flushright. (line 12) +* \\ (for letters): Letters. (line 48) +* \\ (for tabular): tabular. (line 36) +* \\ (for verse): verse. (line 21) +* \\ (force line break): \\. (line 6) +* \\ (tabbing): tabbing. (line 66) +* \\* (for eqnarray): eqnarray. (line 35) +* \&: Printing special characters. + (line 14) +* \#: Printing special characters. + (line 14) +* \%: Printing special characters. + (line 14) +* \` (grave accent): Accents. (line 44) +* \` (tabbing): tabbing. (line 93) +* \^: Printing special characters. + (line 19) +* \^ (circumflex accent): Accents. (line 40) +* \+: tabbing. (line 79) * \<: tabbing. (line 75) * \= (macron accent): Accents. (line 36) * \= (tabbing): tabbing. (line 69) @@ -17804,18 +18350,15 @@ Index * \> <1>: Spacing in math mode. (line 36) * \> (tabbing): tabbing. (line 72) -* \@: \@. (line 6) -* \@auxout: \write. (line 45) -* \@beginparpenalty: list. (line 243) -* \@dottedtocline: \@dottedtocline. (line 6) -* \@endparpenalty: list. (line 251) -* \@fnsymbol: \footnote. (line 24) -* \@ifstar: \@ifstar. (line 6) -* \@itempenalty: list. (line 247) -* \@mainaux: \write. (line 45) -* \@startsection: \@startsection. (line 6) +* \|: Math symbols. (line 18) +* \~: Printing special characters. + (line 19) +* \~ (tilde accent): Accents. (line 48) +* \$: Printing special characters. + (line 14) * \a (tabbing): tabbing. (line 102) * \a' (acute accent in tabbing): tabbing. (line 103) +* \a` (grave accent in tabbing): tabbing. (line 103) * \a= (macron accent in tabbing): tabbing. (line 103) * \aa (å): Additional Latin letters. (line 12) @@ -17835,11 +18378,11 @@ Index (line 16) * \aleph: Math symbols. (line 21) * \Alph example: enumerate. (line 61) -* \alpha: Math symbols. (line 24) * \alph{COUNTER}: \alph \Alph \arabic \roman \Roman \fnsymbol. (line 14) * \Alph{COUNTER}: \alph \Alph \arabic \roman \Roman \fnsymbol. (line 19) +* \alpha: Math symbols. (line 24) * \alsoname: \index. (line 58) * \amalg: Math symbols. (line 27) * \and (for \author): \maketitle. (line 43) @@ -17858,15 +18401,16 @@ Index * \ast: Math symbols. (line 37) * \asymp: Math symbols. (line 44) * \AtBeginDocument: \AtBeginDocument. (line 6) -* \AtBeginDvi: Class and package commands. - (line 9) +* \AtBeginDvi: \AtBeginDvi & \AtEndDvi. + (line 6) * \AtEndDocument: \AtEndDocument. (line 6) -* \AtEndOfClass: Class and package commands. - (line 14) -* \AtEndOfPackage: Class and package commands. - (line 14) +* \AtEndDvi: \AtBeginDvi & \AtEndDvi. + (line 6) +* \AtEndOfClass: \AtEndOfClass & \AtEndOfPackage. + (line 6) +* \AtEndOfPackage: \AtEndOfClass & \AtEndOfPackage. + (line 6) * \author{NAME1 \and NAME2 \and ...}: \maketitle. (line 42) -* \a` (grave accent in tabbing): tabbing. (line 103) * \b (bar-under accent): Accents. (line 51) * \backmatter: \frontmatter & \mainmatter & \backmatter. (line 6) @@ -17956,10 +18500,7 @@ Index * \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) +* \CheckCommand: \CheckCommand. (line 6) * \chi: Math symbols. (line 117) * \circ: Math symbols. (line 120) * \circle: \circle. (line 6) @@ -17968,16 +18509,16 @@ Index * \cite: \cite. (line 6) * \cite and internal \citation: BibTeX error messages. (line 23) -* \ClassError: Class and package commands. - (line 41) -* \ClassInfo: Class and package commands. - (line 41) -* \ClassInfoNoLine: Class and package commands. - (line 41) -* \ClassWarning: Class and package commands. - (line 41) -* \ClassWarningNoLine: Class and package commands. - (line 41) +* \ClassError: \ClassError and \PackageError and others. + (line 13) +* \ClassInfo: \ClassError and \PackageError and others. + (line 13) +* \ClassInfoNoLine: \ClassError and \PackageError and others. + (line 13) +* \ClassWarning: \ClassError and \PackageError and others. + (line 13) +* \ClassWarningNoLine: \ClassError and \PackageError and others. + (line 13) * \cleardoublepage: \clearpage & \cleardoublepage. (line 6) * \clearpage: \clearpage & \cleardoublepage. @@ -18016,10 +18557,11 @@ Index * \cosh: Math functions. (line 27) * \cot: Math functions. (line 30) * \coth: Math functions. (line 33) +* \cprotect: \protect. (line 51) +* \cprotEnv: \protect. (line 57) * \csc: Math functions. (line 36) * \cup: Math symbols. (line 139) -* \CurrentOption: Class and package commands. - (line 60) +* \CurrentOption: \CurrentOption. (line 6) * \d (dot-under accent): Accents. (line 65) * \dag: Text symbols. (line 17) * \dagger: Math symbols. (line 143) @@ -18043,14 +18585,9 @@ Index (line 6) * \DeclareGraphicsRule: \DeclareGraphicsRule. (line 6) -* \DeclareOption: Class and package commands. - (line 66) -* \DeclareOption*: Class and package commands. - (line 66) -* \DeclareRobustCommand: Class and package commands. - (line 96) -* \DeclareRobustCommand*: Class and package commands. - (line 96) +* \DeclareOption: \DeclareOption. (line 6) +* \DeclareRobustCommand: \DeclareRobustCommand. + (line 6) * \DeclareTextAccent: \DeclareTextAccent. (line 6) * \DeclareTextAccent <1>: \DeclareTextAccentDefault. (line 6) @@ -18092,19 +18629,21 @@ Index (line 26) * \documentclass: Document classes. (line 6) * \documentclass, and texput jobname: Jobname. (line 32) +* \DocumentMetadata: \DocumentMetadata. (line 6) * \dot: Math accents. (line 25) * \doteq: Math symbols. (line 173) * \dotfill: \hrulefill & \dotfill. (line 6) * \dots: Dots. (line 26) * \dots <1>: Dots. (line 49) -* \dots <2>: Text symbols. (line 38) +* \dots <2>: Text symbols. (line 42) * \dotsb: Dots. (line 49) * \dotsc: Dots. (line 49) * \dotsi: Dots. (line 49) * \doublerulesep: tabular. (line 168) * \downarrow: Math symbols. (line 177) * \Downarrow: Math symbols. (line 181) +* \ds@OPTION: \ExecuteOptions. (line 10) * \ell: Math symbols. (line 185) * \emph: Font styles. (line 60) * \emptyset: Math symbols. (line 188) @@ -18122,13 +18661,12 @@ Index * \equiv: Math symbols. (line 197) * \eta: Math symbols. (line 200) * \evensidemargin: Document class options. - (line 84) + (line 87) * \evensidemargin <1>: Page layout parameters. (line 67) * \evensidemargin <2>: Page layout parameters. (line 68) -* \ExecuteOptions: Class and package commands. - (line 172) +* \ExecuteOptions: \ExecuteOptions. (line 6) * \exists: Math symbols. (line 203) * \exp: Math functions. (line 48) * \externaldocument: xr package. (line 6) @@ -18147,7 +18685,7 @@ Index * \floatsep: Floats. (line 114) * \floatsep <1>: Floats. (line 115) * \flushbottom: \flushbottom. (line 6) -* \fnsymbol, and footnotes: \footnote. (line 24) +* \fnsymbol, and footnotes: \footnote. (line 25) * \fnsymbol{COUNTER}: \alph \Alph \arabic \roman \Roman \fnsymbol. (line 37) * \fontdimen1: \/. (line 40) @@ -18163,8 +18701,8 @@ Index (line 101) * \footnote: \footnote. (line 6) * \footnotemark: \footnotemark. (line 6) -* \footnoterule: \footnote. (line 34) -* \footnotesep: \footnote. (line 46) +* \footnoterule: \footnote. (line 35) +* \footnotesep: \footnote. (line 51) * \footnotesize: Font sizes. (line 11) * \footnotetext: \footnotetext. (line 6) * \footskip: Page layout parameters. @@ -18193,10 +18731,12 @@ Index * \graphicspath: \graphicspath. (line 6) * \graphpaper: \graphpaper. (line 6) * \grave: Math accents. (line 28) -* \guillemotleft («): Text symbols. (line 29) -* \guillemotright (»): Text symbols. (line 30) -* \guilsinglleft (‹): Text symbols. (line 31) -* \guilsinglright (›): Text symbols. (line 32) +* \guillemetleft («): Text symbols. (line 29) +* \guillemetright (»): Text symbols. (line 30) +* \guillemotleft («): Text symbols. (line 31) +* \guillemotright (»): Text symbols. (line 32) +* \guilsinglleft (‹): Text symbols. (line 33) +* \guilsinglright (›): Text symbols. (line 34) * \H (Hungarian umlaut accent): Accents. (line 69) * \hat: Math accents. (line 31) * \hbar: Math symbols. (line 235) @@ -18230,8 +18770,8 @@ Index * \i (dotless i): Accents. (line 19) * \IfBeginWith* macro from xstring: Jobname. (line 53) * \iff: Math symbols. (line 247) -* \IfFileExists: Class and package commands. - (line 128) +* \IfFileExists: \IfFileExists & \InputIfFileExists. + (line 6) * \ignorespaces: \ignorespaces & \ignorespacesafterend. (line 6) * \ignorespacesafterend: \ignorespaces & \ignorespacesafterend. @@ -18259,9 +18799,9 @@ Index * \inf: Math functions. (line 57) * \infty: Math symbols. (line 262) * \input: \input. (line 6) -* \inputencoding: inputenc package. (line 50) -* \InputIfFileExists: Class and package commands. - (line 128) +* \inputencoding: inputenc package. (line 46) +* \InputIfFileExists: \IfFileExists & \InputIfFileExists. + (line 6) * \int: Math symbols. (line 265) * \intextsep: Floats. (line 118) * \intextsep <1>: Floats. (line 119) @@ -18318,7 +18858,7 @@ Index * \lbrack: Math symbols. (line 298) * \lceil: Math symbols. (line 301) * \ldots: Dots. (line 24) -* \ldots <1>: Text symbols. (line 36) +* \ldots <1>: Text symbols. (line 40) * \le: Math symbols. (line 305) * \leadsto: Math symbols. (line 308) * \left: \left & \right. (line 6) @@ -18370,20 +18910,21 @@ Index * \ll: Math symbols. (line 348) * \ln: Math functions. (line 75) * \lnot: Math symbols. (line 351) -* \LoadClass: Class and package commands. - (line 148) -* \LoadClassWithOptions: Class and package commands. - (line 148) +* \LoadClass: \LoadClass & \LoadClassWithOptions. + (line 6) +* \LoadClassWithOptions: \LoadClass & \LoadClassWithOptions. + (line 6) * \location: \location. (line 6) * \log: Math functions. (line 78) -* \long: \newcommand & \renewcommand. +* \long command, checking for: \CheckCommand. (line 6) +* \long, not defining a command as: \newcommand & \renewcommand. (line 28) * \longleftarrow: Math symbols. (line 354) * \longleftrightarrow: Math symbols. (line 358) * \longmapsto: Math symbols. (line 362) * \longrightarrow: Math symbols. (line 366) * \lor: Math symbols. (line 370) -* \lq: Text symbols. (line 43) +* \lq: Text symbols. (line 47) * \mainmatter: \frontmatter & \mainmatter & \backmatter. (line 6) * \makeatother: \makeatletter & \makeatother. @@ -18415,8 +18956,8 @@ Index (line 41) * \marginsep <1>: Page layout parameters. (line 43) -* \markboth{LEFT-HEAD}{RIGHT-HEAD}: \pagestyle. (line 76) -* \markright{RIGHT-HEAD}: \pagestyle. (line 85) +* \markboth{LEFT-HEAD}{RIGHT-HEAD}: \pagestyle. (line 77) +* \markright{RIGHT-HEAD}: \pagestyle. (line 86) * \mathbf: Font styles. (line 111) * \mathcal: Font styles. (line 127) * \mathdollar: Math symbols. (line 834) @@ -18446,6 +18987,8 @@ Index * \medspace: Spacing in math mode. (line 36) * \message: \message. (line 6) +* \MessageBreak, and message text: \ClassError and \PackageError and others. + (line 31) * \mho: Math symbols. (line 378) * \mid: Math symbols. (line 381) * \min: Math functions. (line 84) @@ -18461,8 +19004,7 @@ Index * \natural: Math symbols. (line 404) * \ne: Math symbols. (line 407) * \nearrow: Math symbols. (line 410) -* \NeedsTeXFormat: Class and package commands. - (line 182) +* \NeedsTeXFormat: \NeedsTeXFormat. (line 6) * \neg: Math symbols. (line 413) * \negmedspace: Spacing in math mode. (line 42) @@ -18484,6 +19026,8 @@ Index * \newline: \newline. (line 6) * \<NEWLINE>: \(SPACE). (line 6) * \newpage: \newpage. (line 6) +* \newrobustcmd (etoolbox package): \DeclareRobustCommand. + (line 32) * \newsavebox: \newsavebox. (line 6) * \newtheorem: \newtheorem. (line 6) * \newtie: Accents. (line 83) @@ -18493,10 +19037,11 @@ Index * \NG: Additional Latin letters. (line 40) * \ni: Math symbols. (line 420) +* \nobreakspace: ~. (line 10) * \nocite: \nocite. (line 6) +* \nocite {*}, for all keys: Using BibTeX. (line 61) * \nocite and internal \citation: BibTeX error messages. (line 23) -* \nocite {*}, for all keys: Using BibTeX. (line 61) * \nocorr: Font styles. (line 22) * \nocorrlist: Font styles. (line 22) * \nofiles: \nofiles. (line 6) @@ -18524,7 +19069,7 @@ Index * \obeycr: \obeycr & \restorecr. (line 6) * \oddsidemargin: Document class options. - (line 84) + (line 87) * \oddsidemargin <1>: Page layout parameters. (line 66) * \oddsidemargin <2>: Page layout parameters. @@ -18544,27 +19089,26 @@ Index * \opening: \opening. (line 6) * \openout: \openin & \openout. (line 6) * \oplus: Math symbols. (line 458) -* \OptionNotUsed: Class and package commands. - (line 200) +* \OptionNotUsed: \OptionNotUsed. (line 6) * \oslash: Math symbols. (line 462) * \otimes: Math symbols. (line 465) * \oval: \oval. (line 6) -* \overbrace{MATH}: Over- and Underlining. - (line 39) -* \overline{TEXT}: Over- and Underlining. - (line 20) +* \overbrace{MATH}: Over- or under math. (line 41) +* \overleftarrow{MATH}: Over- or under math. (line 48) +* \overline{MATH}: Over- or under math. (line 22) +* \overrightarrow{MATH}: Over- or under math. (line 45) * \owns: Math symbols. (line 469) -* \P: Text symbols. (line 46) -* \PackageError: Class and package commands. - (line 41) -* \PackageInfo: Class and package commands. - (line 41) -* \PackageInfoNoLine: Class and package commands. - (line 41) -* \PackageWarning: Class and package commands. - (line 41) -* \PackageWarningNoLine: Class and package commands. - (line 41) +* \P: Text symbols. (line 50) +* \PackageError: \ClassError and \PackageError and others. + (line 20) +* \PackageInfo: \ClassError and \PackageError and others. + (line 20) +* \PackageInfoNoLine: \ClassError and \PackageError and others. + (line 20) +* \PackageWarning: \ClassError and \PackageError and others. + (line 20) +* \PackageWarningNoLine: \ClassError and \PackageError and others. + (line 20) * \pagebreak: \pagebreak & \nopagebreak. (line 6) * \pagenumbering: \pagenumbering. (line 6) @@ -18596,14 +19140,16 @@ Index * \part <1>: \part. (line 6) * \partial: Math symbols. (line 476) * \partopsep: list. (line 157) -* \PassOptionsToClass: Class and package commands. - (line 206) -* \PassOptionsToPackage: Class and package commands. - (line 206) +* \PassOptionsToClass: \PassOptionsToClass & \PassOptionsToPackage. + (line 6) +* \PassOptionsToClass, ignoring: \LoadClass & \LoadClassWithOptions. + (line 27) +* \PassOptionsToPackage: \PassOptionsToClass & \PassOptionsToPackage. + (line 6) * \pdfpageheight: Document class options. - (line 40) + (line 43) * \pdfpagewidth: Document class options. - (line 40) + (line 43) * \perp: Math symbols. (line 479) * \phantom: \phantom & \vphantom & \hphantom. (line 6) @@ -18615,7 +19161,7 @@ Index * \pmod: Math functions. (line 87) * \poptabs: tabbing. (line 113) * \poptabs <1>: tabbing. (line 114) -* \pounds: Text symbols. (line 50) +* \pounds: Text symbols. (line 54) * \Pr: Math functions. (line 90) * \prec: Math symbols. (line 500) * \preceq: Math symbols. (line 503) @@ -18625,21 +19171,21 @@ Index * \printglossaries: Glossaries. (line 6) * \printglossaries <1>: Glossaries. (line 43) * \printindex: \printindex. (line 6) -* \ProcessOptions: Class and package commands. - (line 243) -* \ProcessOptions*: Class and package commands. - (line 243) +* \ProcessOptions: \ProcessOptions. (line 6) * \prod: Math symbols. (line 516) * \propto: Math symbols. (line 519) * \protect: \protect. (line 6) +* \protect, and message text: \ClassError and \PackageError and others. + (line 31) * \protected@write: \write. (line 70) * \providecommand: \providecommand. (line 6) -* \ProvidesClass: Class and package commands. - (line 281) -* \ProvidesFile: Class and package commands. - (line 314) -* \ProvidesPackage: Class and package commands. - (line 281) +* \providerobustcmd (etoolbox package): \DeclareRobustCommand. + (line 32) +* \ProvidesClass: \ProvidesClass & \ProvidesPackage. + (line 6) +* \ProvidesFile: \ProvidesFile. (line 6) +* \ProvidesPackage: \ProvidesClass & \ProvidesPackage. + (line 6) * \ProvideTextCommand: \DeclareTextCommand & \ProvideTextCommand. (line 6) * \ProvideTextCommandDefault: \DeclareTextCommandDefault & \ProvideTextCommandDefault. @@ -18658,8 +19204,8 @@ Index (line 69) * \quad <1>: \enspace & \quad & \qquad. (line 6) -* \quotedblbase („): Text symbols. (line 54) -* \quotesinglbase (‚): Text symbols. (line 55) +* \quotedblbase („): Text symbols. (line 58) +* \quotesinglbase (‚): Text symbols. (line 59) * \r (ring accent): Accents. (line 77) * \raggedbottom: \raggedbottom. (line 6) * \raggedleft: \raggedleft. (line 6) @@ -18679,11 +19225,13 @@ Index (line 6) * \renewenvironment: \newenvironment & \renewenvironment. (line 6) -* \RequirePackage: Class and package commands. - (line 323) +* \renewrobustcmd (etoolbox package): \DeclareRobustCommand. + (line 32) +* \RequirePackage: \RequirePackage & \RequirePackageWithOptions. + (line 6) * \RequirePackage, and texput jobname: Jobname. (line 32) -* \RequirePackageWithOptions: Class and package commands. - (line 323) +* \RequirePackageWithOptions: \RequirePackage & \RequirePackageWithOptions. + (line 6) * \resizebox: \resizebox. (line 6) * \restorecr: \obeycr & \restorecr. (line 6) @@ -18707,9 +19255,9 @@ Index * \Roman{COUNTER}: \alph \Alph \arabic \roman \Roman \fnsymbol. (line 32) * \rotatebox: \rotatebox. (line 6) -* \rq: Text symbols. (line 58) +* \rq: Text symbols. (line 62) * \rule: \rule. (line 6) -* \S: Text symbols. (line 61) +* \S: Text symbols. (line 65) * \samepage: \pagebreak & \nopagebreak. (line 44) * \savebox: \sbox & \savebox. (line 6) @@ -18747,6 +19295,7 @@ Index * \sin: Math functions. (line 96) * \sinh: Math functions. (line 99) * \sl: Font styles. (line 93) +* \slash: \slash. (line 6) * \sloppy: \fussy & \sloppy. (line 6) * \slshape: Font styles. (line 46) * \small: Font sizes. (line 11) @@ -18766,6 +19315,8 @@ Index (line 88) * \space <1>: \input. (line 32) * \space <2>: \typeout. (line 22) +* \space, and message text: \ClassError and \PackageError and others. + (line 31) * \spacefactor: \spacefactor. (line 10) * \spadesuit: Math symbols. (line 619) * \sqcap: Math symbols. (line 622) @@ -18824,77 +19375,78 @@ Index * \tanh: Math functions. (line 108) * \tau: Math symbols. (line 685) * \telephone: \telephone. (line 6) -* \TeX: Text symbols. (line 65) -* \textascendercompwordmark: Text symbols. (line 110) -* \textasciicircum: Text symbols. (line 68) -* \textasciitilde: Text symbols. (line 71) -* \textasteriskcentered: Text symbols. (line 74) -* \textbackslash: Reserved characters. (line 18) -* \textbackslash <1>: Text symbols. (line 77) -* \textbar: Text symbols. (line 85) -* \textbardbl: Text symbols. (line 88) +* \TeX: Text symbols. (line 69) +* \textascendercompwordmark: Text symbols. (line 114) +* \textasciicircum: Text symbols. (line 72) +* \textasciitilde: Text symbols. (line 75) +* \textasteriskcentered: Text symbols. (line 78) +* \textbackslash: Printing special characters. + (line 19) +* \textbackslash <1>: Text symbols. (line 81) +* \textbar: Text symbols. (line 89) +* \textbardbl: Text symbols. (line 92) * \textbf: Font styles. (line 40) -* \textbigcircle: Text symbols. (line 91) -* \textbraceleft: Text symbols. (line 94) -* \textbraceright: Text symbols. (line 98) -* \textbullet: Text symbols. (line 102) -* \textcapitalcompwordmark: Text symbols. (line 109) -* \textcircled{LETTER}: Text symbols. (line 105) -* \textcompwordmark: Text symbols. (line 108) +* \textbigcircle: Text symbols. (line 95) +* \textbraceleft: Text symbols. (line 98) +* \textbraceright: Text symbols. (line 102) +* \textbullet: Text symbols. (line 106) +* \textcapitalcompwordmark: Text symbols. (line 113) +* \textcircled{LETTER}: Text symbols. (line 109) +* \textcompwordmark: Text symbols. (line 112) * \textcopyright: Text symbols. (line 14) -* \textdagger: Text symbols. (line 117) -* \textdaggerdbl: Text symbols. (line 120) -* \textdollar (or \$): Text symbols. (line 123) -* \textellipsis: Text symbols. (line 37) -* \textemdash (or ---): Text symbols. (line 126) -* \textendash (or --): Text symbols. (line 132) -* \texteuro: Text symbols. (line 135) -* \textexclamdown (or !`): Text symbols. (line 143) -* \textfiguredash: Text symbols. (line 146) +* \textdagger: Text symbols. (line 121) +* \textdaggerdbl: Text symbols. (line 124) +* \textdollar (or \$): Text symbols. (line 127) +* \textellipsis: Text symbols. (line 41) +* \textemdash (or ---): Text symbols. (line 130) +* \textendash (or --): Text symbols. (line 136) +* \texteuro: Text symbols. (line 139) +* \textexclamdown (or !`): Text symbols. (line 147) +* \textfiguredash: Text symbols. (line 150) * \textfloatsep: Floats. (line 123) * \textfloatsep <1>: Floats. (line 124) * \textfraction: Floats. (line 102) * \textfraction <1>: Floats. (line 103) -* \textgreater: Text symbols. (line 153) +* \textgreater: Text symbols. (line 157) * \textheight: Page layout parameters. (line 91) * \textheight <1>: Page layout parameters. (line 92) -* \texthorizontalbar: Text symbols. (line 156) +* \texthorizontalbar: Text symbols. (line 160) * \textit: Font styles. (line 34) -* \textleftarrow: Text symbols. (line 164) -* \textless: Text symbols. (line 161) +* \textleftarrow: Text symbols. (line 168) +* \textless: Text symbols. (line 165) * \textmd: Font styles. (line 37) -* \textnonbreakinghyphen: Text symbols. (line 167) +* \textnonbreakinghyphen: Text symbols. (line 171) * \textnormal: Font styles. (line 58) -* \textordfeminine: Text symbols. (line 173) -* \textordmasculine: Text symbols. (line 174) -* \textparagraph: Text symbols. (line 47) -* \textperiodcentered: Text symbols. (line 177) -* \textquestiondown (or ?`): Text symbols. (line 180) -* \textquotedblleft (or ``): Text symbols. (line 183) -* \textquotedblright (or ''): Text symbols. (line 186) -* \textquoteleft (or `): Text symbols. (line 189) -* \textquoteright (or '): Text symbols. (line 192) -* \textquotesingle: Text symbols. (line 195) -* \textquotestraightbase: Text symbols. (line 198) -* \textquotestraightdblbase: Text symbols. (line 199) -* \textregistered: Text symbols. (line 202) -* \textrightarrow: Text symbols. (line 205) +* \textordfeminine: Text symbols. (line 177) +* \textordmasculine: Text symbols. (line 178) +* \textparagraph: Text symbols. (line 51) +* \textperiodcentered: Text symbols. (line 181) +* \textquestiondown (or ?`): Text symbols. (line 184) +* \textquotedblleft (or ``): Text symbols. (line 187) +* \textquotedblright (or ''): Text symbols. (line 190) +* \textquoteleft (or `): Text symbols. (line 193) +* \textquoteright (or '): Text symbols. (line 196) +* \textquotesingle: Text symbols. (line 199) +* \textquotestraightbase: Text symbols. (line 202) +* \textquotestraightdblbase: Text symbols. (line 203) +* \textregistered: Text symbols. (line 206) +* \textrightarrow: Text symbols. (line 209) * \textrm: Font styles. (line 31) * \textsc: Font styles. (line 52) -* \textsection: Text symbols. (line 62) +* \textsection: Text symbols. (line 66) * \textsf: Font styles. (line 49) * \textsl: Font styles. (line 46) -* \textsterling: Text symbols. (line 51) +* \textsterling: Text symbols. (line 55) * \textstyle: Math styles. (line 29) -* \textthreequartersemdash: Text symbols. (line 208) -* \texttrademark: Text symbols. (line 211) +* \textthreequartersemdash: Text symbols. (line 212) +* \texttrademark: Text symbols. (line 215) * \texttt: Font styles. (line 55) -* \texttwelveudash: Text symbols. (line 214) -* \textunderscore: Text symbols. (line 217) +* \texttwelveudash: Text symbols. (line 218) +* \textunderscore: Text symbols. (line 221) * \textup: Font styles. (line 43) -* \textvisiblespace: Text symbols. (line 220) +* \textvisiblespace: Text symbols. (line 224) * \textwidth: Page layout parameters. (line 99) * \textwidth <1>: Page layout parameters. @@ -18904,6 +19456,7 @@ Index * \TH (Þ): Additional Latin letters. (line 56) * \thanks{TEXT}: \maketitle. (line 56) +* \thepage: \thepage. (line 6) * \theta: Math symbols. (line 688) * \thicklines: \thicklines. (line 6) * \thickspace: Spacing in math mode. @@ -18944,10 +19497,8 @@ Index * \unboldmath <1>: \boldmath & \unboldmath. (line 14) * \underbar: Accents. (line 53) -* \underbrace{MATH}: Over- and Underlining. - (line 25) -* \underline{TEXT}: Over- and Underlining. - (line 9) +* \underbrace{MATH}: Over- or under math. (line 26) +* \underline{MATH}: Over- or under math. (line 9) * \unitlength: picture. (line 28) * \unlhd: Math symbols. (line 718) * \unrhd: Math symbols. (line 724) @@ -18964,7 +19515,7 @@ Index * \usecounter: \usecounter. (line 6) * \usefont: Low-level font commands. (line 126) -* \usepackage: Additional packages. (line 6) +* \usepackage: \usepackage. (line 6) * \UseTextAccent: \UseTextSymbol & \UseTextAccent. (line 6) * \UseTextSymbol: \UseTextSymbol & \UseTextAccent. @@ -18985,6 +19536,7 @@ Index * \vector: \vector. (line 6) * \vee: Math symbols. (line 798) * \verb: \verb. (line 6) +* \verb, as fragile command: \protect. (line 39) * \Vert: Math symbols. (line 802) * \vert: Math symbols. (line 806) * \vfill: \vfill. (line 6) @@ -19005,48 +19557,37 @@ Index * \write18: \write18. (line 6) * \write18, enabling: Command line options. (line 61) +* \XeTeXdefaultencoding: inputenc package. (line 36) +* \XeTeXinputencoding: inputenc package. (line 36) * \Xi: Math symbols. (line 822) * \xi: Math symbols. (line 825) * \xspace: xspace package. (line 6) * \year: \day & \month & \year. (line 6) * \zeta: Math symbols. (line 828) -* \[...\] display math: displaymath. (line 26) -* \\ (for center): center. (line 16) -* \\ (for eqnarray): eqnarray. (line 29) -* \\ (for flushleft): flushleft. (line 14) -* \\ (for flushright): flushright. (line 12) -* \\ (for letters): Letters. (line 48) -* \\ (for tabular): tabular. (line 36) -* \\ (for verse): verse. (line 21) -* \\ (for \author): \maketitle. (line 43) -* \\ (for \shortstack objects): \shortstack. (line 35) -* \\ (for \title): \maketitle. (line 64) -* \\ (force line break): \\. (line 6) -* \\ (tabbing): tabbing. (line 66) -* \\* (for eqnarray): eqnarray. (line 35) -* \^: Reserved characters. (line 18) -* \^ (circumflex accent): Accents. (line 40) -* \_: Reserved characters. (line 13) -* \` (grave accent): Accents. (line 44) -* \` (tabbing): tabbing. (line 93) -* \{: Reserved characters. (line 13) -* \|: Math symbols. (line 18) -* \}: Reserved characters. (line 13) -* \~: Reserved characters. (line 18) -* \~ (tilde accent): Accents. (line 48) +* & (for table cells): tabular. (line 32) +* & character, meaning of: Special characters. (line 26) +* # character, meaning of: Special characters. (line 36) +* % character, meaning of: Special characters. (line 19) +* ^ character, meaning of: Special characters. (line 30) * ^ superscript: Subscripts & superscripts. (line 6) * ^^J, in \write: \write. (line 94) -* _ subscript: Subscripts & superscripts. - (line 6) -* {...} (for required arguments): LaTeX command syntax. - (line 6) * ~: ~. (line 6) +* ~ character, meaning of: Special characters. (line 40) +* $ character, meaning of: Special characters. (line 23) +* $ inline math: math. (line 12) +* $$...$$ plain TeX display math: displaymath. (line 32) +* 10pt option: Document class options. + (line 17) +* 11pt option: Document class options. + (line 17) +* 12pt option: Document class options. + (line 17) * a4paper option: Document class options. - (line 19) + (line 22) * a5paper option: Document class options. - (line 19) + (line 22) * abstract environment: abstract. (line 6) * abstract package: abstract. (line 27) * abstracts: abstract. (line 6) @@ -19063,12 +19604,13 @@ Index * accents, defining <5>: \DeclareTextSymbolDefault. (line 6) * accents, mathematical: Math accents. (line 6) +* accessibility: \DocumentMetadata. (line 6) * accessing any character of a font: Symbols by font position. (line 6) * acronyms, list of: Glossaries. (line 6) * acute accent: Accents. (line 29) * acute accent, math: Math accents. (line 11) -* additional packages, loading: Additional packages. (line 6) +* additional packages, loading: \usepackage. (line 6) * adjustbox package: Boxes. (line 9) * ae ligature: Additional Latin letters. (line 16) @@ -19076,6 +19618,8 @@ Index * align environment, from amsmath: eqnarray. (line 6) * aligning equations: eqnarray. (line 6) * alignment via tabbing: tabbing. (line 6) +* alphabetic presentation forms Unicode block: Ligatures. (line 62) +* ampersand character, meaning of: Special characters. (line 26) * amscd package: Arrows. (line 41) * amsfonts package: Math formulas. (line 61) * amsfonts package <1>: Arrows. (line 6) @@ -19107,30 +19651,32 @@ Index * appendix: \appendix. (line 6) * appendix package: \appendix. (line 30) * arguments, optional, defining and using: \newcommand & \renewcommand. - (line 49) + (line 50) * aring: Additional Latin letters. (line 12) * array environment: array. (line 6) * array package: array. (line 74) * arrays, math: array. (line 6) -* arrow, left, in text: Text symbols. (line 165) -* arrow, right, in text: Text symbols. (line 206) +* arrow, left, in text: Text symbols. (line 169) +* arrow, right, in text: Text symbols. (line 210) * arrows: Arrows. (line 6) * article class: Document classes. (line 11) -* ascender height: Text symbols. (line 111) -* ASCII circumflex, in text: Text symbols. (line 69) -* ASCII tilde, in text: Text symbols. (line 72) -* asterisk, centered, in text: Text symbols. (line 75) +* ascender height: Text symbols. (line 115) +* ASCII circumflex, in text: Text symbols. (line 73) +* ASCII tilde, in text: Text symbols. (line 76) +* asterisk, centered, in text: Text symbols. (line 79) * Asymptote package: \line. (line 35) * Asymptote package <1>: \strut. (line 62) * Asymptote package <2>: \mbox & \makebox. (line 73) * Asymptote package <3>: \write18. (line 13) * at clause, in font definitions: \newfont. (line 19) * at-sign: \@. (line 6) +* atenddvi package: \AtBeginDvi & \AtEndDvi. + (line 16) * author, for titlepage: \maketitle. (line 43) * auxiliary file: Output files. (line 33) * b5paper option: Document class options. - (line 19) + (line 22) * babel package: \chapter. (line 71) * babel package <1>: thebibliography. (line 53) * babel package <2>: Accents. (line 6) @@ -19141,13 +19687,14 @@ Index * back matter of a book: \frontmatter & \mainmatter & \backmatter. (line 6) * background, colored: Colored pages. (line 6) -* backslash, in text: Text symbols. (line 78) +* backslash, in text: Text symbols. (line 82) +* backslash, meaning of: Special characters. (line 11) * badness: Page breaking. (line 11) -* bar, double vertical, in text: Text symbols. (line 89) -* bar, vertical, in text: Text symbols. (line 86) * bar-over accent: Accents. (line 36) * bar-over accent, math: Math accents. (line 14) * bar-under accent: Accents. (line 51) +* bar, double vertical, in text: Text symbols. (line 93) +* bar, vertical, in text: Text symbols. (line 90) * basics of LaTeX: Overview. (line 6) * batchmode: Command line options. (line 27) @@ -19155,21 +19702,21 @@ Index * beamer template and class: beamer template. (line 6) * beginning of document hook: \AtBeginDocument. (line 6) * bibliography format, open: Document class options. - (line 67) + (line 70) * bibliography, creating (automatically): Using BibTeX. (line 6) * bibliography, creating (manually): thebibliography. (line 6) * BibTeX error messages: BibTeX error messages. (line 6) * bibTeX, using: Using BibTeX. (line 6) -* big circle symbols, in text: Text symbols. (line 92) +* big circle symbols, in text: Text symbols. (line 96) * big point: Units of length. (line 20) * bigfoot package: Footnotes of footnotes. (line 6) * black boxes, omitting: Document class options. - (line 53) + (line 56) * blackboard bold: Blackboard bold. (line 6) * blanks, after control sequences: \newcommand & \renewcommand. - (line 87) + (line 88) * bm package: bm. (line 6) * bold font: Font styles. (line 76) * bold math: Font styles. (line 129) @@ -19196,9 +19743,10 @@ Index * box, use saved box: \usebox. (line 6) * boxes: Boxes. (line 6) * bp: Units of length. (line 19) -* brace, left, in text: Text symbols. (line 95) -* brace, right, in text: Text symbols. (line 99) +* brace, left, in text: Text symbols. (line 99) +* brace, right, in text: Text symbols. (line 103) * braces: Delimiters. (line 6) +* braces, meaning of: Special characters. (line 15) * brackets: Delimiters. (line 6) * breaking lines: Line breaking. (line 6) * breaking pages: Page breaking. (line 6) @@ -19208,13 +19756,14 @@ Index * bug reporting: About this document. (line 24) * bullet lists: itemize. (line 6) * bullet symbol: Math symbols. (line 108) -* bullet, in text: Text symbols. (line 103) +* bullet, in text: Text symbols. (line 107) * bulleted lists: itemize. (line 6) * calligraphic fonts: Calligraphic. (line 6) * calligraphic letters for math: Font styles. (line 79) -* cap height: Text symbols. (line 111) +* cap height: Text symbols. (line 115) * caption package: \caption. (line 72) * captions: \caption. (line 6) +* caret character, meaning of: Special characters. (line 30) * caron accent: Accents. (line 93) * catcode: \makeatletter & \makeatother. (line 18) @@ -19224,10 +19773,10 @@ Index * cc list, in letters: \cc. (line 6) * cedilla accent: Accents. (line 61) * center environment: center. (line 6) -* centered asterisk, in text: Text symbols. (line 75) +* centered asterisk, in text: Text symbols. (line 79) * centered equations: Document class options. - (line 57) -* centered period, in text: Text symbols. (line 178) + (line 60) +* centered period, in text: Text symbols. (line 182) * centering text, declaration for: \centering. (line 6) * centering text, environment for: center. (line 6) * centimeter: Units of length. (line 27) @@ -19238,7 +19787,7 @@ Index * chapter counter: Counters. (line 15) * character category code: \makeatletter & \makeatother. (line 18) -* character encoding: inputenc package. (line 15) +* character encoding: Input encodings. (line 6) * character, invisible: \phantom & \vphantom & \hphantom. (line 6) * character, invisible <1>: \mathstrut. (line 6) @@ -19247,43 +19796,46 @@ Index (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 93) * check accent, math: Math accents. (line 20) * cicero: Units of length. (line 33) -* circle symbol, big, in text: Text symbols. (line 92) -* circled letter, in text: Text symbols. (line 106) +* circle symbol, big, in text: Text symbols. (line 96) +* circled letter, in text: Text symbols. (line 110) * circumflex accent: Accents. (line 40) * circumflex accent, math: Math accents. (line 32) -* circumflex, ASCII, in text: Text symbols. (line 69) +* circumflex, ASCII, in text: Text symbols. (line 73) * 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 difference: Class and package creation. + (line 11) * class and package structure: Class and package structure. (line 6) * class file example: Class and package structure. - (line 39) + (line 31) * class file layout: Class and package structure. (line 6) +* Class Guide, document: Class and package structure. + (line 45) * 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) +* class options <2>: \DeclareOption. (line 6) +* class writing tutorial document: Class and package structure. + (line 45) * 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) +* cleveref package <2>: \footnotemark. (line 38) * CLI: Command line interface. (line 6) * clock option to slides class: Document class options. - (line 99) + (line 102) * closing letters: \closing. (line 6) -* closing quote: Text symbols. (line 59) +* closing quote: Text symbols. (line 63) +* clsguide document: Class and package structure. + (line 45) * cm: Units of length. (line 26) * cm-super package: fontenc package. (line 36) * cmd.exe, used by \write18: \write18. (line 60) @@ -19312,7 +19864,7 @@ Index * commands, defining new ones: \newcommand & \renewcommand. (line 6) * commands, defining new ones <1>: \providecommand. (line 6) -* commands, document class: Class and package construction. +* commands, document class: Class and package creation. (line 6) * commands, graphics package: Commands for graphics. (line 6) @@ -19323,16 +19875,19 @@ Index (line 6) * commands, run from LaTeX: \write18. (line 6) * commands, star-variants: \@ifstar. (line 6) -* composite word mark, in text: Text symbols. (line 111) +* composite word mark, in text: Text symbols. (line 115) * comprehensive package: Math symbols. (line 6) * computer programs, typesetting: verbatim. (line 6) * configuration, graphics package: Graphics package configuration. (line 6) +* conflict between package options: \PassOptionsToClass & \PassOptionsToPackage. + (line 15) * contents file: Output files. (line 43) * control sequences: Control sequences. (line 6) * control symbol, defined: Control sequences. (line 17) * control word, defined: Control sequences. (line 13) * copyright symbol: Text symbols. (line 15) +* Cork encoding: fontenc package. (line 57) * counters, a list of: Counters. (line 6) * counters, defining new: \newcounter. (line 6) * counters, getting value of: \value. (line 6) @@ -19340,7 +19895,8 @@ Index (line 6) * counters, setting: \setcounter. (line 6) * cprotect package: verbatim. (line 25) -* cprotect package <1>: \verb. (line 45) +* cprotect package <1>: \verb. (line 42) +* cprotect package <2>: \protect. (line 51) * creating pictures: picture. (line 6) * creating tables: table. (line 6) * credit footnote: \maketitle. (line 57) @@ -19349,17 +19905,20 @@ Index * cross referencing with page number: \pageref. (line 6) * cross referencing, across documents: xr package. (line 6) * cross referencing, symbolic: \ref. (line 6) +* cross-references, page numbers in: \thepage. (line 11) * CTAN: CTAN. (line 6) * curly braces: Delimiters. (line 6) -* currency, dollar: Text symbols. (line 124) -* currency, euro: Text symbols. (line 136) -* dagger, double, in text: Text symbols. (line 121) +* curly braces, meaning of: Special characters. (line 15) +* currency, dollar: Text symbols. (line 128) +* currency, euro: Text symbols. (line 140) +* dagger, double, in text: Text symbols. (line 125) * dagger, in text: Text symbols. (line 18) -* dagger, in text <1>: Text symbols. (line 118) +* dagger, in text <1>: Text symbols. (line 122) * DANTE e.V.: CTAN. (line 20) * datatool package: \read. (line 31) +* date of format, requiring: \NeedsTeXFormat. (line 6) * date, for titlepage: \maketitle. (line 51) -* date, today’s: \today. (line 6) +* date, today's: \today. (line 6) * datetime package: \today. (line 27) * dbltopnumber: Floats. (line 134) * dbltopnumber <1>: Floats. (line 135) @@ -19367,6 +19926,7 @@ Index * dd: Units of length. (line 29) * declaration form of font size commands: Font sizes. (line 24) * declaration form of font style commands: Font styles. (line 8) +* default option processing: \DeclareOption. (line 18) * define color: Define colors. (line 6) * defining a new command: \newcommand & \renewcommand. (line 6) @@ -19377,21 +19937,21 @@ Index * defining new theorems: \newtheorem. (line 6) * definitions: Definitions. (line 6) * delayed \write: \write. (line 65) -* delimiters: Delimiters. (line 6) -* delimiters, paired: \left & \right. (line 6) * delim_0: makeindex. (line 109) * delim_1: makeindex. (line 113) * delim_2: makeindex. (line 117) * delim_n: makeindex. (line 121) * delim_r: makeindex. (line 125) +* delimiters: Delimiters. (line 6) +* delimiters, paired: \left & \right. (line 6) * 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 25) -* difference between class and package: Class and package construction. - (line 15) +* difference between class and package: Class and package creation. + (line 11) * dimen plain TeX: Lengths. (line 9) * directory listings, from system: \write18. (line 65) * discretionary breaks, multiplication: \*. (line 6) @@ -19404,7 +19964,7 @@ Index (line 6) * displaymath environment: displaymath. (line 6) * displaymath environment <1>: Math formulas. (line 6) -* document class commands: Class and package construction. +* document class commands: Class and package creation. (line 6) * document class options: Document class options. (line 6) @@ -19413,7 +19973,9 @@ Index * document environment: document. (line 6) * document root name: Jobname. (line 6) * document templates: Document templates. (line 6) -* dollar sign: Text symbols. (line 124) +* documentmetadata-support-doc document: \DocumentMetadata. (line 16) +* dollar sign: Text symbols. (line 128) +* dollar sign character, meaning of: Special characters. (line 23) * dot accent: Accents. (line 32) * dot over accent, math: Math accents. (line 26) * dot-over accent: Accents. (line 32) @@ -19423,41 +19985,46 @@ Index * dotless j: Accents. (line 19) * dotless j, math: Math symbols. (line 275) * dots: Dots. (line 6) -* double angle quotation marks: Text symbols. (line 33) +* double angle quotation marks: Text symbols. (line 35) * double dagger, in text: Text symbols. (line 21) -* double dagger, in text <1>: Text symbols. (line 121) +* double dagger, in text <1>: Text symbols. (line 125) * double dot accent, math: Math accents. (line 23) -* double guillemets: Text symbols. (line 33) -* double left quote: Text symbols. (line 184) -* double low-9 quotation mark: Text symbols. (line 56) -* double quote, straight base: Text symbols. (line 200) -* double right quote: Text symbols. (line 187) +* double guillemets: Text symbols. (line 35) +* double left quote: Text symbols. (line 188) +* double low-9 quotation mark: Text symbols. (line 60) +* double quotation marks, as ligatures: Ligatures. (line 22) +* double quote, straight base: Text symbols. (line 204) +* double right quote: Text symbols. (line 191) * double spacing: \baselineskip & \baselinestretch. (line 6) -* double vertical bar, in text: Text symbols. (line 89) +* double vertical bar, in text: Text symbols. (line 93) * doublestruck: Blackboard bold. (line 6) * draft option: Document class options. - (line 49) -* dvilualatex-dev: TeX engines. (line 63) + (line 52) +* dvilualatex-dev: TeX engines. (line 70) * dvipdfmx command: Output files. (line 10) * dvips command: Output files. (line 10) * dvitype command: Output files. (line 10) -* e-dash: Text symbols. (line 133) +* e-dash: Text symbols. (line 137) * e-TeX: TeX engines. (line 16) +* e-TeX, and robust commands: \DeclareRobustCommand. + (line 32) * ellipses: Dots. (line 6) -* ellipsis: Text symbols. (line 39) +* ellipsis: Text symbols. (line 43) * ellipsis, in Unicode (U+2026): Dots. (line 66) * ellipsis, traditional (three periods): Dots. (line 66) -* em: Units of length. (line 46) -* em <1>: Units of length. (line 45) -* em-dash: Text symbols. (line 127) -* em-dash, three-quarters: Text symbols. (line 209) -* em-dash, two-thirds: Text symbols. (line 215) +* em: Units of length. (line 45) +* em <1>: Units of length. (line 46) +* em-dash: Text symbols. (line 131) +* em-dash, as ligature: Ligatures. (line 22) +* em-dash, three-quarters: Text symbols. (line 213) +* em-dash, two-thirds: Text symbols. (line 219) * emphasis: Font styles. (line 60) +* en-dash, as ligature: Ligatures. (line 22) * enclosure list: \encl. (line 6) * encoding, font: \DeclareFontEncoding. (line 6) -* encoding, of input files: inputenc package. (line 15) +* encodings, input: Input encodings. (line 6) * end matter of a book: \frontmatter & \mainmatter & \backmatter. (line 6) * end of document hook: \AtEndDocument. (line 6) @@ -19469,7 +20036,7 @@ Index * enumii counter: Counters. (line 15) * enumiii counter: Counters. (line 15) * enumitem package: itemize. (line 66) -* enumitem package <1>: list. (line 255) +* enumitem package <1>: list. (line 273) * enumiv counter: Counters. (line 15) * environment: Starting and ending. (line 25) * environment form of font size commands: Font sizes. (line 47) @@ -19521,33 +20088,36 @@ Index * equation environment <1>: Math formulas. (line 6) * equation number, cross referencing: \ref. (line 6) * equation numbers, left vs. right: Document class options. - (line 63) + (line 66) * equation numbers, omitting: eqnarray. (line 39) * equations, aligning: eqnarray. (line 6) * equations, environment for: equation. (line 6) * equations, flush left vs. centered: Document class options. - (line 57) + (line 60) * error messages, from BibTeX: BibTeX error messages. (line 6) * errorstopmode: Command line options. (line 27) * es-zet German letter: Additional Latin letters. (line 52) +* escaping special characters: Printing special characters. + (line 6) * etex command: TeX engines. (line 16) * eth, Icelandic letter: Additional Latin letters. (line 20) -* etoolbox package: Class and package commands. - (line 110) -* euro symbol: Text symbols. (line 136) -* eurosym package: Text symbols. (line 136) -* eurosym package <1>: Text symbols. (line 137) -* ex: Units of length. (line 42) -* ex <1>: Units of length. (line 41) -* exclamation point, upside-down: Text symbols. (line 144) +* etoolbox package: \DeclareRobustCommand. + (line 32) +* euro symbol: Text symbols. (line 140) +* eurosym package: Text symbols. (line 140) +* eurosym package <1>: Text symbols. (line 141) +* ex: Units of length. (line 41) +* ex <1>: Units of length. (line 42) +* exclamation point, upside-down: Text symbols. (line 148) +* exclamation points, ending a sentence: \@. (line 39) * executivepaper option: Document class options. - (line 19) + (line 22) * expl3 package: LaTeX command syntax. - (line 35) + (line 36) * expl3 package <1>: Upper and lower case. (line 48) * exponent: Subscripts & superscripts. @@ -19557,6 +20127,7 @@ Index (line 6) * external commands: \write18. (line 6) * external files, writing: filecontents. (line 6) +* f-ligatures: Ligatures. (line 22) * fallback jobname: Jobname. (line 27) * families, of fonts: Low-level font commands. (line 21) @@ -19564,9 +20135,9 @@ Index * fancyhdr package <1>: \pagestyle. (line 13) * fancyvrb package: tabbing. (line 146) * fancyvrb package <1>: verbatim. (line 41) -* feminine ordinal symbol: Text symbols. (line 175) +* feminine ordinal symbol: Text symbols. (line 179) * figure counter: Counters. (line 15) -* figure dash character: Text symbols. (line 147) +* figure dash character: Text symbols. (line 151) * figure environment: figure. (line 6) * figure number, cross referencing: \ref. (line 6) * figures, footnotes in: minipage. (line 107) @@ -19581,16 +20152,16 @@ Index * filename for current job: Command line options. (line 43) * final option: Document class options. - (line 49) -* first-latex-doc document: About this document. (line 36) + (line 52) +* first-latex-doc document: About this document. (line 37) * fixed-width font: Font styles. (line 97) * flafter package: Floats. (line 82) * fleqn option: Document class options. - (line 49) + (line 52) * float package: Floats. (line 52) * float page: Floats. (line 58) * flush left equations: Document class options. - (line 57) + (line 60) * flushing floats and starting a page: \clearpage & \cleardoublepage. (line 6) * flushleft environment: flushleft. (line 6) @@ -19621,7 +20192,7 @@ Index (line 6) * footnote counter: Counters. (line 15) * footnote number, cross referencing: \ref. (line 6) -* footnote parameters: \footnote. (line 34) +* footnote parameters: \footnote. (line 35) * footnote, in a table: Footnotes in a table. (line 6) * footnote, in section headings: Footnotes in section headings. @@ -19630,10 +20201,11 @@ Index (line 6) * footnotes in figures: minipage. (line 107) * footnotes, creating: Footnotes. (line 6) -* footnotes, in a minipage: \footnote. (line 62) -* footnotes, symbols instead of numbers: \footnote. (line 24) +* footnotes, in a minipage: \footnote. (line 67) +* footnotes, symbols instead of numbers: \footnote. (line 25) * force option for filecontents: filecontents. (line 31) * format files, TeX: TeX engines. (line 6) +* format, requiring: \NeedsTeXFormat. (line 6) * formulas, environment for: equation. (line 6) * formulas, math: Math formulas. (line 6) * forward reference: Cross references. (line 27) @@ -19643,17 +20215,16 @@ Index * frame rule width: \fbox & \framebox. (line 38) * frame, line width: \fbox & \framebox. (line 38) * frame, separation from contents: \fbox & \framebox. (line 43) -* French quotation marks: Text symbols. (line 33) +* French quotation marks: Text symbols. (line 35) * front matter of a book: \frontmatter & \mainmatter & \backmatter. (line 6) * functions, math: Math functions. (line 6) * geometry package: Document class options. - (line 40) -* geometry package <1>: Document class options. - (line 44) + (line 43) * global options: Document class options. (line 6) -* global options <1>: Additional packages. (line 15) +* global options <1>: \usepackage. (line 25) +* global options <2>: \ProcessOptions. (line 15) * glossaries: Glossaries. (line 6) * glossary: Glossaries. (line 6) * glossary, entries: \newglossaryentry. (line 6) @@ -19680,25 +20251,32 @@ Index * graphpap package: \graphpaper. (line 11) * grave accent: Accents. (line 44) * grave accent, math: Math accents. (line 29) -* greater than symbol, in text: Text symbols. (line 154) +* greater than symbol, in text: Text symbols. (line 158) * greek letters: Math symbols. (line 6) * Greek letters: Greek letters. (line 6) * grfext package: \DeclareGraphicsExtensions. (line 39) -* group, and environments: Environments. (line 18) * group_skip: makeindex. (line 58) +* group, and environments: Environments. (line 18) +* guillemots, birds: Text symbols. (line 35) * hacek accent: Accents. (line 93) +* háček accent, math: Math accents. (line 20) * Halmos symbol: \rule. (line 13) * hard space: ~. (line 6) +* hash character (#), meaning of: Special characters. (line 36) * hat accent: Accents. (line 40) * hat accent, math: Math accents. (line 32) +* hat character, meaning of: Special characters. (line 30) * 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) +* hilatex: TeX engines. (line 55) +* HINT format: TeX engines. (line 56) +* HiTeX: TeX engines. (line 56) * home page for manual: About this document. (line 6) -* horizontal bar character: Text symbols. (line 157) +* horizontal bar character: Text symbols. (line 161) * horizontal paragraph indentation: \parindent & \parskip. (line 6) * horizontal space: \hss. (line 6) @@ -19706,17 +20284,16 @@ Index * horizontal spacing: \phantom & \vphantom & \hphantom. (line 6) * hungarian umlaut accent: Accents. (line 69) -* hyperref package: \footnotemark. (line 48) -* hyperref package <1>: \footnotemark. (line 57) -* hyperref package <2>: \pagenumbering. (line 46) +* hyperref package: \footnotemark. (line 38) +* hyperref package <1>: \footnotemark. (line 47) +* hyperref package <2>: \pagenumbering. (line 42) * hyperref package <3>: \contentsline. (line 37) * hyperref package <4>: Command line input. (line 14) -* hyphen character, non-breaking: Text symbols. (line 168) +* hyphen character, non-breaking: Text symbols. (line 172) * hyphenation, defining: \hyphenation. (line 6) * hyphenation, discretionary: \discretionary. (line 6) * hyphenation, forcing: \- (hyphenation). (line 6) * hyphenation, preventing: \mbox & \makebox. (line 6) -* háček accent, math: Math accents. (line 20) * Icelandic eth: Additional Latin letters. (line 20) * Icelandic thorn: Additional Latin letters. @@ -19730,6 +20307,8 @@ Index * in: Units of length. (line 16) * inch: Units of length. (line 17) * including graphics: \includegraphics. (line 6) +* indent_length: makeindex. (line 137) +* indent_space: makeindex. (line 133) * indent, forcing: \indent & \noindent. (line 6) * indentation of paragraphs, in minipage: minipage. (line 103) * indentfirst package: \part. (line 50) @@ -19739,10 +20318,8 @@ Index * indentfirst package <4>: \subsubsection & \paragraph & \subparagraph. (line 59) * indentfirst package <5>: \indent & \noindent. (line 48) -* indent_length: makeindex. (line 137) -* indent_space: makeindex. (line 133) +* index entries, 'see' and 'see also': \index. (line 58) * index entries, subentries: \index. (line 26) -* index entries, ‘see’ and ‘see also’: \index. (line 58) * index entry: \index. (line 6) * index package: \index. (line 103) * index, multiple: Indexes. (line 51) @@ -19757,6 +20334,7 @@ Index * infinite vertical stretch: \vfill. (line 6) * inline formulas: math. (line 6) * inner paragraph mode: Modes. (line 51) +* input encodings: Input encodings. (line 6) * input file: Splitting the input. (line 6) * input, on command line: Command line input. (line 6) * input/output: Input/output. (line 6) @@ -19769,12 +20347,13 @@ Index * interline space: \baselineskip & \baselinestretch. (line 6) * internal vertical mode: Modes. (line 41) +* inverted exclamation mark, as ligature: Ligatures. (line 22) +* inverted question mark, as ligature: Ligatures. (line 22) * invisible character: \phantom & \vphantom & \hphantom. (line 6) * invisible character <1>: \mathstrut. (line 6) * italic correction: \/. (line 6) * italic font: Font styles. (line 82) -* itemize environment: itemize. (line 6) * item_0: makeindex. (line 82) * item_01: makeindex. (line 91) * item_1: makeindex. (line 85) @@ -19782,6 +20361,7 @@ Index * item_2: makeindex. (line 88) * item_x1: makeindex. (line 95) * item_x2: makeindex. (line 104) +* itemize environment: itemize. (line 6) * jobname: Command line options. (line 43) * jobname <1>: Jobname. (line 6) @@ -19795,9 +20375,9 @@ Index * Lamport TeX: Overview. (line 27) * Lamport, Leslie: Overview. (line 6) * landscape option: Document class options. - (line 49) + (line 52) * landscape orientation: Document class options. - (line 60) + (line 63) * latex: TeX engines. (line 14) * latex command: Output files. (line 10) * LaTeX format (.fmt) files: TeX engines. (line 6) @@ -19805,11 +20385,12 @@ Index * LaTeX overview: Overview. (line 6) * LaTeX Project team: About this document. (line 20) * LaTeX vs. LaTeX2e: About this document. (line 16) -* latex-dev: TeX engines. (line 64) -* latex-doc-ptr document: About this document. (line 33) +* latex-dev: TeX engines. (line 71) +* latex-doc-ptr document: About this document. (line 34) +* latex-lab package: \DocumentMetadata. (line 16) * LaTeX2e logo: Text symbols. (line 27) * LaTeX3 syntax: LaTeX command syntax. - (line 35) + (line 36) * <latexrefman@tug.org> email address: About this document. (line 20) * latexsym package: Arrows. (line 6) * Latin letters, additional: Additional Latin letters. @@ -19820,39 +20401,41 @@ Index * leaders, dots in table of contents: \@dottedtocline. (line 27) * leading: \baselineskip & \baselinestretch. (line 6) -* left angle quotation marks: Text symbols. (line 33) -* left arrow, in text: Text symbols. (line 165) -* left brace, in text: Text symbols. (line 95) -* left quote: Text symbols. (line 44) -* left quote, double: Text symbols. (line 184) -* left quote, single: Text symbols. (line 190) +* left angle quotation marks: Text symbols. (line 35) +* left arrow, in text: Text symbols. (line 169) +* left brace, in text: Text symbols. (line 99) +* left brace, meaning of: Special characters. (line 15) +* left quote: Text symbols. (line 48) +* left quote, double: Text symbols. (line 188) +* left quote, single: Text symbols. (line 194) * left-hand equation numbers: Document class options. - (line 63) + (line 66) * left-justifying text: \raggedright. (line 6) * left-justifying text, environment for: flushleft. (line 6) * left-to-right mode: Modes. (line 18) * legalpaper option: Document class options. - (line 19) + (line 22) * 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 162) + (line 52) +* less than symbol, in text: Text symbols. (line 166) * lethead_flag: makeindex. (line 65) * lethead_prefix: makeindex. (line 74) * lethead_suffix: makeindex. (line 78) * letter class: Document classes. (line 11) * letter environment: letter. (line 6) * letterpaper option: Document class options. - (line 19) + (line 22) * 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) +* ligatures: Ligatures. (line 6) * line break, forcing: \\. (line 6) * line breaking: Line breaking. (line 6) * line breaks, changing: \fussy & \sloppy. (line 6) @@ -19861,8 +20444,8 @@ Index * line breaks, multiplication discretionary: \*. (line 6) * line breaks, preventing: \linebreak & \nolinebreak. (line 6) -* lines in tables: tabular. (line 6) * line_max: makeindex. (line 129) +* lines in tables: tabular. (line 6) * lining numerals: Font styles. (line 133) * lining text up in tables: tabular. (line 6) * lining text up using tab stops: tabbing. (line 6) @@ -19872,21 +20455,20 @@ Index * list of tables file: Output files. (line 43) * listings package: tabbing. (line 146) * listings package <1>: verbatim. (line 35) -* 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) * lmodern package: fontenc package. (line 36) -* loading additional packages: Additional packages. (line 6) +* loading additional packages: \usepackage. (line 6) +* local options: \ProcessOptions. (line 15) * locale information, from system: \write18. (line 65) * log file: Output files. (line 28) * log file, writing to: \write. (line 30) * logo, LaTeX: Text symbols. (line 24) * logo, LaTeX2e: Text symbols. (line 27) -* logo, TeX: Text symbols. (line 66) -* long command: Class and package commands. - (line 23) -* low-9 quotation marks, single and double: Text symbols. (line 56) +* logo, TeX: Text symbols. (line 70) +* long command: \CheckCommand. (line 6) +* low-9 quotation marks, single and double: Text symbols. (line 60) * low-level font commands: Low-level font commands. (line 6) * lowercase: Upper and lower case. @@ -19894,10 +20476,11 @@ Index * LR box: picture. (line 93) * LR mode: Modes. (line 18) * lrbox: lrbox. (line 6) -* lshort document: About this document. (line 39) -* lualatex: TeX engines. (line 32) -* lualatex-dev: TeX engines. (line 65) -* LuaTeX: TeX engines. (line 33) +* lshort document: About this document. (line 40) +* luainputenc package: inputenc package. (line 36) +* lualatex: TeX engines. (line 33) +* lualatex-dev: TeX engines. (line 72) +* LuaTeX: TeX engines. (line 34) * LuaTeX, 256 output streams in: \write. (line 42) * m-width: Units of length. (line 46) * macron accent: Accents. (line 36) @@ -19916,7 +20499,7 @@ Index * 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 175) +* masculine ordinal symbol: Text symbols. (line 179) * matching brackets: \left & \right. (line 6) * matching parentheses: \left & \right. (line 6) * math accents: Math accents. (line 6) @@ -19942,11 +20525,12 @@ Index * mathtools package: Math formulas. (line 61) * mathtools package <1>: Delimiters. (line 41) * mathtools package <2>: \left & \right. (line 30) -* mathtools package <3>: Over- and Underlining. - (line 44) +* mathtools package <3>: Over- or under math. (line 51) * mathtools package <4>: \smash. (line 60) * mathtools package <5>: \phantom & \vphantom & \hphantom. (line 48) +* meaning of special characters: Special characters. (line 6) +* metadata, adding: \DocumentMetadata. (line 6) * MetaPost package: \line. (line 35) * mfirstuc package: Upper and lower case. (line 45) @@ -19957,13 +20541,13 @@ Index * minipage, creating a: minipage. (line 6) * minted package: tabbing. (line 146) * minted package <1>: verbatim. (line 35) -* minted package <2>: \verb. (line 42) * mirrors of CTAN: CTAN. (line 25) * mm: Units of length. (line 23) +* mobile output: TeX engines. (line 56) * modes: Modes. (line 6) * monospace font: Font styles. (line 97) -* moving arguments: \protect. (line 19) -* mpfootnote counter: \footnote. (line 62) +* moving arguments: \protect. (line 16) +* mpfootnote counter: \footnote. (line 67) * mpfootnote counter <1>: Counters. (line 15) * mu: Units of length. (line 52) * mu, math unit: Units of length. (line 53) @@ -19977,12 +20561,11 @@ Index * NBSP: ~. (line 6) * nested \include, not allowed: \include & \includeonly. (line 106) -* new class commands: Class and package construction. +* new class commands: Class and package creation. + (line 6) +* new command, checking definition of: \CheckCommand. (line 6) +* new command, definition: \DeclareRobustCommand. (line 6) -* new command, checking: 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) @@ -19992,17 +20575,20 @@ Index * new line, starting (paragraph mode): \newline. (line 6) * new page, starting: \newpage. (line 6) * newline, in \write: \write. (line 94) +* no-break space, Unicode U+00A0: ~. (line 10) * noheader option for filecontents: filecontents. (line 34) -* non-breaking hyphen character: Text symbols. (line 168) +* non-breaking hyphen character: Text symbols. (line 172) * non-English characters: Additional Latin letters. (line 6) +* non-sentence-ending punctuation: \@. (line 6) * nonstopmode: Command line options. (line 27) * nosearch option for filecontents: filecontents. (line 37) * notes in the margin: Marginal notes. (line 6) * notitlepage option: Document class options. - (line 49) + (line 52) * null delimiter: \left & \right. (line 6) +* number sign character (#), meaning of: Special characters. (line 36) * numbered items, specifying counter: \usecounter. (line 6) * numerals, old-style: Font styles. (line 133) * oblique font: Font styles. (line 94) @@ -20012,23 +20598,26 @@ Index * old-style numerals: Font styles. (line 133) * one-column output: \onecolumn. (line 6) * onecolumn option: Document class options. - (line 78) + (line 81) * oneside option: Document class options. - (line 78) + (line 81) * open a file: \openin & \openout. (line 6) * openany option: Document class options. - (line 78) + (line 81) * openbib option: Document class options. - (line 49) -* opening quote: Text symbols. (line 44) + (line 52) +* opening quote: Text symbols. (line 48) * openright option: Document class options. - (line 78) + (line 81) * OpenType fonts: TeX engines. (line 6) * operating system information: \write18. (line 65) +* option clash: \PassOptionsToClass & \PassOptionsToPackage. + (line 15) +* option processing by default: \DeclareOption. (line 18) +* option, currently being processed: \CurrentOption. (line 6) * optional arguments, defining and using: \newcommand & \renewcommand. - (line 49) -* options, class: Class and package commands. - (line 66) + (line 50) +* options, class: \DeclareOption. (line 6) * options, color package: Color package options. (line 6) * options, command line: Command line options. @@ -20037,32 +20626,35 @@ Index (line 6) * options, document class <1>: Class and package structure. (line 6) -* options, global: Additional packages. (line 15) +* options, global: \usepackage. (line 25) +* options, global and local: \ProcessOptions. (line 15) * options, graphics package: Graphics package options. (line 6) +* options, list of unused: \OptionNotUsed. (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 175) +* options, package <1>: \DeclareOption. (line 6) +* options, processing: \ProcessOptions. (line 6) +* ordinals, feminine and masculine: Text symbols. (line 179) * oslash: Additional Latin letters. (line 44) * OT1: fontenc package. (line 6) +* OT1 encoding: fontenc package. (line 50) * outer paragraph mode: Modes. (line 51) * output directory for all external files: Command line options. (line 48) * overbar accent: Accents. (line 36) * overdot accent, math: Math accents. (line 26) -* overlining: Over- and Underlining. - (line 6) +* overlining: Over- or under math. (line 6) * overview of LaTeX: Overview. (line 6) * overwrite option for filecontents: filecontents. (line 31) +* package and class commands: Class and package commands. + (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 options <1>: \DeclareOption. (line 6) * package, abstract: abstract. (line 27) * package, adjustbox: Boxes. (line 9) * package, algorithm2e: tabbing. (line 146) @@ -20098,6 +20690,8 @@ Index * package, Asymptote <1>: \strut. (line 62) * package, Asymptote <2>: \mbox & \makebox. (line 73) * package, Asymptote <3>: \write18. (line 13) +* package, atenddvi: \AtBeginDvi & \AtEndDvi. + (line 16) * package, babel: \chapter. (line 71) * package, babel <1>: thebibliography. (line 53) * package, babel <2>: Accents. (line 6) @@ -20112,23 +20706,24 @@ Index * package, caption: \caption. (line 72) * package, cleveref: Cross references. (line 38) * package, cleveref <1>: \ref. (line 29) -* package, cleveref <2>: \footnotemark. (line 48) +* package, cleveref <2>: \footnotemark. (line 38) * package, cm-super: fontenc package. (line 36) * package, comprehensive: Math symbols. (line 6) * package, cprotect: verbatim. (line 25) -* package, cprotect <1>: \verb. (line 45) +* package, cprotect <1>: \verb. (line 42) +* package, cprotect <2>: \protect. (line 51) * package, datatool: \read. (line 31) * package, datetime: \today. (line 27) * package, dcolumn: array. (line 74) * package, enumitem: itemize. (line 66) -* package, enumitem <1>: list. (line 255) +* package, enumitem <1>: list. (line 273) * package, envlab: \makelabels. (line 55) -* package, etoolbox: Class and package commands. - (line 110) -* package, eurosym: Text symbols. (line 136) -* package, eurosym <1>: Text symbols. (line 137) +* package, etoolbox: \DeclareRobustCommand. + (line 32) +* package, eurosym: Text symbols. (line 140) +* package, eurosym <1>: Text symbols. (line 141) * package, expl3: LaTeX command syntax. - (line 35) + (line 36) * package, expl3 <1>: Upper and lower case. (line 48) * package, fancyhdr: Page styles. (line 12) @@ -20140,15 +20735,13 @@ Index * package, fontspec: fontenc package. (line 17) * package, fontspec <1>: OpenType bold math. (line 6) * package, geometry: Document class options. - (line 40) -* package, geometry <1>: Document class options. - (line 44) + (line 43) * package, graphpap: \graphpaper. (line 11) * package, grfext: \DeclareGraphicsExtensions. (line 39) -* package, hyperref: \footnotemark. (line 48) -* package, hyperref <1>: \footnotemark. (line 57) -* package, hyperref <2>: \pagenumbering. (line 46) +* package, hyperref: \footnotemark. (line 38) +* package, hyperref <1>: \footnotemark. (line 47) +* package, hyperref <2>: \pagenumbering. (line 42) * package, hyperref <3>: \contentsline. (line 37) * package, hyperref <4>: Command line input. (line 14) * package, indentfirst: \part. (line 50) @@ -20159,19 +20752,19 @@ Index (line 59) * package, indentfirst <5>: \indent & \noindent. (line 48) * package, index: \index. (line 103) +* package, latex-lab: \DocumentMetadata. (line 16) * package, latexsym: Arrows. (line 6) * package, listings: tabbing. (line 146) * package, listings <1>: verbatim. (line 35) -* package, listings <2>: \verb. (line 42) * package, lmodern: fontenc package. (line 36) +* package, luainputenc: inputenc package. (line 36) * package, macros2e: \makeatletter & \makeatother. (line 38) * package, makeidx: \printindex. (line 12) * package, mathtools: Math formulas. (line 61) * package, mathtools <1>: Delimiters. (line 41) * package, mathtools <2>: \left & \right. (line 30) -* package, mathtools <3>: Over- and Underlining. - (line 44) +* package, mathtools <3>: Over- or under math. (line 51) * package, mathtools <4>: \smash. (line 60) * package, mathtools <5>: \phantom & \vphantom & \hphantom. (line 48) @@ -20182,7 +20775,6 @@ Index (line 62) * package, minted: tabbing. (line 146) * package, minted <1>: verbatim. (line 35) -* package, minted <2>: \verb. (line 42) * package, multind: Indexes. (line 51) * package, pict2e: \line. (line 35) * package, polyglossia: Accents. (line 6) @@ -20196,7 +20788,7 @@ Index * package, shellesc: \write18. (line 71) * package, showidx: Indexes. (line 51) * package, siunitx: minipage. (line 137) -* package, siunitx <1>: ~. (line 42) +* package, siunitx <1>: ~. (line 44) * package, suffix: \@ifstar. (line 64) * package, tablefootnote: Footnotes in a table. (line 53) @@ -20220,21 +20812,20 @@ Index * package, tocloft: Table of contents etc.. (line 110) * package, tocloft <1>: \contentsline. (line 34) -* package, ulem: Over- and Underlining. - (line 15) +* package, ulem: Over- or under math. (line 17) * package, unicode-math: OpenType bold math. (line 20) * package, unicode-math <1>: Dots. (line 59) * package, unicode-math <2>: Greek letters. (line 37) * package, url: \verb. (line 39) * package, verbatimbox: verbatim. (line 41) * package, xparse: LaTeX command syntax. - (line 35) + (line 36) * package, xparse <1>: \@ifstar. (line 64) * package, xr: xr package. (line 6) * package, xr-hyper: xr package. (line 6) * package, xspace: xspace package. (line 6) * package, xstring: Jobname. (line 53) -* packages, loading additional: Additional packages. (line 6) +* packages, loading additional: \usepackage. (line 6) * page break, forcing: \pagebreak & \nopagebreak. (line 6) * page break, preventing: \pagebreak & \nopagebreak. @@ -20243,12 +20834,13 @@ Index * page counter: Counters. (line 15) * page layout parameters: Page layout parameters. (line 6) +* page number representation: \thepage. (line 11) * 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 142) +* page, colored: Colored pages. (line 6) * paired delimiters: \left & \right. (line 6) * paragraph: Sectioning. (line 6) * paragraph <1>: \subsubsection & \paragraph & \subparagraph. @@ -20262,40 +20854,43 @@ Index (line 6) * paragraph mode: Modes. (line 12) * paragraph mode <1>: \parbox. (line 6) -* paragraph symbol: Text symbols. (line 48) +* paragraph symbol: Text symbols. (line 52) * paragraph, ending: \par. (line 6) * paragraph, in a box: \parbox. (line 6) * paragraphs: Making paragraphs. (line 6) -* parameters, for footnotes: \footnote. (line 34) +* parameters, for footnotes: \footnote. (line 35) * parameters, page layout: Page layout parameters. (line 6) * parameters, substituting: \newcommand & \renewcommand. - (line 81) + (line 82) * parent directories, cannot write to: \write and security. (line 22) * parentheses: Delimiters. (line 6) +* parentheses and ends of sentences: \@. (line 24) * part: Sectioning. (line 6) * part <1>: \part. (line 6) * part counter: Counters. (line 15) * pattern, current tab stops, tabbing: tabbing. (line 51) * pc: Units of length. (line 13) * PDF graphic files: \includegraphics. (line 6) +* PDF, tagged: \DocumentMetadata. (line 6) * pdflatex: TeX engines. (line 15) * pdflatex command: Output files. (line 20) -* pdflatex-dev: TeX engines. (line 66) +* pdflatex-dev: TeX engines. (line 73) * pdfTeX: Output files. (line 20) * pdfTeX engine: TeX engines. (line 16) +* percent character, meaning of: Special characters. (line 19) * period, abbreviation-ending: \@. (line 6) -* period, centered, in text: Text symbols. (line 178) +* period, centered, in text: Text symbols. (line 182) * period, sentence-ending: \@. (line 6) * period, spacing after: \@. (line 6) * pica: Units of length. (line 14) * pict2e package: \line. (line 35) * picture environment: picture. (line 6) * pictures, creating: picture. (line 6) -* pilcrow: Text symbols. (line 48) +* pilcrow: Text symbols. (line 52) * placement of floats: Floats. (line 31) -* platex: TeX engines. (line 54) -* platex-dev: TeX engines. (line 67) +* platex: TeX engines. (line 61) +* platex-dev: TeX engines. (line 74) * plural: \newglossaryentry. (line 51) * PNG files: \includegraphics. (line 6) * poetry, an environment for: verse. (line 6) @@ -20308,32 +20903,39 @@ Index (line 123) * polyglossia package <3>: \index. (line 58) * portrait orientation: Document class options. - (line 60) + (line 63) * position, in picture: picture. (line 64) * postamble: makeindex. (line 54) * PostScript point: Units of length. (line 20) * postscript, in letters: \ps. (line 6) -* pounds symbol: Text symbols. (line 52) +* pounds symbol: Text symbols. (line 56) * preamble: makeindex. (line 50) * preamble, defined: Starting and ending. (line 22) -* prerelease testing: TeX engines. (line 70) +* prerelease testing: TeX engines. (line 77) +* printing special characters: Printing special characters. + (line 6) +* processing options: \ProcessOptions. (line 6) * prompt, *: Recovering from errors. (line 23) * pronunciation: Overview. (line 27) * PSTricks package: \line. (line 35) * pt: Units of length. (line 9) +* punctuation, sentence-ending: \@. (line 6) * quad: Spacing in math mode. (line 69) -* question mark, upside-down: Text symbols. (line 181) +* question mark, upside-down: Text symbols. (line 185) +* question marks, ending a sentence: \@. (line 39) * quotation environment: quotation & quote. (line 6) -* quotation marks, French: Text symbols. (line 33) +* quotation marks, as ligatures: Ligatures. (line 22) +* quotation marks, French: Text symbols. (line 35) * quote environment: quotation & quote. (line 6) -* quote, single straight: Text symbols. (line 196) -* quote, straight base: Text symbols. (line 200) +* quote, single straight: Text symbols. (line 200) +* quote, straight base: Text symbols. (line 204) * quoted text with paragraph indentation, displaying: quotation & quote. (line 6) * quoted text without paragraph indentation, displaying: quotation & quote. (line 6) +* quotes and ends of sentences: \@. (line 24) * radical: \sqrt. (line 6) * ragged left text: \raggedleft. (line 6) * ragged left text, environment for: flushright. (line 6) @@ -20346,29 +20948,35 @@ Index (line 6) * reference, forward: Cross references. (line 27) * references, resolving forward: Output files. (line 33) -* registered symbol: Text symbols. (line 203) +* registered symbol: Text symbols. (line 207) * relation, text above: \stackrel. (line 6) -* release candidates: TeX engines. (line 70) +* release candidates: TeX engines. (line 77) * remarks in the margin: Marginal notes. (line 6) * report class: Document classes. (line 11) * reporting bugs: About this document. (line 24) -* reserved characters: Reserved characters. (line 6) +* reserved characters, meaning of: Special characters. (line 6) +* reserved characters, printing: Printing special characters. + (line 6) * resizing: \scalebox. (line 6) * resizing <1>: \resizebox. (line 6) * restricted shell access: \write18. (line 53) -* right angle quotation marks: Text symbols. (line 33) -* right arrow, in text: Text symbols. (line 206) -* right brace, in text: Text symbols. (line 99) -* right quote: Text symbols. (line 59) -* right quote, double: Text symbols. (line 187) -* right quote, single: Text symbols. (line 193) +* right angle quotation marks: Text symbols. (line 35) +* right arrow, in text: Text symbols. (line 210) +* right brace, in text: Text symbols. (line 103) +* right brace, meaning of: Special characters. (line 15) +* right parentheses/quotes, and spacing: \@. (line 24) +* right quote: Text symbols. (line 63) +* right quote, double: Text symbols. (line 191) +* right quote, single: Text symbols. (line 197) * right-hand equation numbers: Document class options. - (line 63) + (line 66) * right-justifying text: \raggedleft. (line 6) * right-justifying text, environment for: flushright. (line 6) * rigid lengths: Lengths. (line 9) * ring accent: Accents. (line 77) * ring accent, math: Math accents. (line 35) +* robust command, defining: \DeclareRobustCommand. + (line 6) * robust commands: \protect. (line 6) * roman font: Font styles. (line 85) * root file: Splitting the input. (line 10) @@ -20402,13 +21010,14 @@ Index * section counter: Counters. (line 15) * section number, cross referencing: \ref. (line 6) * section numbers, printing: Sectioning. (line 71) -* section symbol: Text symbols. (line 63) +* section symbol: Text symbols. (line 67) * section, redefining: \@startsection. (line 6) * sectioning commands: Sectioning. (line 6) * sectioning, part: \part. (line 6) * security and \write: \write and security. (line 6) * see and see also index entries: \index. (line 58) * self-contained sources: filecontents. (line 42) +* sentence-ending punctuation: \@. (line 6) * series, of fonts: Low-level font commands. (line 48) * setspace package: \baselineskip & \baselinestretch. @@ -20417,6 +21026,7 @@ Index * sh, used by \write18: \write18. (line 60) * shapes, of fonts: Low-level font commands. (line 88) +* sharp character (#), meaning of: Special characters. (line 36) * sharp S letters: Additional Latin letters. (line 52) * shell access: \write18. (line 6) @@ -20426,18 +21036,19 @@ Index * shellesc package: \write18. (line 71) * showidx package: Indexes. (line 51) * simulating typed text: verbatim. (line 6) -* single angle quotation marks: Text symbols. (line 33) -* single guillemets: Text symbols. (line 33) -* single left quote: Text symbols. (line 190) -* single low-9 quotation mark: Text symbols. (line 56) -* single quote, straight: Text symbols. (line 196) -* single right quote: Text symbols. (line 193) +* single angle quotation marks: Text symbols. (line 35) +* single guillemets: Text symbols. (line 35) +* single left quote: Text symbols. (line 194) +* single low-9 quotation mark: Text symbols. (line 60) +* single quote, straight: Text symbols. (line 200) +* single right quote: Text symbols. (line 197) * siunitx package: minipage. (line 137) -* siunitx package <1>: ~. (line 42) +* siunitx package <1>: ~. (line 44) * sizes of text: Font sizes. (line 6) * skip plain TeX: Lengths. (line 9) * skip register, plain TeX: \newlength. (line 6) * slanted font: Font styles. (line 94) +* slash character, breakable: \slash. (line 6) * slides class: Document classes. (line 11) * sloppypar environment: sloppypar. (line 6) * sloppypar environment <1>: sloppypar. (line 6) @@ -20448,6 +21059,7 @@ Index * sp: Units of length. (line 35) * space between lines: \baselineskip & \baselinestretch. (line 6) +* space factor: \spacefactor. (line 10) * space, inserting horizontal: \hss. (line 6) * space, inserting vertical: \addvspace. (line 6) * space, negative thin: \thinspace & \negthinspace. @@ -20468,9 +21080,13 @@ Index * spacing, math mode: \phantom & \vphantom & \hphantom. (line 6) * spacing, math mode <1>: \mathstrut. (line 6) -* Spanish ordinals, feminine and masculine: Text symbols. (line 175) -* special characters: Reserved characters. (line 6) -* special characters <1>: Additional Latin letters. +* Spanish exclamation mark, as ligature: Ligatures. (line 22) +* Spanish ordinals, feminine and masculine: Text symbols. (line 179) +* Spanish question mark, as ligature: Ligatures. (line 22) +* special characters: Additional Latin letters. + (line 6) +* special characters, meaning of: Special characters. (line 6) +* special characters, printing: Printing special characters. (line 6) * special insertions: Special insertions. (line 6) * specifier, float placement: Floats. (line 31) @@ -20486,14 +21102,14 @@ Index * starting and ending: Starting and ending. (line 6) * starting on a right-hand page: \clearpage & \cleardoublepage. (line 6) -* sterling symbol: Text symbols. (line 52) -* straight double quote, base: Text symbols. (line 200) -* straight quote, base: Text symbols. (line 200) -* straight single quote: Text symbols. (line 196) +* sterling symbol: Text symbols. (line 56) +* straight double quote, base: Text symbols. (line 204) +* straight quote, base: Text symbols. (line 204) +* straight single quote: Text symbols. (line 200) * stretch, infinite horizontal: \hfill. (line 6) * stretch, infinite vertical: \vfill. (line 6) * stretch, omitting vertical: \raggedbottom. (line 6) -* strut: \footnote. (line 47) +* strut: \footnote. (line 52) * strut <1>: \strut. (line 6) * strut, math: \mathstrut. (line 6) * styles of text: Font styles. (line 6) @@ -20523,6 +21139,7 @@ Index * system commands, run from LaTeX: \write18. (line 6) * system information: \write18. (line 65) * T1: fontenc package. (line 6) +* T1 encoding: fontenc package. (line 57) * tab stops, using: tabbing. (line 6) * tabbing environment: tabbing. (line 6) * table counter: Counters. (line 15) @@ -20536,11 +21153,13 @@ Index (line 6) * table of contents, creating: Table of contents etc.. (line 6) +* table of contents, page numbers in: \thepage. (line 11) * table of contents, sectioning numbers printed: Sectioning. (line 82) * tablefootnote package: Footnotes in a table. (line 53) * tables, creating: table. (line 6) * tabular environment: tabular. (line 6) +* tagged PDF: \DocumentMetadata. (line 6) * template (simple), article: article template. (line 6) * template, beamer: beamer template. (line 6) * template, book: book template. (line 6) @@ -20550,7 +21169,7 @@ Index * terminal input/output: Input/output. (line 6) * terminal, writing to: \write. (line 30) * TeX format (.fmt) files: TeX engines. (line 6) -* TeX logo: Text symbols. (line 66) +* TeX logo: Text symbols. (line 70) * texosquery package: \write18. (line 65) * texput, jobname default: Jobname. (line 27) * text style: Math styles. (line 21) @@ -20582,7 +21201,7 @@ Index (line 6) * thorn, Icelandic letter: Additional Latin letters. (line 56) -* three-quarters em-dash: Text symbols. (line 209) +* three-quarters em-dash: Text symbols. (line 213) * tie: ~. (line 6) * tie-after accent: Accents. (line 83) * TikZ package: \line. (line 35) @@ -20591,14 +21210,15 @@ Index * tikz-cd package: Arrows. (line 41) * tilde accent: Accents. (line 48) * tilde accent, math: Math accents. (line 38) -* tilde, ASCII, in text: Text symbols. (line 72) +* tilde character, meaning of: Special characters. (line 40) +* tilde, ASCII, in text: Text symbols. (line 76) * title page, separate or run-in: Document class options. - (line 71) + (line 74) * title pages, creating: titlepage. (line 6) * title, for titlepage: \maketitle. (line 64) * titlepage environment: titlepage. (line 6) * titlepage option: Document class options. - (line 49) + (line 52) * titles, making: \maketitle. (line 6) * titlesec package: Sectioning. (line 60) * titlesec package <1>: \part. (line 54) @@ -20614,7 +21234,7 @@ Index * tocloft package: Table of contents etc.. (line 110) * tocloft package <1>: \contentsline. (line 34) -* today’s date: \today. (line 6) +* today's date: \today. (line 6) * tombstone: \rule. (line 13) * topmargin: Page layout parameters. (line 125) @@ -20622,31 +21242,31 @@ Index * topnumber <1>: Floats. (line 139) * totalnumber: Floats. (line 142) * totalnumber <1>: Floats. (line 143) -* trademark symbol: Text symbols. (line 212) +* trademark symbol: Text symbols. (line 216) * transcript file: Output files. (line 28) * TrueType fonts: TeX engines. (line 6) +* TS1 (text companion) encoding: fontenc package. (line 63) * TS1 encoding: Text symbols. (line 6) * two-column output: \twocolumn. (line 6) -* two-thirds em-dash: Text symbols. (line 215) +* two-thirds em-dash: Text symbols. (line 219) * twocolumn option: Document class options. - (line 78) + (line 81) * twoside option: Document class options. - (line 78) + (line 81) * 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 97) * typewriter labels in lists: description. (line 36) -* ulem package: Over- and Underlining. - (line 15) +* ulem package: Over- or under math. (line 17) * umlaut accent: Accents. (line 25) * unbreakable space: ~. (line 6) * underbar: Accents. (line 53) -* underlining: Over- and Underlining. - (line 6) -* underscore, in text: Text symbols. (line 218) -* Unicode: inputenc package. (line 15) +* underlining: Over- or under math. (line 6) +* underscore character, meaning of: Special characters. (line 30) +* underscore, in text: Text symbols. (line 222) +* Unicode: Input encodings. (line 12) * Unicode input, native: TeX engines. (line 6) * unicode-math package: OpenType bold math. (line 20) * unicode-math package <1>: Dots. (line 59) @@ -20654,8 +21274,10 @@ Index * units, of length: Units of length. (line 6) * unofficial nature of this manual: About this document. (line 20) * unordered lists: itemize. (line 6) -* uplatex: TeX engines. (line 55) -* uplatex-dev: TeX engines. (line 68) +* Unused global option warning, handling: \DeclareOption. (line 18) +* unused options, adding to list: \OptionNotUsed. (line 6) +* uplatex: TeX engines. (line 62) +* uplatex-dev: TeX engines. (line 75) * uppercase: Upper and lower case. (line 6) * url package: \verb. (line 39) @@ -20670,8 +21292,9 @@ Index * verbatim text, inline: \verb. (line 6) * verbatimbox package: verbatim. (line 41) * verse environment: verse. (line 6) -* vertical bar, double, in text: Text symbols. (line 89) -* vertical bar, in text: Text symbols. (line 86) +* version of format, requiring: \NeedsTeXFormat. (line 6) +* vertical bar, double, in text: Text symbols. (line 93) +* vertical bar, in text: Text symbols. (line 90) * vertical mode: Modes. (line 36) * vertical space: \vspace. (line 6) * vertical space <1>: \addvspace. (line 6) @@ -20682,7 +21305,7 @@ Index * vertical spacing <1>: \mathstrut. (line 6) * vertical spacing, math mode: \smash. (line 6) * visible space: \verb. (line 31) -* visible space symbol, in text: Text symbols. (line 221) +* visible space symbol, in text: Text symbols. (line 225) * weights, of fonts: Low-level font commands. (line 58) * whatsit item: \write. (line 65) @@ -20697,14 +21320,14 @@ Index * writing letters: Letters. (line 6) * x-height: Units of length. (line 42) * xdvi command: Output files. (line 10) -* xdvipdfmx: TeX engines. (line 42) -* xelatex: TeX engines. (line 41) -* xelatex-dev: TeX engines. (line 69) -* XeTeX: TeX engines. (line 42) +* xdvipdfmx: TeX engines. (line 43) +* xelatex: TeX engines. (line 42) +* xelatex-dev: TeX engines. (line 76) +* XeTeX: TeX engines. (line 43) * xindex program: makeindex. (line 159) * xindy program: makeindex. (line 152) * xparse package: LaTeX command syntax. - (line 35) + (line 36) * xparse package <1>: \@ifstar. (line 64) * xr package: xr package. (line 6) * xr-hyper package: xr package. (line 6) @@ -20714,635 +21337,688 @@ Index Tag Table: -Node: Top1879 -Node: About this document3690 -Node: Overview5438 -Node: Starting and ending7240 -Ref: Starting & ending7375 -Node: Output files8600 -Ref: output files dvi8893 -Ref: output files pdf9441 -Ref: output files log9774 -Ref: output files aux9975 -Node: TeX engines10966 -Ref: tex engines latex11518 -Ref: tex engines lualatex12395 -Ref: tex engines xelatex12878 -Node: LaTeX command syntax14934 -Node: Environment16919 -Node: CTAN18178 -Node: Document classes19646 -Ref: document classes article20092 -Ref: document classes book20184 -Ref: document classes letter20373 -Ref: document classes report20453 -Ref: document classes slides20617 -Node: Document class options21074 -Node: Additional packages24372 -Node: Class and package construction25019 -Node: Class and package structure26505 -Node: Class and package commands28866 -Node: Fonts47177 -Ref: Typefaces47280 -Node: fontenc package49250 -Node: \DeclareFontEncoding53640 -Node: \DeclareTextAccent55108 -Node: \DeclareTextAccentDefault56059 -Node: \DeclareTextCommand & \ProvideTextCommand57166 -Ref: \DeclareTextCommand57471 -Ref: \ProvideTextCommand57471 -Node: \DeclareTextCommandDefault & \ProvideTextCommandDefault59478 -Ref: \DeclareTextCommandDefault59809 -Ref: \ProvideTextCommandDefault59809 -Node: \DeclareTextComposite60822 -Node: \DeclareTextCompositeCommand61939 -Node: \DeclareTextSymbol62653 -Node: \DeclareTextSymbolDefault63790 -Node: \LastDeclaredEncoding64778 -Node: \UseTextSymbol & \UseTextAccent65414 -Ref: \UseTextSymbol65623 -Ref: \UseTextAccent65623 -Node: Font styles66652 -Ref: \nocorrlist67592 -Ref: \nocorr67592 -Ref: \mathversion70347 -Ref: \oldstylenums70517 -Node: Font sizes71090 -Node: Low-level font commands74093 -Ref: low level font commands fontencoding74377 -Ref: low level font commands fontfamily74947 -Ref: low level font commands fontseries75794 -Ref: low level font commands fontshape77050 -Ref: low level font commands fontsize77395 -Ref: low level font commands linespread78000 -Ref: low level font commands selectfont78297 -Ref: low level font commands usefont78639 -Node: Layout78906 -Node: \onecolumn79480 -Node: \twocolumn79847 -Ref: twocolumn columnsep80482 -Ref: twocolumn columnseprule80734 -Ref: twocolumn columnwidth81042 -Ref: twocolumn dbltopfraction81657 -Ref: twocolumn dblfloatpagefraction82669 -Ref: twocolumn dblfloatsep82921 -Ref: twocolumn dbltextfloatsep83254 -Ref: twocolumn dbltopnumber83442 -Node: \flushbottom84401 -Node: \raggedbottom85572 -Node: Page layout parameters86114 -Ref: page layout parameters columnsep86355 -Ref: page layout parameters columnseprule86355 -Ref: page layout parameters columnwidth86355 -Ref: page layout parameters headheight86617 -Ref: page layout parameters headsep86804 -Ref: page layout parameters footskip87144 -Ref: page layout parameters linewidth87510 -Ref: page layout parameters marginparpush87901 -Ref: page layout parameters marginsep87901 -Ref: page layout parameters marginparwidth87901 -Ref: page layout parameters oddsidemargin89027 -Ref: page layout parameters evensidemargin89027 -Ref: page layout parameters paperheight89616 -Ref: page layout parameters paperwidth89850 -Ref: page layout parameters textheight90082 -Ref: page layout parameters textwidth90503 -Ref: page layout parameters hsize91509 -Ref: page layout parameters topmargin91714 -Ref: page layout parameters topskip92036 -Node: \baselineskip & \baselinestretch92256 -Ref: \baselineskip92469 -Ref: \baselinestretch92469 -Node: Floats97648 -Ref: floats bottomfraction102144 -Ref: floats floatpagefraction102279 -Ref: floats textfraction102398 -Ref: floats topfraction102608 -Ref: floats floatsep102872 -Ref: floats intextsep102990 -Ref: floats textfloatsep103217 -Ref: floats bottomnumber103493 -Ref: floats dbltopnumber103605 -Ref: floats topnumber103728 -Ref: floats totalnumber103836 -Node: \caption104461 -Node: Sectioning107287 -Ref: sectioning secnumdepth110546 -Ref: Sectioning/secnumdepth110546 -Ref: sectioning tocdepth111222 -Ref: Sectioning/tocdepth111222 -Node: \part112288 -Node: \chapter114522 -Node: \section118377 -Node: \subsection121716 -Node: \subsubsection & \paragraph & \subparagraph124498 -Ref: \subsubsection124744 -Ref: \paragraph124744 -Ref: \subparagraph124744 -Node: \appendix127231 -Node: \frontmatter & \mainmatter & \backmatter128616 -Ref: \frontmatter128856 -Ref: \mainmatter128856 -Ref: \backmatter128856 -Node: \@startsection130061 -Ref: startsection name131614 -Ref: \@startsection/name131614 -Ref: startsection level132094 -Ref: \@startsection/level132094 -Ref: startsection indent133007 -Ref: \@startsection/indent133007 -Ref: startsection beforeskip133278 -Ref: \@startsection/beforeskip133278 -Ref: startsection afterskip134831 -Ref: \@startsection/afterskip134831 -Ref: startsection style136188 -Ref: \@startsection/style136188 -Node: Cross references140031 -Node: \label142266 -Node: \pageref144158 -Node: \ref144968 -Node: xr package146007 -Node: Environments147880 -Node: abstract149898 -Node: array151515 -Node: center154540 -Node: \centering156313 -Node: description157886 -Node: displaymath160153 -Node: document161905 -Node: \AtBeginDocument162343 -Node: \AtEndDocument162975 -Node: enumerate163631 -Ref: enumerate enumi165592 -Ref: enumerate enumii165592 -Ref: enumerate enumiii165592 -Ref: enumerate enumiv165592 -Ref: enumerate labelenumi166006 -Ref: enumerate labelenumii166006 -Ref: enumerate labelenumiii166006 -Ref: enumerate labelenumiv166006 -Node: eqnarray166557 -Node: equation168609 -Node: figure169301 -Node: filecontents171534 -Node: flushleft173487 -Node: \raggedright174526 -Node: flushright175757 -Node: \raggedleft176601 -Node: itemize177506 -Ref: itemize labelitemi179098 -Ref: itemize labelitemii179098 -Ref: itemize labelitemiii179098 -Ref: itemize labelitemiv179098 -Ref: itemize leftmargin179791 -Ref: itemize leftmargini179791 -Ref: itemize leftmarginii179791 -Ref: itemize leftmarginiii179791 -Ref: itemize leftmarginiv179791 -Ref: itemize leftmarginv179791 -Ref: itemize leftmarginvi179791 -Node: letter181329 -Node: list181571 -Ref: list makelabel184090 -Ref: list itemindent185527 -Ref: list itemsep185676 -Ref: list labelsep186411 -Ref: list labelwidth186596 -Ref: list leftmargin187689 -Ref: list listparindent188608 -Ref: list parsep188855 -Ref: list partopsep189377 -Ref: list rightmargin190237 -Ref: list topsep190430 -Ref: list beginparpenalty194144 -Ref: list itempenalty194251 -Ref: list endparpenalty194363 -Node: \item195246 -Node: trivlist196524 -Node: math198102 -Node: minipage198424 -Node: picture204169 -Node: \put210547 -Node: \multiput211128 -Node: \qbezier211871 -Node: \graphpaper213376 -Node: \line214184 -Node: \linethickness216185 -Node: \thinlines216662 -Node: \thicklines217077 -Node: \circle217466 -Node: \oval218028 -Node: \shortstack219083 -Node: \vector220851 -Node: \makebox (picture)221784 -Node: \framebox (picture)223010 -Node: \frame224511 -Node: \dashbox224952 -Node: quotation & quote226113 -Ref: quotation226275 -Ref: quote226275 -Node: tabbing227037 -Node: table233230 -Node: tabular235341 -Ref: \extracolsep239383 -Ref: tabular arrayrulewidth241924 -Ref: tabular arraystrech242196 -Ref: tabular doublerulesep242437 -Ref: tabular tabcolsep242585 -Node: \multicolumn243118 -Node: \vline247137 -Node: \cline248594 -Node: \hline249324 -Node: thebibliography250034 -Node: \bibitem252615 -Node: \cite255001 -Node: \nocite256917 -Node: Using BibTeX257433 -Node: BibTeX error messages259883 -Node: theorem260840 -Node: titlepage261782 -Node: verbatim263077 -Node: \verb264950 -Node: verse267128 -Node: Line breaking268365 -Node: \\269731 -Node: \obeycr & \restorecr272263 -Ref: \obeycr272429 -Ref: \restorecr272429 -Node: \newline273108 -Node: \- (hyphenation)274197 -Node: \discretionary275861 -Node: \fussy & \sloppy276776 -Ref: \fussy276946 -Ref: \sloppy276946 -Node: sloppypar277615 -Node: \hyphenation278777 -Node: \linebreak & \nolinebreak279409 -Ref: \linebreak279583 -Ref: \nolinebreak279583 -Node: Page breaking280605 -Node: \clearpage & \cleardoublepage282647 -Ref: \clearpage282831 -Ref: \cleardoublepage282831 -Node: \newpage284317 -Node: \enlargethispage285661 -Node: \pagebreak & \nopagebreak286633 -Ref: \pagebreak286813 -Ref: \nopagebreak286813 -Node: Footnotes288648 -Node: \footnote289802 -Ref: footnote footnoterule291090 -Ref: footnote footnotesep291719 -Node: \footnotemark292847 -Node: \footnotetext295232 -Node: Footnotes in section headings295842 -Node: Footnotes in a table296687 -Node: Footnotes of footnotes299662 -Node: Definitions300366 -Node: \newcommand & \renewcommand301413 -Ref: \newcommand301596 -Ref: \renewcommand301596 -Node: Control sequences308007 -Node: \providecommand309474 -Node: \makeatletter & \makeatother310698 -Ref: \makeatletter310901 -Ref: \makeatother310901 -Node: \@ifstar312884 -Node: \newcounter316495 -Node: \newlength318267 -Node: \newsavebox319226 -Node: \newenvironment & \renewenvironment320217 -Ref: \newenvironment320440 -Ref: \renewenvironment320440 -Node: \newtheorem325673 -Node: \newfont329345 -Node: \protect330618 -Node: \ignorespaces & \ignorespacesafterend333112 -Ref: \ignorespaces333335 -Ref: \ignorespacesafterend333335 -Node: xspace package335924 -Node: Counters338198 -Node: \alph \Alph \arabic \roman \Roman \fnsymbol339939 -Node: \usecounter342708 -Node: \value343587 -Node: \setcounter344676 -Node: \addtocounter345290 -Node: \refstepcounter345752 -Node: \stepcounter346445 -Node: \day & \month & \year347018 -Ref: \day347185 -Ref: \month347185 -Ref: \year347185 -Node: Lengths347959 -Node: Units of length352683 -Ref: units of length pt352890 -Ref: units of length pc353011 -Ref: units of length in353038 -Ref: units of length bp353068 -Ref: units of length mm353203 -Ref: units of length cm353238 -Ref: units of length dd353270 -Ref: units of length cc353306 -Ref: units of length sp353335 -Ref: Lengths/ex353481 -Ref: units of length ex353481 -Ref: Lengths/em353632 -Ref: units of length em353632 -Ref: units of length mu353981 -Node: \setlength354518 -Node: \addtolength355660 -Node: \settodepth357135 -Node: \settoheight358155 -Node: \settowidth359189 -Node: \stretch360226 -Node: Expressions361440 -Node: Making paragraphs366478 -Node: \par368821 -Node: \indent & \noindent370951 -Ref: \indent371135 -Ref: \noindent371135 -Node: \parindent & \parskip372532 -Ref: \parindent372730 -Ref: \parskip372730 -Node: Marginal notes373931 -Ref: marginal notes marginparpush375365 -Ref: marginal notes marginparsep375555 -Ref: marginal notes marginparwidth375703 -Node: Math formulas376084 -Node: Subscripts & superscripts379178 -Ref: superscript379338 -Ref: subscript379338 -Node: Math symbols381471 -Node: Arrows406951 -Node: \boldmath & \unboldmath408275 -Ref: \boldmath408466 -Ref: \unboldmath408466 -Node: bm409576 -Node: OpenType bold math410328 -Node: Blackboard bold411766 -Node: Calligraphic412595 -Node: Delimiters413130 -Node: \left & \right415441 -Ref: \left415595 -Ref: \right415595 -Node: \bigl & \bigr etc.419602 -Ref: \bigl419764 -Ref: \bigr419764 -Node: Dots422460 -Ref: ellipses cdots422891 -Ref: ellipses ddots423044 -Ref: ellipses ldots423129 -Ref: ellipses vdots423549 -Node: Greek letters425675 -Node: Math functions427524 -Node: Math accents429373 -Node: Over- and Underlining430332 -Node: Spacing in math mode432231 -Ref: spacing in math mode thickspace433196 -Ref: spacing in math mode medspace433679 -Ref: Spacing in math mode/\thinspace434163 -Ref: spacing in math mode thinspace434163 -Ref: spacing in math mode negthinspace434660 -Ref: spacing in math mode quad435057 -Ref: spacing in math mode qquad435321 -Node: \smash435659 -Node: \phantom & \vphantom & \hphantom437930 -Ref: \phantom438159 -Ref: \vphantom438159 -Ref: \hphantom438159 -Node: \mathstrut440574 -Node: Math styles441576 -Node: Math miscellany444382 -Node: Colon character & \colon444881 -Ref: colon445054 -Node: \*445610 -Node: \frac446214 -Node: \sqrt446597 -Node: \stackrel447244 -Node: Modes447517 -Ref: modes paragraph mode447969 -Ref: modes lr mode448289 -Ref: modes math mode448908 -Ref: modes vertical mode449257 -Ref: modes internal vertical mode449479 -Ref: modes inner paragraph mode450022 -Ref: modes outer paragraph mode450022 -Node: \ensuremath450456 -Node: Page styles451169 -Node: \maketitle451929 -Node: \pagenumbering455082 -Node: \pagestyle457210 -Node: \thispagestyle460874 -Node: Spaces461852 -Node: \enspace & \quad & \qquad463172 -Ref: \enspace463344 -Ref: \quad463344 -Ref: \qquad463344 -Node: \hspace464111 -Node: \hfill466020 -Node: \hss467114 -Node: \spacefactor467834 -Node: \@471301 -Ref: \AT471425 -Node: \frenchspacing & \nonfrenchspacing473417 -Ref: \frenchspacing473535 -Ref: \nonfrenchspacing473636 -Node: \normalsfcodes474349 -Node: \(SPACE)474621 -Ref: Leading blanks476613 -Node: ~476946 -Node: \thinspace & \negthinspace479935 -Ref: \thinspace480107 -Ref: \negthinspace480107 -Node: \/481181 -Node: \hrulefill & \dotfill483193 -Ref: \hrulefill483383 -Ref: \dotfill483383 -Node: \bigskip & \medskip & \smallskip484569 -Ref: \bigskip484822 -Ref: \medskip484822 -Ref: \smallskip484822 -Ref: bigskip485401 -Ref: medskip485625 -Ref: smallskip485854 -Node: \bigbreak & \medbreak & \smallbreak486551 -Ref: \bigbreak486795 -Ref: \medbreak486795 -Ref: \smallbreak486795 -Node: \strut487580 -Node: \vspace490913 -Node: \vfill492507 -Node: \addvspace493459 -Node: Boxes495576 -Node: \mbox & \makebox496294 -Ref: \mbox496440 -Ref: \makebox496440 -Ref: mbox makebox depth497606 -Ref: mbox makebox height497606 -Ref: mbox makebox width497606 -Ref: mbox makebox totalheight497606 -Node: \fbox & \framebox499802 -Ref: \fbox499966 -Ref: \framebox499966 -Ref: fbox framebox fboxrule501149 -Ref: fbox framebox fboxsep501347 -Node: \parbox502487 -Node: \raisebox504851 -Ref: raisebox depth505828 -Ref: raisebox height505828 -Ref: raisebox width505828 -Ref: raisebox totalheight505828 -Node: \sbox & \savebox506559 -Ref: \sbox506711 -Ref: \savebox506711 -Node: lrbox509751 -Node: \usebox510665 -Node: Color511124 -Node: Color package options511941 -Node: Color models513715 -Ref: color models cmyk514530 -Ref: color models gray514897 -Ref: color models rgb515050 -Ref: color models RGB515391 -Ref: color models named515790 -Node: Commands for color516122 -Node: Define colors516541 -Node: Colored text517272 -Node: Colored boxes519707 -Node: Colored pages521138 -Node: Graphics521835 -Node: Graphics package options523981 -Node: Graphics package configuration526908 -Node: \graphicspath527720 -Node: \DeclareGraphicsExtensions530792 -Node: \DeclareGraphicsRule532646 -Node: Commands for graphics535924 -Node: \includegraphics536437 -Ref: includegraphics width541600 -Ref: includegraphics height542161 -Ref: includegraphics totalheight542583 -Ref: includegraphics keepaspectratio542851 -Ref: includegraphics viewport544643 -Ref: includegraphics trim545054 -Ref: includegraphics clip545522 -Ref: includegraphics page545794 -Ref: includegraphics pagebox545893 -Ref: includegraphics interpolate546784 -Ref: includegraphics quiet546997 -Ref: includegraphics draft547170 -Ref: includegraphics bb547997 -Ref: includegraphics bbllx548407 -Ref: includegraphics bblly548407 -Ref: includegraphics bburx548407 -Ref: includegraphics bbury548407 -Ref: includegraphics natwidth548553 -Ref: includegraphics natheight548553 -Ref: includegraphics hiresbb548751 -Ref: includegraphics type549561 -Ref: includegraphics ext549605 -Ref: includegraphics read549716 -Ref: includegraphics command549841 -Node: \rotatebox550099 -Node: \scalebox553061 -Node: \resizebox554169 -Node: Special insertions555409 -Node: Reserved characters556283 -Node: Upper and lower case557602 -Node: Symbols by font position560076 -Node: Text symbols560783 -Node: Accents566752 -Node: \accent569209 -Node: Additional Latin letters571067 -Ref: Non-English characters571249 -Node: inputenc package572370 -Ref: \inputencoding574646 -Node: \rule575022 -Node: \today576226 -Node: Splitting the input577216 -Node: \endinput578998 -Node: \include & \includeonly580355 -Ref: \include580543 -Ref: \includeonly580543 -Node: \input584840 -Node: Front/back matter586083 -Node: Table of contents etc.586416 -Node: \@dottedtocline592364 -Node: \addcontentsline594015 -Node: \addtocontents597204 -Node: \contentsline599497 -Node: \nofiles601387 -Node: \numberline602170 -Node: Indexes603398 -Node: Produce the index manually606288 -Node: \index607476 -Node: makeindex612917 -Ref: makeindex preamble614633 -Ref: makeindex postamble614787 -Ref: makeindex group skip614891 -Ref: makeindex letheadflag615251 -Ref: makeindex lethead prefix615728 -Ref: makeindex lethead suffix615888 -Ref: makeindex item 0616044 -Ref: makeindex item 1616132 -Ref: makeindex item 2616215 -Ref: makeindex item 01616301 -Ref: makeindex item x1616414 -Ref: makeindex item 12616633 -Ref: makeindex item x2616749 -Ref: makeindex delim 0616919 -Ref: makeindex delim 1617057 -Ref: makeindex delim 2617195 -Ref: makeindex delim n617329 -Ref: makeindex delim r617472 -Ref: makeindex line max617588 -Ref: makeindex indent space617733 -Ref: makeindex indent length617836 -Ref: makeindex page precedence618033 -Node: \printindex619114 -Node: Glossaries619603 -Node: \newglossaryentry621622 -Node: \gls623125 -Node: Letters623939 -Node: \address627655 -Node: \cc628482 -Node: \closing628936 -Node: \encl629256 -Node: \location629682 -Node: \makelabels629954 -Node: \name632331 -Node: \opening632578 -Node: \ps632867 -Node: \signature633164 -Node: \telephone634440 -Node: Input/output634815 -Node: \openin & \openout635545 -Ref: \openin635692 -Ref: \openout635692 -Ref: \closein635692 -Ref: \closeout635692 -Node: \read638413 -Node: \typein639640 -Node: \typeout640924 -Node: \write642014 -Node: \write and security646929 -Node: \message647885 -Node: \wlog649766 -Node: \write18650275 -Node: Command line interface653876 -Ref: Command line654040 -Node: Command line options656259 -Ref: interaction modes657306 -Ref: output directory658318 -Node: Command line input660093 -Node: Jobname662242 -Node: Recovering from errors665621 -Node: Document templates667097 -Node: beamer template667531 -Node: article template668181 -Node: book template668648 -Node: Larger book template669131 -Node: Index670715 -Ref: Command Index670801 +Node: Top1873 +Node: About this document3680 +Node: Overview5499 +Node: Starting and ending7434 +Ref: Starting & ending7569 +Node: Output files8789 +Ref: output files dvi9080 +Ref: output files pdf9628 +Ref: output files log9961 +Ref: output files aux10162 +Node: TeX engines11151 +Ref: tex engines latex11702 +Ref: tex engines lualatex12653 +Ref: tex engines xelatex13134 +Node: Input text15474 +Node: Input encodings15937 +Node: Ligatures17345 +Node: Special characters20141 +Ref: Reserved characters20326 +Node: LaTeX command syntax21530 +Node: Environment syntax23610 +Node: \DocumentMetadata24903 +Node: CTAN26273 +Node: Document classes27739 +Ref: \documentclass27866 +Ref: document classes article28202 +Ref: document classes book28294 +Ref: document classes letter28483 +Ref: document classes report28563 +Ref: document classes slides28727 +Node: Document class options29223 +Node: \usepackage32744 +Ref: Additional packages32958 +Node: Class and package creation33961 +Node: Class and package structure35424 +Node: Fonts37830 +Ref: Typefaces37933 +Node: fontenc package39903 +Node: \DeclareFontEncoding44298 +Node: \DeclareTextAccent45766 +Node: \DeclareTextAccentDefault46717 +Node: \DeclareTextCommand & \ProvideTextCommand47824 +Ref: \DeclareTextCommand48129 +Ref: \ProvideTextCommand48129 +Node: \DeclareTextCommandDefault & \ProvideTextCommandDefault50136 +Ref: \DeclareTextCommandDefault50467 +Ref: \ProvideTextCommandDefault50467 +Node: \DeclareTextComposite51480 +Node: \DeclareTextCompositeCommand52597 +Node: \DeclareTextSymbol53311 +Node: \DeclareTextSymbolDefault54448 +Node: \LastDeclaredEncoding55436 +Node: \UseTextSymbol & \UseTextAccent56072 +Ref: \UseTextSymbol56281 +Ref: \UseTextAccent56281 +Node: Font styles57310 +Ref: \nocorrlist58248 +Ref: \nocorr58248 +Ref: \mathversion61003 +Ref: \oldstylenums61173 +Node: Font sizes61736 +Node: Low-level font commands64735 +Ref: low level font commands fontencoding65019 +Ref: low level font commands fontfamily65587 +Ref: low level font commands fontseries66434 +Ref: low level font commands fontshape67690 +Ref: low level font commands fontsize68035 +Ref: low level font commands linespread68640 +Ref: low level font commands selectfont68937 +Ref: low level font commands usefont69279 +Node: Layout69546 +Node: \onecolumn70120 +Node: \twocolumn70487 +Ref: twocolumn columnsep71122 +Ref: twocolumn columnseprule71374 +Ref: twocolumn columnwidth71682 +Ref: twocolumn dbltopfraction72297 +Ref: twocolumn dblfloatpagefraction73309 +Ref: twocolumn dblfloatsep73559 +Ref: twocolumn dbltextfloatsep73892 +Ref: twocolumn dbltopnumber74080 +Node: \flushbottom75037 +Node: \raggedbottom76208 +Node: Page layout parameters76750 +Ref: page layout parameters columnsep76991 +Ref: page layout parameters columnseprule76991 +Ref: page layout parameters columnwidth76991 +Ref: page layout parameters headheight77253 +Ref: page layout parameters headsep77440 +Ref: page layout parameters footskip77780 +Ref: page layout parameters linewidth78146 +Ref: page layout parameters marginparpush78535 +Ref: page layout parameters marginsep78535 +Ref: page layout parameters marginparwidth78535 +Ref: page layout parameters oddsidemargin79661 +Ref: page layout parameters evensidemargin79661 +Ref: page layout parameters paperheight80246 +Ref: page layout parameters paperwidth80480 +Ref: page layout parameters textheight80712 +Ref: page layout parameters textwidth81133 +Ref: page layout parameters hsize82139 +Ref: page layout parameters topmargin82344 +Ref: page layout parameters topskip82666 +Node: \baselineskip & \baselinestretch82886 +Ref: \baselineskip83099 +Ref: \baselinestretch83099 +Node: Floats88262 +Ref: floats bottomfraction92744 +Ref: floats floatpagefraction92879 +Ref: floats textfraction92998 +Ref: floats topfraction93208 +Ref: floats floatsep93472 +Ref: floats intextsep93590 +Ref: floats textfloatsep93817 +Ref: floats bottomnumber94093 +Ref: floats dbltopnumber94205 +Ref: floats topnumber94328 +Ref: floats totalnumber94436 +Node: \caption95053 +Node: Sectioning97879 +Ref: sectioning secnumdepth101134 +Ref: Sectioning/secnumdepth101134 +Ref: sectioning tocdepth101808 +Ref: Sectioning/tocdepth101808 +Node: \part102872 +Node: \chapter105104 +Node: \section108957 +Node: \subsection112296 +Node: \subsubsection & \paragraph & \subparagraph115078 +Ref: \subsubsection115324 +Ref: \paragraph115324 +Ref: \subparagraph115324 +Node: \appendix117811 +Node: \frontmatter & \mainmatter & \backmatter119196 +Ref: \frontmatter119436 +Ref: \mainmatter119436 +Ref: \backmatter119436 +Node: \@startsection120637 +Ref: startsection name122182 +Ref: \@startsection/name122182 +Ref: startsection level122660 +Ref: \@startsection/level122660 +Ref: startsection indent123565 +Ref: \@startsection/indent123565 +Ref: startsection beforeskip123836 +Ref: \@startsection/beforeskip123836 +Ref: startsection afterskip125384 +Ref: \@startsection/afterskip125384 +Ref: startsection style126735 +Ref: \@startsection/style126735 +Node: Cross references130574 +Node: \label132803 +Node: \pageref134695 +Node: \ref135505 +Node: xr package136536 +Node: Environments138409 +Ref: Environment138540 +Node: abstract140428 +Node: array142045 +Node: center145066 +Node: \centering146835 +Node: description148404 +Node: displaymath150669 +Node: document152407 +Node: \AtBeginDocument152845 +Node: \AtEndDocument153477 +Node: enumerate154133 +Ref: enumerate enumi156092 +Ref: enumerate enumii156092 +Ref: enumerate enumiii156092 +Ref: enumerate enumiv156092 +Ref: enumerate labelenumi156506 +Ref: enumerate labelenumii156506 +Ref: enumerate labelenumiii156506 +Ref: enumerate labelenumiv156506 +Node: eqnarray157057 +Node: equation159105 +Node: figure159795 +Node: filecontents162024 +Node: flushleft163977 +Node: \raggedright165016 +Node: flushright166245 +Node: \raggedleft167089 +Node: itemize167963 +Ref: itemize labelitemi169553 +Ref: itemize labelitemii169553 +Ref: itemize labelitemiii169553 +Ref: itemize labelitemiv169553 +Ref: itemize leftmargin170246 +Ref: itemize leftmargini170246 +Ref: itemize leftmarginii170246 +Ref: itemize leftmarginiii170246 +Ref: itemize leftmarginiv170246 +Ref: itemize leftmarginv170246 +Ref: itemize leftmarginvi170246 +Node: letter171792 +Node: list172034 +Ref: list makelabel174553 +Ref: list itemindent175991 +Ref: list itemsep176140 +Ref: list labelsep176873 +Ref: list labelwidth177056 +Ref: list leftmargin178143 +Ref: list listparindent179060 +Ref: list parsep179303 +Ref: list partopsep179823 +Ref: list rightmargin180681 +Ref: list topsep180874 +Ref: list beginparpenalty184582 +Ref: list itempenalty184689 +Ref: list endparpenalty184801 +Node: \item185684 +Node: trivlist186962 +Node: math188538 +Node: minipage188860 +Node: picture194597 +Node: \put200963 +Node: \multiput201544 +Node: \qbezier202287 +Node: \graphpaper203788 +Node: \line204594 +Node: \linethickness206590 +Node: \thinlines207067 +Node: \thicklines207482 +Node: \circle207871 +Node: \oval208433 +Node: \shortstack209488 +Node: \vector211254 +Node: \makebox (picture)212186 +Node: \framebox (picture)213412 +Node: \frame214913 +Node: \dashbox215354 +Node: quotation & quote216513 +Ref: quotation216675 +Ref: quote216675 +Node: tabbing217437 +Node: table223624 +Node: tabular225735 +Ref: \extracolsep229771 +Ref: tabular arrayrulewidth232312 +Ref: tabular arraystrech232584 +Ref: tabular doublerulesep232825 +Ref: tabular tabcolsep232973 +Node: \multicolumn233506 +Node: \vline237515 +Node: \cline238962 +Node: \hline239692 +Node: thebibliography240398 +Node: \bibitem242977 +Node: \cite245363 +Node: \nocite247279 +Node: Using BibTeX247795 +Node: BibTeX error messages250239 +Node: theorem251196 +Node: titlepage252138 +Node: verbatim253433 +Node: \verb255453 +Node: verse257501 +Node: Line breaking258736 +Node: \\260159 +Node: \obeycr & \restorecr262685 +Ref: \obeycr262851 +Ref: \restorecr262851 +Node: \newline263528 +Node: \- (hyphenation)264617 +Node: \slash266273 +Node: \discretionary266817 +Node: \fussy & \sloppy267718 +Ref: \fussy267888 +Ref: \sloppy267888 +Node: sloppypar268557 +Node: \hyphenation269719 +Node: \linebreak & \nolinebreak270358 +Ref: \linebreak270532 +Ref: \nolinebreak270532 +Node: Page breaking271554 +Node: \clearpage & \cleardoublepage273590 +Ref: \clearpage273774 +Ref: \cleardoublepage273774 +Node: \newpage275256 +Node: \enlargethispage276598 +Node: \pagebreak & \nopagebreak277570 +Ref: \pagebreak277750 +Ref: \nopagebreak277750 +Node: Footnotes279532 +Node: \footnote280686 +Ref: footnote footnoterule282034 +Ref: footnote footnotesep282857 +Node: \footnotemark283983 +Node: \footnotetext286388 +Node: Footnotes in section headings286998 +Node: Footnotes in a table287844 +Node: Footnotes of footnotes290812 +Node: Definitions291514 +Node: \newcommand & \renewcommand292629 +Ref: \newcommand292812 +Ref: \renewcommand292812 +Node: Control sequences299249 +Node: \providecommand300715 +Node: \makeatletter & \makeatother301939 +Ref: \makeatletter302142 +Ref: \makeatother302142 +Node: \@ifstar304121 +Node: \newcounter307730 +Node: \newlength309502 +Node: \newsavebox310461 +Node: \newenvironment & \renewenvironment311452 +Ref: \newenvironment311675 +Ref: \renewenvironment311675 +Node: \newtheorem316904 +Node: \newfont320572 +Node: \protect321841 +Node: \ignorespaces & \ignorespacesafterend324752 +Ref: \ignorespaces324975 +Ref: \ignorespacesafterend324975 +Node: xspace package327564 +Node: Class and package commands329970 +Node: \AtBeginDvi & \AtEndDvi330716 +Ref: \AtBeginDvi330924 +Ref: \AtEndDvi330924 +Node: \AtEndOfClass & \AtEndOfPackage331408 +Ref: \AtEndOfClass331654 +Ref: \AtEndOfPackage331654 +Node: \CheckCommand332014 +Node: \ClassError and \PackageError and others332967 +Ref: \ClassError333231 +Ref: \ClassWarning333231 +Ref: \ClassWarningNoLine333231 +Ref: \ClassInfo333231 +Ref: \ClassInfoNoLine333231 +Ref: \PackageError333231 +Ref: \PackageWarning333231 +Ref: \PackageWarningNoLine333231 +Ref: \PackageInfo333231 +Ref: \PackageInfoNoLine333231 +Node: \CurrentOption334625 +Node: \DeclareOption334997 +Node: \DeclareRobustCommand336675 +Node: \ExecuteOptions339042 +Node: \IfFileExists & \InputIfFileExists339700 +Ref: \IfFileExists339968 +Ref: \InputIfFileExists339968 +Node: \LoadClass & \LoadClassWithOptions341276 +Ref: \LoadClass341546 +Ref: \LoadClassWithOptions341546 +Node: \NeedsTeXFormat342643 +Node: \OptionNotUsed343739 +Node: \PassOptionsToClass & \PassOptionsToPackage344106 +Ref: \PassOptionsToClass344383 +Ref: \PassOptionsToPackage344383 +Node: \ProcessOptions346210 +Node: \ProvidesClass & \ProvidesPackage348354 +Ref: \ProvidesClass348600 +Ref: \ProvidesPackage348600 +Node: \ProvidesFile350562 +Node: \RequirePackage & \RequirePackageWithOptions351277 +Ref: \RequirePackage351532 +Ref: \RequirePackageWithOptions351532 +Node: Counters353239 +Node: \alph \Alph \arabic \roman \Roman \fnsymbol354976 +Node: \usecounter357703 +Node: \value358582 +Node: \setcounter359671 +Node: \addtocounter360283 +Node: \refstepcounter360745 +Node: \stepcounter361434 +Node: \day & \month & \year362003 +Ref: \day362170 +Ref: \month362170 +Ref: \year362170 +Node: Lengths362944 +Node: Units of length367669 +Ref: units of length pt367876 +Ref: units of length pc367997 +Ref: units of length in368024 +Ref: units of length bp368054 +Ref: units of length mm368189 +Ref: units of length cm368224 +Ref: units of length dd368256 +Ref: units of length cc368292 +Ref: units of length sp368321 +Ref: Lengths/ex368467 +Ref: units of length ex368467 +Ref: Lengths/em368618 +Ref: units of length em368618 +Ref: units of length mu368967 +Node: \setlength369504 +Node: \addtolength370644 +Node: \settodepth372119 +Node: \settoheight373139 +Node: \settowidth374173 +Node: \stretch375210 +Node: Expressions376424 +Node: Making paragraphs381458 +Node: \par383797 +Node: \indent & \noindent385927 +Ref: \indent386111 +Ref: \noindent386111 +Node: \parindent & \parskip387506 +Ref: \parindent387704 +Ref: \parskip387704 +Node: Marginal notes388903 +Ref: marginal notes marginparpush390335 +Ref: marginal notes marginparsep390525 +Ref: marginal notes marginparwidth390673 +Node: Math formulas391054 +Node: Subscripts & superscripts394158 +Ref: superscript394318 +Ref: subscript394318 +Node: Math symbols396443 +Node: Arrows421911 +Node: \boldmath & \unboldmath423235 +Ref: \boldmath423426 +Ref: \unboldmath423426 +Node: bm424536 +Node: OpenType bold math425288 +Node: Blackboard bold426720 +Node: Calligraphic427549 +Node: Delimiters428084 +Node: \left & \right430395 +Ref: \left430549 +Ref: \right430549 +Node: \bigl & \bigr etc.434550 +Ref: \bigl434712 +Ref: \bigr434712 +Node: Dots437408 +Ref: ellipses cdots437839 +Ref: ellipses ddots437992 +Ref: ellipses ldots438077 +Ref: ellipses vdots438497 +Node: Greek letters440617 +Node: Math functions442464 +Node: Math accents444313 +Node: Over- or under math445270 +Ref: Over- and Underlining445441 +Node: Spacing in math mode447338 +Ref: spacing in math mode thickspace448299 +Ref: spacing in math mode medspace448782 +Ref: Spacing in math mode/\thinspace449266 +Ref: spacing in math mode thinspace449266 +Ref: spacing in math mode negthinspace449763 +Ref: spacing in math mode quad450160 +Ref: spacing in math mode qquad450424 +Node: \smash450762 +Node: \phantom & \vphantom & \hphantom453063 +Ref: \phantom453292 +Ref: \vphantom453292 +Ref: \hphantom453292 +Node: \mathstrut455705 +Node: Math styles456707 +Node: Math miscellany459505 +Node: Colon character & \colon460002 +Ref: colon460175 +Node: \*460731 +Node: \frac461335 +Node: \sqrt461718 +Node: \stackrel462365 +Node: Modes462638 +Ref: modes paragraph mode463090 +Ref: modes lr mode463410 +Ref: modes math mode464025 +Ref: modes vertical mode464374 +Ref: modes internal vertical mode464596 +Ref: modes inner paragraph mode465139 +Ref: modes outer paragraph mode465139 +Node: \ensuremath465573 +Node: Page styles466286 +Node: \maketitle467118 +Node: \pagenumbering470262 +Node: \pagestyle472702 +Node: \thispagestyle476388 +Node: \thepage477383 +Node: Spaces478448 +Node: \enspace & \quad & \qquad479768 +Ref: \enspace479940 +Ref: \quad479940 +Ref: \qquad479940 +Node: \hspace480707 +Node: \hfill482612 +Node: \hss483704 +Node: \spacefactor484422 +Node: \@487929 +Ref: \AT488053 +Node: \frenchspacing & \nonfrenchspacing490134 +Ref: \frenchspacing490252 +Ref: \nonfrenchspacing490353 +Node: \normalsfcodes491242 +Node: \(SPACE)491514 +Ref: Leading blanks493499 +Node: ~493810 +Node: \thinspace & \negthinspace496956 +Ref: \thinspace497128 +Ref: \negthinspace497128 +Node: \/498202 +Node: \hrulefill & \dotfill500212 +Ref: \hrulefill500402 +Ref: \dotfill500402 +Node: \bigskip & \medskip & \smallskip501584 +Ref: \bigskip501837 +Ref: \medskip501837 +Ref: \smallskip501837 +Ref: bigskip502414 +Ref: medskip502638 +Ref: smallskip502867 +Node: \bigbreak & \medbreak & \smallbreak503564 +Ref: \bigbreak503808 +Ref: \medbreak503808 +Ref: \smallbreak503808 +Node: \strut504593 +Node: \vspace507918 +Node: \vfill509511 +Node: \addvspace510463 +Node: Boxes512573 +Node: \mbox & \makebox513294 +Ref: \mbox513440 +Ref: \makebox513440 +Ref: mbox makebox depth514605 +Ref: mbox makebox height514605 +Ref: mbox makebox width514605 +Ref: mbox makebox totalheight514605 +Node: \fbox & \framebox516799 +Ref: \fbox516963 +Ref: \framebox516963 +Ref: fbox framebox fboxrule518146 +Ref: fbox framebox fboxsep518344 +Node: \parbox519482 +Node: \raisebox521844 +Ref: raisebox depth522821 +Ref: raisebox height522821 +Ref: raisebox width522821 +Ref: raisebox totalheight522821 +Node: \sbox & \savebox523550 +Ref: \sbox523702 +Ref: \savebox523702 +Node: lrbox526738 +Node: \usebox527652 +Node: Graphics528111 +Node: Graphics package options530244 +Node: Graphics package configuration533169 +Node: \graphicspath533979 +Node: \DeclareGraphicsExtensions537045 +Node: \DeclareGraphicsRule538899 +Node: Commands for graphics542177 +Node: \includegraphics542690 +Ref: includegraphics width547849 +Ref: includegraphics height548410 +Ref: includegraphics totalheight548832 +Ref: includegraphics keepaspectratio549100 +Ref: includegraphics viewport550890 +Ref: includegraphics trim551301 +Ref: includegraphics clip551769 +Ref: includegraphics page552041 +Ref: includegraphics pagebox552140 +Ref: includegraphics interpolate553029 +Ref: includegraphics quiet553242 +Ref: includegraphics draft553415 +Ref: includegraphics bb554240 +Ref: includegraphics bbllx554650 +Ref: includegraphics bblly554650 +Ref: includegraphics bburx554650 +Ref: includegraphics bbury554650 +Ref: includegraphics natwidth554796 +Ref: includegraphics natheight554796 +Ref: includegraphics hiresbb554994 +Ref: includegraphics type555800 +Ref: includegraphics ext555844 +Ref: includegraphics read555955 +Ref: includegraphics command556080 +Node: \rotatebox556338 +Node: \scalebox559296 +Node: \resizebox560404 +Node: Color561642 +Node: Color package options562470 +Node: Color models564240 +Ref: color models cmyk565053 +Ref: color models gray565420 +Ref: color models rgb565573 +Ref: color models RGB565914 +Ref: color models named566313 +Node: Commands for color566645 +Node: Define colors567064 +Node: Colored text567793 +Node: Colored boxes570228 +Node: Colored pages571657 +Node: Special insertions572354 +Node: Printing special characters573223 +Node: Upper and lower case574552 +Node: Symbols by font position577026 +Node: Text symbols577733 +Node: Accents583932 +Node: \accent586387 +Node: Additional Latin letters588245 +Ref: Non-English characters588427 +Node: inputenc package589546 +Ref: \inputencoding591588 +Node: \rule591807 +Node: \today593007 +Node: Splitting the input593995 +Node: \endinput595777 +Node: \include & \includeonly597132 +Ref: \include597320 +Ref: \includeonly597320 +Node: \input601613 +Node: Front/back matter602856 +Node: Table of contents etc.603189 +Node: \@dottedtocline609133 +Node: \addcontentsline610784 +Node: \addtocontents613971 +Node: \contentsline616264 +Node: \nofiles618154 +Node: \numberline618937 +Node: Indexes620165 +Node: Produce the index manually623055 +Node: \index624243 +Node: makeindex629682 +Ref: makeindex preamble631398 +Ref: makeindex postamble631552 +Ref: makeindex group skip631656 +Ref: makeindex letheadflag632016 +Ref: makeindex lethead prefix632493 +Ref: makeindex lethead suffix632653 +Ref: makeindex item 0632809 +Ref: makeindex item 1632897 +Ref: makeindex item 2632980 +Ref: makeindex item 01633066 +Ref: makeindex item x1633179 +Ref: makeindex item 12633396 +Ref: makeindex item x2633512 +Ref: makeindex delim 0633680 +Ref: makeindex delim 1633818 +Ref: makeindex delim 2633956 +Ref: makeindex delim n634090 +Ref: makeindex delim r634233 +Ref: makeindex line max634349 +Ref: makeindex indent space634492 +Ref: makeindex indent length634595 +Ref: makeindex page precedence634792 +Node: \printindex635873 +Node: Glossaries636362 +Node: \newglossaryentry638381 +Node: \gls639884 +Node: Letters640698 +Node: \address644400 +Node: \cc645227 +Node: \closing645681 +Node: \encl645999 +Node: \location646425 +Node: \makelabels646697 +Node: \name649074 +Node: \opening649319 +Node: \ps649608 +Node: \signature649905 +Node: \telephone651177 +Node: Input/output651550 +Node: \openin & \openout652280 +Ref: \openin652427 +Ref: \openout652427 +Ref: \closein652427 +Ref: \closeout652427 +Node: \read655144 +Node: \typein656371 +Node: \typeout657655 +Node: \write658743 +Node: \write and security663650 +Node: \message664606 +Node: \wlog666487 +Node: \write18666996 +Node: Command line interface670595 +Ref: Command line670759 +Node: Command line options672978 +Ref: interaction modes674025 +Ref: output directory675035 +Node: Command line input676810 +Node: Jobname678957 +Node: Recovering from errors682337 +Node: Document templates683813 +Node: beamer template684247 +Node: article template684897 +Node: book template685364 +Node: Larger book template685847 +Node: Index687429 +Ref: Command Index687515 End Tag Table |