From 861d2951cdf9fd9a8dc0dc8dd4cc7f83f27c16a3 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 18 Oct 2013 23:26:15 +0000 Subject: tex-refs (18oct13) git-svn-id: svn://tug.org/texlive/trunk@31946 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/doc/generic/tex-refs/tex-refs.txt | 8776 ++++++++++++++++++++ 1 file changed, 8776 insertions(+) create mode 100644 Master/texmf-dist/doc/generic/tex-refs/tex-refs.txt (limited to 'Master/texmf-dist/doc/generic/tex-refs/tex-refs.txt') diff --git a/Master/texmf-dist/doc/generic/tex-refs/tex-refs.txt b/Master/texmf-dist/doc/generic/tex-refs/tex-refs.txt new file mode 100644 index 00000000000..2aa806cb0b6 --- /dev/null +++ b/Master/texmf-dist/doc/generic/tex-refs/tex-refs.txt @@ -0,0 +1,8776 @@ +References for TeX and Friends + +Michael Wiedmann + + + + Copyright © ? Stephen Gilmore + + Copyright © ? Torsten Martinsen + + Copyright © 1988, 1994 Free Software Foundation, Inc. + + Copyright © 1994 - 1996 Torsten Martinsen + + Copyright © 2002, 2003 Peter Karp, Michael Wiedmann + + Copyright © 2004 - 2012 Michael Wiedmann + + License + + Permission is granted to copy, distribute and/or modify this + document under the terms of the GNU Free Documentation License, + Version 1.2 or any later version published by the Free Software + Foundation; with no Invariant Sections, no Front-Cover Texts, + and no Back-Cover Texts. + Revision History + Revision 0.4.1 2012-12-03 + Removed obsolete file still referenced in Makefile (no visible + changes) + Revision 0.2.0 2003-01-11 + License changed to GNU Free Documentation License. + Revision 0.0.1 2002-06-21 + This version was adapted from the edition 1.6 of the LaTeX2e + documentation, converted to DocBook XML using texi2db, and + further edited manually. + __________________________________________________________ + + Table of Contents + + Preface + Credits + 1 TeX + + 1 PlainTeX + + 1.1 Overview + + 2 LaTeX + + 2.1 Options + 2.2 Overview of LaTeX and Local Guide + 2.3 Commands + 2.4 Parameters + + 3 LaTeX Packages + + 3.1 amsmath + 3.2 dcolumn + 3.3 float + 3.4 fontenc + 3.5 german + 3.6 graphics + 3.7 hyperref + 3.8 inputenc + 3.9 KOMA-Script + 3.10 mathpazo + 3.11 varioref + 3.12 Several Small Packages + + 4 Generic Packages + + 4.1 PiCTeX (tbd.) + 4.2 PSTricks + + 5 fontinst (tbd.) + 6 ConTeXt (tbd.) + + 6.1 Overview + + 7 Texinfo (tbd.) + + 2 pdfTeX + + 1 Options + + 1.1 --file-line-error-style + 1.2 --fmt format + 1.3 --help + 1.4 --ini + 1.5 --interaction mode + 1.6 --ipc + 1.7 --ipc-start + 1.8 --jobname name + 1.9 --kpathsea-debug bitmask + 1.10 --maketex fmt + 1.11 --no-maketex fmt + 1.12 --output-comment string + 1.13 --parse-first-line + 1.14 --progname name + 1.15 --recorder + 1.16 --shell-escape + 1.17 --translate-file tcxname + 1.18 --version + + 2 Environment + + 3 Metafont (tbd.) + 4 MetaPost + + 1 Options + + 1.1 --file-line-error-style + 1.2 --help + 1.3 --ini + 1.4 --interaction mode + 1.5 --jobname name + 1.6 --kpathsea-debug bitmask + 1.7 --mem mem + 1.8 --parse-first-line + 1.9 --progname name + 1.10 --recorder + 1.11 -T + 1.12 --translate-file tcxname + 1.13 --troff + 1.14 --version + + 2 Environment + + 5 BibTeX + + 1 Parameters + 2 Command Qualifiers + 3 bib files + + 3.1 @STRING command + 3.2 Entry Format + 3.3 Entry Types + 3.4 Field Text + 3.5 Field Types + + 4 bst files + + 4.1 ABBRV.BST + 4.2 ALPHA.BST + 4.3 PLAIN.BST + 4.4 SAMPLE.BST + 4.5 UNSRT.BST + + 6 Make-Index + + 1 Options + + 1.1 -c + 1.2 -g + 1.3 -i + 1.4 -l + 1.5 -q + 1.6 -r + 1.7 -s sty + 1.8 -o ind + 1.9 -t log + 1.10 -p no + 1.11 -L + 1.12 -T + + 2 Style File + + 2.1 Input Style Specifiers + 2.2 Output Style Specifiers + + 3 Example + 4 Ordering + 5 Special Effects + + 7 xindy + + 1 Command List + + 1.1 Processing Commands + 1.2 Markup Commands + 1.3 Raw Index Interface + + 2 Invoking xindy + + 2.1 Command Line Options + 2.2 Search Path + + A Appendices + + 1 Bugs / Known Issues / Missing Features + 2 About this Document + 3 Release News + 4 GNU Free Documentation License + Index + + List of Tables + + 1.1 Options for \newcommand + 1.2 Options for \newenvironment + 1.3 Options for \newtheorem + 1.4 Commands in a tabbing environment + 1.5 Commands used inside a tabular environment + 1.6 Standard styles distributed with BibTeX + 1.7 Three environments that put LaTeX in math mode + 1.8 Math Miscellany + 1.9 Typefaces + 1.10 Standard type size commands + 1.11 Low-level font commands + 1.12 Special coordinates and angles + +Preface + + LaTeX2e is a document preparation system implemented as a macro + package for Donald E. Knuth's TeX typesetting program. + + LaTeX was originally conceived by Leslie Lamport. + + This updated LaTeX reference is by no means complete, but it's + a first step towards a more complete LaTeX reference! We + welcome if we'll get pointed to missing commands or even better + when you make additions and further improvements and send them + to the authors. + + TUG (TeX User Group) and DANTE (German TeX User Group) both + have excellent FAQ's which answer many questions or give great + pointers to additional resources both on the internet or in + books. Most if not all missing packages can also be found on + the CTAN servers. + + This reference is not meant to replace the package + documentation or the standard literature like the LaTeX + handbook and the LaTeX companion. Look there for detailed + descriptions of the commands and even mostly more options and + examples. + + The authors intend to extend this documentation to other TeX + related packages (e.g. ConTeXt, MetaPost, Metafont, etc.). + Contributions are very welcome! + +Credits + + The following people have contributed substantial parts to this + documentation project or helped in some other way (listed + alphabetically): + * Karl Berry + * Wolfgang Borgert + * Ramon Casellas + * Holger Danielsson + * James Devenish + * Hubert Gaesslein + * Peter Karp + * Rolf Niepraschk + * Hans Fredrik Nordhaug + * Simon Pepping + * Bob Stayton + * Herbert Voss + +Chapter 1. TeX + + Table of Contents + + 1 PlainTeX + + 1.1 Overview + + 2 LaTeX + + 2.1 Options + 2.2 Overview of LaTeX and Local Guide + 2.3 Commands + 2.4 Parameters + + 3 LaTeX Packages + + 3.1 amsmath + 3.2 dcolumn + 3.3 float + 3.4 fontenc + 3.5 german + 3.6 graphics + 3.7 hyperref + 3.8 inputenc + 3.9 KOMA-Script + 3.10 mathpazo + 3.11 varioref + 3.12 Several Small Packages + + 4 Generic Packages + + 4.1 PiCTeX (tbd.) + 4.2 PSTricks + + 5 fontinst (tbd.) + 6 ConTeXt (tbd.) + + 6.1 Overview + + 7 Texinfo (tbd.) + +1 PlainTeX + +1.1 Overview + + For a really excellent reference of all TeX primitive control + sequences see David Bausum's TeX Primitive Control Sequences. + +2 LaTeX + +Note + + The original file latex2e.texi contains the following copyright + and permission notice: + + “Permission is granted to make and distribute verbatim copies + of this manual provided the copyright notice and this + permission notice are preserved on all copies.” + + “Permission is granted to copy and distribute modified versions + of this manual under the conditions for verbatim copying, + provided that the entire resulting derived work is distributed + under the terms of a permission notice identical to this one.” + +2.1 Options + + LaTeX understands the following command line options. + +2.1.1 -file-line-error-style + + Print error messages in the form file:line:error. + +2.1.2 -fmt=FMTNAME + + Use FMTMAME instead of program name or a %& line. + +2.1.3 -ini + + Be initex, for dumping formats; this is implicitly true if the + program is called as initex. + +2.1.4 -interaction=STRING + + Set interaction mode + (STRING=batchmode/nonstopmode/scrollmode/errorstopmode). + +2.1.5 -ipc + + Send DVI output to a socket as well as the usual output file. + + Note: not available on all systems. + +2.1.6 -ipc-start + + As -ipc, and also start the server at the other end. + + Note: not available on all systems. + +2.1.7 -jobname=STRING + + Set the job name to STRING. + +2.1.8 -kpathsea-debug=NUMBER + + Sets path searching debugging flags according to the bits of + NUMBER. + +2.1.9 [-no]-maketex=FMT + + Disable/enable mktexFMT generation (FMT=tex/tfm). + +2.1.10 -mltex + + Enable MLTeX extensions such as \charsubdef. + +2.1.11 -output-comment=STRING + + use STRING for DVI file comment instead of date. + +2.1.12 -parse-first-line + + Parse of the first line of the input file. + +2.1.13 -progname=STRING + + Set program (and fmt) name to STRING. + +2.1.14 -recorder + + Enable filename recorder. + +2.1.15 -shell-escape + + Enable \write18{SHELL COMMAND}. + +2.1.16 -src-specials + + Insert source specials into the DVI file. + +2.1.17 -src-specials=WHERE + + Insert source specials in certain places of the DVI file. WHERE + is a comma-separated value list: cr display hbox math par + parend vbox. + +2.1.18 -translate-file=TCXNAME + + Use the TCX file TCXNAME. + +2.1.19 -help + + Display this help and exit. + +2.1.20 -version + + Output version information and exit. + +2.2 Overview of LaTeX and Local Guide + + The LaTeX command typesets a file of text using the TeX program + and the LaTeX Macro package for TeX. To be more specific, it + processes an input file containing the text of a document with + interspersed commands that describe how the text should be + formatted. It produces at least three files as output: + 1. A Device Independent, or .dvi file. This contains commands + that can be translated into commands for a variety of + output devices. You can view the output of LaTeX by using a + program such as xdvi, which actually uses the .dvi file. + 2. A transcript or .log file that contains summary information + and diagnostic messages for any errors discovered in the + input file. + 3. An auxiliary or .aux file. This is used by LaTeX itself, + for things such as sectioning. + + For a description of what goes on inside TeX, you should + consult The TeXbook by Donald E. Knuth, ISBN 0-201-13448-9, + published jointly by the American Mathematical Society and + Addison-Wesley Publishing Company. + + For a description of LaTeX, you should consult: + + LaTeX: A Document Preparation System, by Leslie Lamport, + Addison-Wesley Publishing Company, 2nd edition, 1994. + + The LaTeX Companion, by Michel Goossens, Frank Mittelbach, and + Alexander Samarin, Addison-Wesley, 1994. + +2.3 Commands + + A LaTeX command begins with the command name, which consists of + a \ followed by either (a) a string of letters or (b) a single + non-letter. Arguments contained in square brackets, [], are + optional while arguments contained in braces, {}, are required. + + NOTE: LaTeX is case sensitive. Enter all commands in lower case + unless explicitly directed to do otherwise. + +2.3.1 Counters + + Everything LaTeX numbers for you has a counter associated with + it. The name of the counter is the same as the name of the + environment or command that produces the number, except with no + \ (enumi - enumiv are used for the nested enumerate + environment). Below is a list of the counters used in LaTeX's + standard document classes to control numbering. +part paragraph figure enumi +chapter subparagraph table enumii +section page footnote enumiii +subsection equation mpfootnote enumiv +subsubsection + +\addtocounter + + The \addtocounter command increments the counter by the amount + specified by the value argument. The value argument can be + negative. + +\alph{counter} + + This command causes the value of the counter to be printed in + alphabetic characters. The \alph command uses lower case + alphabetic alphabetic characters, i.e., a, b, c... while the + \Alph command uses upper case alphabetic characters, i.e., A, + B, C.... + +\arabic{counter} + + The \arabic command causes the value of the counter to be + printed in Arabic numbers, i.e., 3. + +\fnsymbol{counter} + + The \fnsymbol command causes the value of the counter to be + printed in a specific sequence of nine symbols that can be used + for numbering footnotes. + + NB. counter must have a value between 1 and 9 inclusive. + +\newcounter{foo}[counter] + + The \newcounter command defines a new counter named foo. The + counter is initialized to zero. + + The optional argument [counter] causes the counter foo to be + reset whenever the counter named in the optional argument is + incremented. + +\refstepcounter{counter} + + The \refstepcounter command works like \stepcounter. See + \stepcounter, except it also defines the current \ref value to + be the result of \thecounter. + +\roman{counter} + + This command causes the value of the counter to be printed in + Roman numerals. The \roman command uses lower case Roman + numerals, i.e., i, ii, iii..., while the \Roman command uses + upper case Roman numerals, i.e., I, II, III.... + +\stepcounter{counter} + + The \stepcounter command adds one to the counter and resets all + subsidiary counters. + +\setcounter{counter}{value} + + The \setcounter command sets the value of the counter to that + specified by the value argument. + +\usecounter{counter} + + The \usecounter command is used in the second argument of the + list environment to allow the counter specified to be used to + number the list items. + +\value{counter} + + The \value command produces the value of the counter named in + the mandatory argument. It can be used where LaTeX expects an + integer or number, such as the second argument of a \setcounter + or \addtocounter command, or in: +\hspace{\value{foo}\parindent} + + It is useful for doing arithmetic with counters. + +2.3.2 Cross References + + One reason for numbering things like figures and equations is + to refer the reader to them, as in See Figure 3 for more + details. A smarter version of the cross reference commands is + available in the package varioref. + +\label{key} + + A \label command appearing in ordinary text assigns to the key + the number of the current sectional unit; one appearing inside + a numbered environment assigns that number to the key. + + A key can consist of any sequence of letters, digits, or + punctuation characters. Upper and lowercase letters are + different. + + To avoid accidentally creating two labels with the same name, + it is common to use labels consisting of a prefix and a suffix + separated by a colon. The prefixes conventionally used are + * cha for chapters + * sec for lower-level sectioning commands + * fig for figures + * tab for tables + * eq for equations + + Thus, a label for a figure would look like fig:bandersnatch. + +\pageref{key} + + The \pageref command produces the page number of the place in + the text where the corresponding \label command appears. ie. + where \label{key} appears. For a smart version see \vpageref. + +\ref{key} + + The \ref command produces the number of the sectional unit, + equation number, ... of the corresponding \label command. For a + smart version see \vref. + +2.3.3 Definitions + +\newcommand + +\newcommand{cmd}[args]{definition} +\newcommand{cmd}[args][default]{definition} +\renewcommand{cmd}[args]{definition} +\renewcommand{cmd}[args][default]{definition} + + These commands define (or redefine) a command. + + Table 1.1. Options for \newcommand + cmd A command name beginning with a \. For \newcommand it must + not be already defined and must not begin with \end; for + \renewcommand it must already be defined. + args An integer from 1 to 9 denoting the number of arguments of + the command being defined. The default is for the command to + have no arguments. + def If this optional parameter is present, it means that the + command's first argument is optional. The default value of the + optional argument is def. + definition The text to be substituted for every occurrence of + cmd; a parameter of the form #n in cmd is replaced by the text + of the nth argument when this substitution takes place. + +\newenvironment + +\newenvironment{nam}[args]{begdef}{enddef} +\newenvironment{nam}[args][default]{begdef}{enddef} +\renewenvironment{nam}[args]{begdef}{enddef} + + These commands define or redefine an environment. + + Table 1.2. Options for \newenvironment + nam The name of the environment. For \newenvironment there must + be no currently defined environment by that name, and the + command \nam must be undefined. For \renewenvironment the + environment must already be defined. + args An integer from 1 to 9 denoting the number of arguments of + the newly-defined environment. The default is no arguments. + Arguments can only be used in te {begdef} part. + default If this is specified, the first argument is optional, + and default gives the default value for that argument. + begdef The text substituted for every occurrence of + \begin{nam}; a parameter of the form #n in cmd is replaced by + the text of the nth argument when this substitution takes + place. + enddef The text substituted for every occurrence of \end{nam}. + It may not contain any argument parameters. + +\newtheorem + +\newtheorem{env_name}{caption}[within] +\newtheorem{env_name}[numbered_like]{caption} + + This command defines a theorem-like environment. + + Table 1.3. Options for \newtheorem + env_name The name of the environment to be defined. A string of + letters. It must not be the name of an existing environment or + counter. + caption The text printed at the beginning of the environment, + right before the number. This may simply say Theorem, for + example. + within The name of an already defined counter, usually of a + sectional unit. Provides a means of resetting the new theorem + counter within the sectional unit. + numbered_like The name of an already defined theorem-like + environment. + + The \newtheorem command may have at most one optional argument. + +\newfont + + \newfont{cmd}{font_name} + + Defines the command name cmd, which must not be currently + defined, to be a declaration that selects the font named + font_name to be the current font. + +2.3.4 Document Classes + + Valid LaTeX document classes include: + * article + * report + * letter + * book + * slides + + Other document classes are often available. See Overview, for + details. They are selected with the following command: + + \documentclass [options] {class} + + All the standard classes (except slides) accept the following + options for selecting the typeface size (10pt is default): + + 10pt, 11pt, 12pt + + All classes accept these options for selecting the paper size + (default is letter): + + a4paper, a5paper, b5paper, letterpaper, legalpaper, + executivepaper + + Miscellaneous options: + * landscape --- selects landscape format. Default is + portrait. + * titlepage, notitlepage --- selects if there should be a + separate title page. + * leqno --- equation number on left side of equations. + Default is right side. + * fleqn --- displayed formulas flush left. Default is + centered. + * openbib --- use open bibliography format. + * draft, final --- mark/do not mark overfull boxes with a + rule. Default is final. + + These options are not available with the slides class: + * oneside, twoside --- selects one- or twosided layout. + Default is oneside, except for the book class. + * openright, openany --- determines if a chapter should start + on a right-hand page. Default is openright for book. + * onecolumn, twocolumn --- one or two columns. Defaults to + one column. + + The slides class offers the option clock for printing the time + at the bottom of each note. + + If you specify more than one option, they must be separated by + a comma. + + Additional packages are loaded by a + + \usepackage[options]{pkg} + + command. If you specify more than one package, they must be + separated by a comma. + + Any options given in the \documentclass command that are + unknown by the selected document class are passed on to the + packages loaded with \usepackage. + +2.3.5 Layout + + Miscellaneous commands for controlling the general layout of + the page. + +\flushbottom + + The \flushbottom declaration makes all text pages the same + height, adding extra vertical space when necessary to fill out + the page. + + This is the standard if twocolumn mode is selected. + +\onecolumn + + The \onecolumn declaration starts a new page and produces + single-column output. + +\raggedbottom + + The \raggedbottom declaration makes all pages the height of the + text on that page. No extra vertical space is added. + +\twocolumn + + \twocolumn[text] + + The \twocolumn declaration starts a new page and produces + two-column output. If the optional text argument is present, it + is typeset in one-column mode. + +2.3.6 Environments + + LaTeX provides a number of different paragraph-making + environments. Each environment begins and ends in the same + manner. +\begin{environment-name} + . + . + . +\end{environment-name} + +array + +\begin{array}{col1col2...coln} +column 1 entry & column 2 entry ... & column n entry \\ + . + . + . +\end{array} + + Math arrays are produced with the array environment. It has a + single mandatory argument describing the number of columns and + the alignment within them. Each column, coln, is specified by a + single letter that tells how items in that row should be + formatted. + * c --- for centered + * l --- for flush left + * r --- for flush right + + Column entries must be separated by an &. Column entries may + include other LaTeX commands. Each row of the array must be + terminated with the string \\. + + Note that the array environment can only be used in math mode, + so normally it is used inside an equation environment. + +center + +\begin{center} +Text on line 1 \\ +Text on line 2 \\ + . + . + . +\end{center} + + The center environment allows you to create a paragraph + consisting of lines that are centered within the left and right + margins on the current page. Each line must be terminated with + the string \\. + +\centering + + This declaration corresponds to the center environment. This + declaration can be used inside an environment such as quote or + in a parbox. The text of a figure or table can be centered on + the page by putting a \centering command at the beginning of + the figure or table environment. + + Unlike the center environment, the \centering command does not + start a new paragraph; it simply changes how LaTeX formats + paragraph units. To affect a paragraph unit's format, the scope + of the declaration must contain the blank line or \end command + (of an environment like quote) that ends the paragraph unit. + +description + +\begin{description} +\item [label] First item +\item [label] Second item + . + . + . +\end{description} + + The description environment is used to make labelled lists. The + label is bold face and flushed right. + +enumerate + +\begin{enumerate} +\item First item +\item Second item + . + . + . +\end{enumerate} + + The enumerate environment produces a numbered list. + Enumerations can be nested within one another, up to four + levels deep. They can also be nested within other + paragraph-making environments. + + Each item of an enumerated list begins with an \item command. + There must be at least one \item command within the + environment. + + The enumerate environment uses the enumi through enumiv + counters (see Counters). The type of numbering can be changed + by redefining \theenumi etc. + +eqnarray + +\begin{eqnarray} +math formula 1 \\ +math formula 2 \\ + . + . + . +\end{eqnarray} + + The eqnarray environment is used to display a sequence of + equations or inequalities. It is very much like a three-column + array environment, with consecutive rows separated by \\ and + consecutive items within a row separated by an &. + + An equation number is placed on every line unless that line has + a \nonumber command. + + The command \lefteqn is used for splitting long formulas across + lines. It typesets its argument in display style flush left in + a box of zero width. + +equation + +\begin{equation} + math formula +\end{equation} + + The equation environment centers your equation on the page and + places the equation number in the right margin. + +figure + +\begin{figure}[placement] + + body of the figure + +\caption{figure title} +\end{figure} + + Figures are objects that are not part of the normal text, and + are usually floated to a convenient place, like the top of a + page. Figures will not be split between two pages. + + The optional argument [placement] determines where LaTeX will + try to place your figure. There are four places where LaTeX can + possibly put a float: + 1. h (Here) - at the position in the text where the figure + environment appears. + 2. t (Top) - at the top of a text page. + 3. b (Bottom) - at the bottom of a text page. + 4. p (Page of floats) - on a separate float page, which is a + page containing no text, only floats. + + The standard report and article classes use the default + placement tbp. + + The body of the figure is made up of whatever text, LaTeX + commands, etc. you wish. The \caption command allows you to + title your figure. + +flushleft + +\begin{flushleft} +Text on line 1 \\ +Text on line 2 \\ + . + . + . +\end{flushleft} + + The flushleft environment allows you to create a paragraph + consisting of lines that are flushed left, to the left-hand + margin. Each line must be terminated with the string \\. + +\raggedright + + This declaration corresponds to the flushleft environment. This + declaration can be used inside an environment such as quote or + in a parbox. + + Unlike the flushleft environment, the \raggedright command does + not start a new paragraph; it simply changes how LaTeX formats + paragraph units. To affect a paragraph unit's format, the scope + of the declaration must contain the blank line or \end command + (of an environment like quote) that ends the paragraph unit. + +flushright + +\begin{flushright} +Text on line 1 \\ +Text on line 2 \\ + . + . + . +\end{flushright} + + The flushright environment allows you to create a paragraph + consisting of lines that are flushed right, to the right-hand + margin. Each line must be terminated with the string \\. + +\raggedleft + + This declaration corresponds to the flushright environment. + This declaration can be used inside an environment such as + quote or in a parbox. + + Unlike the flushright environment, the \raggedleft command does + not start a new paragraph; it simply changes how LaTeX formats + paragraph units. To affect a paragraph unit's format, the scope + of the declaration must contain the blank line or \end command + (of an environment like quote) that ends the paragraph unit. + +itemize + +\begin{itemize} +\item First item +\item Second item + . + . + . +\end{itemize} + + The itemize environment produces a bulleted list. Itemizations + can be nested within one another, up to four levels deep. They + can also be nested within other paragraph-making environments. + + Each item of an itemized list begins with an \item command. + There must be at least one \item command within the + environment. + + The itemize environment uses the itemi through itemiv counters + (see Counters). The type of numbering can be changed by + redefining \theitemi etc. + +letter + + This environment is used for creating letters. See Letters. + +list + + The list environment is a generic environment which is used for + defining many of the more specific environments. It is seldom + used in documents, but often in macros. +\begin{list}{label}{spacing} +\item First item +\item Second item + . + . + . +\end{list} + + The {label} argument specifies how items should be labelled. + This argument is a piece of text that is inserted in a box to + form the label. This argument can and usually does contain + other LaTeX commands. + + The {spacing} argument contains commands to change the spacing + parameters for the list. This argument will most often be null, + i.e., {}. This will select all default spacing which should + suffice for most cases. + +minipage + +\begin{minipage}[position][height][inner-pos]{width} + text +\end{minipage} + + The minipage environment is similar to a \parbox command. It + takes the same optional position argument and mandatory width + argument. You may use other paragraph-making environments + inside a minipage. + + Footnotes in a minipage environment are handled in a way that + is particularly useful for putting footnotes in figures or + tables. A \footnote or \footnotetext command puts the footnote + at the bottom of the minipage instead of at the bottom of the + page, and it uses the mpfootnote counter instead of the + ordinary footnote counter See Counters. + + NOTE: Don't put one minipage inside another if you are using + footnotes; they may wind up at the bottom of the wrong + minipage. + +picture + +\begin{picture}(width,height)(x offset,y offset) + . + . + picture commands + . + . +\end{picture} + + The picture environment allows you to create just about any + kind of picture you want containing text, lines, arrows and + circles. You tell LaTeX where to put things in the picture by + specifying their coordinates. A coordinate is a number that may + have a decimal point and a minus sign --- a number like 5, 2.3 + or -3.1416. A coordinate specifies a length in multiples of the + unit length \unitlength, so if \unitlength has been set to 1cm, + then the coordinate 2.54 specifies a length of 2.54 + centimetres. You can change the value of \unitlength anywhere + you want, using the \setlength command, but strange things will + happen if you try changing it inside the picture environment. + + A position is a pair of coordinates, such as (2.4,-5), + specifying the point with x-coordinate 2.4 and y-coordinate -5. + Coordinates are specified in the usual way with respect to an + origin, which is normally at the lower-left corner of the + picture. Note that when a position appears as an argument, it + is not enclosed in braces; the parentheses serve to delimit the + argument. + + The picture environment has one mandatory argument, which is a + position. It specifies the size of the picture. The environment + produces a rectangular box with width and height determined by + this argument's x- and y-coordinates. + + The picture environment also has an optional position argument, + following the size argument, that can change the origin. + (Unlike ordinary optional arguments, this argument is not + contained in square brackets.) The optional argument gives the + coordinates of the point at the lower-left corner of the + picture (thereby determining the origin). For example, if + \unitlength has been set to 1mm, the command +\begin{picture}(100,200)(10,20) + + produces a picture of width 100 millimetres and height 200 + millimetres, whose lower-left corner is the point (10,20) and + whose upper-right corner is therefore the point (110,220). When + you first draw a picture, you will omit the optional argument, + leaving the origin at the lower-left corner. If you then want + to modify your picture by shifting everything, you just add the + appropriate optional argument. + + The environment's mandatory argument determines the nominal + size of the picture. This need bear no relation to how large + the picture really is; LaTeX will happily allow you to put + things outside the picture, or even off the page. The picture's + nominal size is used by LaTeX in determining how much room to + leave for it. + + Everything that appears in a picture is drawn by the \put + command. The command +\put (11.3,-.3){...} + + puts the object specified by ... in the picture, with its + reference point at coordinates (11.3,-.3). The reference points + for various objects will be described below. + + The \put command creates an LR box. You can put anything in the + text argument of the \put command that you'd put into the + argument of an \mbox and related commands. When you do this, + the reference point will be the lower left corner of the box. + + Picture commands: + +\circle{diameter}, \circle*{diameter} + + The \circle command produces a circle with a diameter as close + to the specified one as possible. If the *-form of the command + is used, LaTeX draws a solid circle. + + Note that only circles up to 40 pt can be drawn. + +\dashbox + + Draws a box with a dashed line. + + \dashbox{dash_length}(width,height){...} + + The \dashbox has an extra argument which specifies the width of + each dash. A dashed box looks best when the width and height + are multiples of the dash_length. + +\frame{...} + + The \frame command puts a rectangular frame around the object + specified in the argument. The reference point is the bottom + left corner of the frame. No extra space is put between the + frame and the object. + +\framebox(width,height)[position]{...} + + The \framebox command is exactly the same as the \makebox + command, except that it puts a frame around the outside of the + box that it creates. + + The framebox command produces a rule of thickness \fboxrule, + and leaves a space \fboxsep between the rule and the contents + of the box. + +\line(x slope,y slope){length} + + The \line command draws a line of the specified length and + slope. + + Note that LaTeX can only draw lines with slope = x/y, where x + and y have integer values from -6 through 6. + +\linethickness{dimension} + + Declares the thickness of horizontal and vertical lines in a + picture environment to be dimension, which must be a positive + length. It does not affect the thickness of slanted lines and + circles, or the quarter circles drawn by \oval to form the + corners of an oval. + +\makebox(width,height)[position]{...} + + The \makebox command for the picture environment is similar to + the normal \makebox command except that you must specify a + width and height in multiples of \unitlength. + + The optional argument, [position], specifies the quadrant that + your text appears in. You may select up to two of the + following: + * t - Moves the item to the top of the rectangle + * b - Moves the item to the bottom + * l - Moves the item to the left + * r - Moves the item to the right + + See \makebox. + +\multiput(x coord,y coord)(delta x,delta y){number of copies}{object} + + The \multiput command can be used when you are putting the same + object in a regular pattern across a picture. + +\oval(width,height)[portion] + + The \oval command produces a rectangle with rounded corners. + The optional argument, [portion], allows you to select part of + the oval. + * t - Selects the top portion + * b - Selects the bottom portion + * r - Selects the right portion + * l - Selects the left portion + + Note that the corners of the oval are made with quarter circles + with a maximum radius of 20 pt, so large ovals will look more + like boxes with rounded corners. + +\put(x coord,y coord){ ... } + + The \put command places the item specified by the mandatory + argument at the given coordinates. + +\shortstack[position]{... \\ ... \\ ...} + + The \shortstack command produces a stack of objects. The valid + positions are: + * r - Moves the objects to the right of the stack + * l - Moves the objects to the left of the stack + * c - Moves the objects to the centre of the stack (default) + +\vector(x slope,y slope){length} + + The \vector command draws a line with an arrow of the specified + length and slope. The x and y values must lie between -4 and + +4, inclusive. + +quotation + +\begin{quotation} + text +\end{quotation} + + The margins of the quotation environment are indented on the + left and the right. The text is justified at both margins and + there is paragraph indentation. Leaving a blank line between + text produces a new paragraph. + +quote + +\begin{quote} + text +\end{quote} + + The margins of the quote environment are indented on the left + and the right. The text is justified at both margins. Leaving a + blank line between text produces a new paragraph. + +tabbing + +\begin{tabbing} +text \= more text \= still more text \= last text \\ +second row \> \> more \\ + . + . + . +\end{tabbing} + + The tabbing environment provides a way to align text in + columns. It works by setting tab stops and tabbing to them much + the way you do with an ordinary typewriter. + + It is best suited for cases where the width of each column is + constant and known in advance. + + This environment can be broken across pages, unlike the tabular + environment. + + The following commands can be used inside a tabbing + environment: + + Table 1.4. Commands in a tabbing environment + \= Sets a tab stop at the current position. + \> Advances to the next tab stop. + \< This command allows you to put something to the left of the + local margin without changing the margin. Can only be used at + the start of the line. + \+ Moves the left margin of the next and all the following + commands one tab stop to the right. + \- Moves the left margin of the next and all the following + commands one tab stop to the left. + \' Moves everything that you have typed so far in the current + column, i.e. everything from the most recent \>, \<, \', \\, or + \kill command, to the right of the previous column, flush + against the current column's tab stop. + \` 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 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 \` and the command that ends the line. + \kill Sets tab stops without producing text. Works just like \\ + except that it throws away the current line instead of + producing output for it. The effect of any \=, \+ or \- + commands in that line remain in effect. + \pushtabs Saves all current tab stop positions. Useful for + temporarily changing tab stop positions in the middle of a + tabbing environment. + \poptabs Restores the tab stop positions saved by the last + \pushtabs. + \a In a tabbing environment, the commands \=, \' and \` do not + produce accents as normal. Instead, the commands \a=, \a' and + \a` are used. + + This example typesets a Pascal function in a traditional + format: +\begin{tabbing} +function \= fact(n : integer) : integer;\\ + \> begin \= \+ \\ + \> if \= n $>$ 1 then \+ \\ + fact := n * fact(n-1) \- \\ + else \+ \\ + fact := 1; \-\- \\ + end;\\ +\end{tabbing} + +table + +\begin{table}[placement] + + body of the table + +\caption{table title} +\end{table} + + Tables are objects that are not part of the normal text, and + are usually floated to a convenient place, like the top of a + page. Tables will not be split between two pages. + + The optional argument [placement] determines where LaTeX will + try to place your table. There are four places where LaTeX can + possibly put a float: + * h : Here - at the position in the text where the table + environment appears. + * t : Top - at the top of a text page. + * b : Bottom - at the bottom of a text page. + * p : Page of floats - on a separate float page, which is a + page containing no text, only floats. + + The standard report and article classes use the default + placement [tbp]. + + The body of the table is made up of whatever text, LaTeX + commands, etc., you wish. The \caption command allows you to + title your table. + +tabular + +\begin{tabular}[pos]{cols} +column 1 entry & column 2 entry ... & column n entry \\ + . + . + . +\end{tabular} + + or +\begin{tabular*}{width}[pos]{cols} +column 1 entry & column 2 entry ... & column n entry \\ + . + . + . +\end{tabular*} + + These environments produce a box consisting of a sequence of + rows of items, aligned vertically in columns. The mandatory and + optional arguments consist of: + + Table 1.5. Commands used inside a tabular environment + width Specifies the width of the tabular* environment. There + must be rubber space between columns that can stretch to fill + out the specified width. + pos Specifies the vertical position; default is alignment on + the centre of the environment. + * t - align on top row + * b - align on bottom row + + cols Specifies the column formatting. It consists of a sequence + of the following specifiers, corresponding to the sequence of + columns and intercolumn material. + * l - A column of left-aligned items. + * r - A column of right-aligned items. + * c - A column of centred items. + * | - A vertical line the full height and depth of the + environment. + * @{text} - This inserts text in every row. An @-expression + suppresses the intercolumn space normally inserted between + columns; any desired space between the inserted text and + the adjacent items must be included in text. An + \extracolsep{wd} command in an @-expression causes an extra + space of width wd to appear to the left of all subsequent + columns, until countermanded by another \extracolsep + command. Unlike ordinary intercolumn space, this extra + space is not suppressed by an @-expression. An \extracolsep + command can be used only in an @-expression in the cols + argument. + * p{wd} - Produces a column with each item typeset in a + parbox of width wd, as if it were the argument of a + \parbox[t]{wd} command. However, a \\ may not appear in the + item, except in the following situations: + 1. inside an environment like minipage, array, or + tabular. + 2. inside an explicit \parbox. + 3. in the scope of a \centering, \raggedright, or + \raggedleft declaration. The latter declarations must + appear inside braces or an environment when used in a + p-column element. + * *{num}{cols} - Equivalent to num copies of cols, where num + is any positive integer and cols is any list of + column-specifiers, which may contain another *-expression. + + These commands can be used inside a tabular environment: + +\cline{i-j} + + The \cline command draws horizontal lines across the columns + specified, beginning in column i and ending in column j, which + are identified in the mandatory argument. + +\hline + + The \hline command will draw a horizontal line the width of the + table. It's most commonly used to draw a line at the top, + bottom, and between the rows of the table. + +\multicolumn + + \multicolumn{cols}{pos}{text} + + The \multicolumn is used to make an entry that spans several + columns. The first mandatory argument, cols, specifies the + number of columns to span. The second mandatory argument, pos, + specifies the formatting of the entry; c for centred, l for + flushleft, r for flushright. The third mandatory argument, + text, specifies what text is to make up the entry. + +\vline + + The \vline command will draw a vertical line extending the full + height and depth of its row. An \hfill command can be used to + move the line to the edge of the column. It can also be used in + an @-expression. + +thebibliography + +\begin{thebibliography}{widest-label} +\bibitem[label]{cite_key} + . + . + . +\end{thebibliography} + + The thebibliography environment produces a bibliography or + reference list. In the article class, this reference list is + labelled References; in the report class, it is labelled + Bibliography. + * widest-label: Text that, when printed, is approximately as + wide as the widest item label produces by the \bibitem + commands. + +\bibitem[label]{cite_key} + + The \bibitem command generates an entry labelled by label. If + the label argument is missing, a number is generated as the + label, using the enumi counter. The cite_key is any sequence of + letters, numbers, and punctuation symbols not containing a + comma. This command writes an entry on the .aux file containing + cite_key and the item's label. When this .aux file is read by + the \begin{document} command, the item's label is associated + with cite_key, causing the reference to cite_key by a \cite + command to produce the associated label. + +\cite[text]{key_list} + + The key_list argument is a list of citation keys. This command + generates an in-text citation to the references associated with + the keys in key_list by entries on the .aux file read by the + \begin{document} command. + + The optional text argument will appear after the citation, i.e. + \cite[p.~2f.]{knuth} might produce `[Knuth, p. 2]'. + + The package cite.sty allows a line break in the \cite reference + and can sort numerical entries. + + overcite.sty makes citations like footnotes. + +\nocite{key_list} + + The \nocite command produces no text, but writes key_list, + which is a list of one or more citation keys, on the .aux file. + \nocite{*} uses all entries from the BibTeX database. + +Using BibTeX + + If you use the BibTeX program by Oren Patashnik (highly + recommended if you need a bibliography of more than a couple of + titles) to maintain your bibliography, you don't use the + thebibliography environment. Instead, you include the lines +\bibliographystyle{style} +\bibliography{bibfile} + + where style refers to a file style.bst, which defines how your + citations will look. + + Table 1.6. Standard styles distributed with BibTeX + alpha Sorted alphabetically. Labels are formed from name of + author and year of publication. + plain Sorted alphabetically. Labels are numeric. + unsrt Like plain, but entries are in order of citation. + abbrv Like plain, but more compact labels. + + In addition, numerous other BibTeX style files exist tailored + to the demands of various publications. + + The argument to \bibliography refers to the file bibfile.bib, + which should contain your database in BibTeX format. Only the + entries referred to via \cite and \nocite will be listed in the + bibliography. + +theorem + +\begin{theorem} + theorem text +\end{theorem} + + The theorem environment produces Theorem x in boldface followed + by your theorem text. + +titlepage + +\begin{titlepage} + text +\end{titlepage} + + The titlepage environment creates a title page, i.e. a page + with no printed page number or heading. It also causes the + following page to be numbered page one. Formatting the title + page is left to you. The \today command comes in handy for + title pages. + + Note that you can use the \maketitle (see \maketitle) command + to produce a standard title page. + +verbatim + +\begin{verbatim} + text +\end{verbatim} + + The verbatim environment is a paragraph-making environment that + gets LaTeX to print exactly what you type in. It turns LaTeX + into a typewriter with carriage returns and blanks having the + same effect that they would on a typewriter. + +\verb char literal_text char \verb*char literal_text char + + Typesets literal_text exactly as typed, including special + characters and spaces, using a typewriter (\tt) type style. + There may be no space between \verb or \verb* and char (space + is shown here only for clarity). The *-form differs only in + that spaces are printed + +verse + +\begin{verse} + text +\end{verse} + + The verse environment is designed for poetry, though you may + find other uses for it. + + The margins are indented on the left and the right. Separate + the lines of each stanza with \\, and use one or more blank + lines to separate the stanzas. + +2.3.7 Footnotes + + Footnotes can be produced in one of two ways. They can be + produced with one command, the \footnote command. They can also + be produced with two commands, the \footnotemark and the + \footnotetext commands. See the specific command for + information on why you would use one over the other. + +\footnote[number]{text} + + The \footnote command places the numbered footnote text at the + bottom of the current page. The optional argument, number, is + used to change the default footnote number. This command can + only be used in outer paragraph mode; i.e., you cannot use it + in sectioning commands like \chapter, in figures, tables or in + a tabular environment. + +\footnotemark + + The \footnotemark command puts the footnote number in the text. + This command can be used in inner paragraph mode. The text of + the footnote is supplied by the \footnotetext command. + + This command can be used to produce several consecutive + footnote markers referring to the same footnote by using + + \footnotemark[\value{footnote}] + + after the first \footnote command. + +\footnotetext[number]{text} + + The \footnotetext command produces the text to be placed at the + bottom of the page. This command can come anywhere after the + \footnotemark command. The \footnotetext command must appear in + outer paragraph mode. + + The optional argument, number, is used to change the default + footnote number. + +2.3.8 Lengths + + A length is a measure of distance. Many LaTeX commands take a + length as an argument. + +\newlength + + \newlength{\gnat} + + The \newlength command defines the mandatory argument, \gnat, + as a length command with a value of 0in. An error occurs if a + \gnat command already exists. + +\setlength + + \setlength{\gnat}{length} + + The \setlength command is used to set the value of a length + command. The length argument can be expressed in any terms of + length LaTeX understands, i.e., inches (in), millimetres (mm), + points (pt), etc. + +\addtolength + + \addtolength{\gnat}{length} + + The \addtolength command increments length command by the + amount specified in the length argument. It can be a negative + amount. + +\settodepth + + \settodepth{\gnat}{text} + + The \settodepth command sets the value of a length command + equal to the depth of the text argument. + +\settoheight + + \settoheight{\gnat}{text} + + The \settoheight command sets the value of a length command + equal to the height of the text argument. + +\settowidth + + \settowidth{\gnat}{text} + + The \settowidth command sets the value of a length command + equal to the width of the text argument. + +Predefined lengths + + \width + + \height + + \depth + + \totalheight + + These length parameters can be used in the arguments of the + box-making commands See Spaces & Boxes. They specify the + natural width etc. of the text in the box. \totalheight equals + \height + \depth. To make a box with the text stretched to + double the natural size, e.g., say + + \makebox[2\width]{Get a stretcher} + +2.3.9 Letters + + You can use LaTeX to typeset letters, both personal and + business. The letter document class is designed to make a + number of letters at once, although you can make just one if + you so desire. + + Your .tex source file has the same minimum commands as the + other document classes, i.e., you must have the following + commands as a minimum: +\documentclass{letter} +\begin{document} + ... letters ... +\end{document} + + Each letter is a letter environment, whose argument is the name + and address of the recipient. For example, you might have: +\begin{letter}{Mr. Joe Smith\\ 2345 Princess St.\\ Edinburgh, EH1 1AA} + ... +\end{letter} + + The letter itself begins with the \opening command. The text of + the letter follows. It is typed as ordinary LaTeX input. + Commands that make no sense in a letter, like \chapter, do not + work. The letter closes with a \closing command. + + After the closing, you can have additional material. The \cc + command produces the usual cc: .... There's also a similar + \encl command for a list of enclosures. With both these + commands, use \\ to separate the items. + + These commands are used with the letter class: + +\address + + \address{Return address} + + The return address, as it should appear on the letter and the + envelope. Separate lines of the address should be separated by + \\ commands. If you do not make an \address declaration, then + the letter will be formatted for copying onto your + organisation's standard letterhead. (See Overview, for details + on your local implementation). If you give an \address + declaration, then the letter will be formatted as a personal + letter. + +\cc + + \cc{Kate Schechter\\Rob McKenna} + + Generate a list of other persons the letter was sent to. Each + name is printed on a separate line. + +\closing + + \closing{text} + + The letter closes with a \closing command, i.e., +\closing{Best Regards,} + +\encl + + \encl{CV\\Certificates} + + Generate a list of enclosed material. + +\location + + \location{address} + + This modifies your organisation's standard address. This only + appears if the firstpage pagestyle is selected. + +\makelabels + + \makelabels{number} + + If you issue this command in the preamble, LaTeX will create a + sheet of address labels. This sheet will be output before the + letters. + +\name + + \name{June Davenport} + + Your name, used for printing on the envelope together with the + return address. + +\opening + + \opening{text} + + The letter begins with the \opening command. The mandatory + argument, text, is whatever text you wish to start your letter, + i.e., +\opening{Dear Joe,} + +\ps + + \ps + + Use this command before a postscript. + +\signature + + \signature{Harvey Swick} + + Your name, as it should appear at the end of the letter + underneath the space for your signature. Items that should go + on separate lines should be separated by \\ commands. + +\startbreaks + + \startbreaks + + Used after a \stopbreaks command to allow page breaks again. + +\stopbreaks + + \stopbreaks + + Inhibit page breaks until a \startbreaks command occurs. + +\telephone + + \telephone{number} + + This is your telephone number. This only appears if the + firstpage pagestyle is selected. + +2.3.10 Line & Page Breaking + + The first thing LaTeX does when processing ordinary text is to + translate your input file into a string of glyphs and spaces. + To produce a printed document, this string must be broken into + lines, and these lines must be broken into pages. In some + environments, you do the line breaking yourself with the \\ + command, but LaTeX usually does it for you. + +\\ + + \\[extra-space], \\*[extra-space] + + The \\ command tells LaTeX to start a new line. It has an + optional argument, extra-space, that specifies how much extra + vertical space is to be inserted before the next line. This can + be a negative amount. + + The \\* command is the same as the ordinary \\ command except + that it tells LaTeX not to start a new page after the line. + +\- + + The \- command tells LaTeX that it may hyphenate the word at + that point. LaTeX is very good at hyphenating, and it will + usually find all correct hyphenation points. The \- command is + used for the exceptional cases. + + Note that when you insert \- commands in a word, the word will + only be hyphenated at those points and not at any of the + hyphenation points that LaTeX might otherwise have chosen. + +\cleardoublepage + + The \cleardoublepage command ends the current page and causes + all figures and tables that have so far appeared in the input + to be printed. In a two-sided printing style, it also makes the + next page a right-hand (odd-numbered) page, producing a blank + page if necessary. + +\clearpage + + The \clearpage command ends the current page and causes all + figures and tables that have so far appeared in the input to be + printed. + +\enlargethispage + + \enlargethispage{size} + + \enlargethispage*{size} + + Enlarge the \textheight for the current page by the specified + amount; e.g. \enlargethispage{\baselineskip} will allow one + additional line. + + The starred form tries to squeeze the material together on the + page as much as possible. This is normally used together with + an explicit \pagebreak. + +\samepage + + \samepage + + The object in the argument {} should be on the current page. + +\fussy + + \fussy + + This declaration (which is the default) makes TeX more fussy + about line breaking. This can avoids too much space between + words, but may produce overfull boxes. + + This command cancels the effect of a previous \sloppy command. + \sloppy + +\hyphenation + + \hyphenation{words} + + The \hyphenation command declares allowed hyphenation points, + where words is a list of words, separated by spaces, in which + each hyphenation point is indicated by a - character. + +\linebreak + + \linebreak[number] + + The \linebreak command tells LaTeX to break the current line at + the point of the command. With the optional argument, number, + you can convert the \linebreak command from a demand to a + request. The number must be a number from 0 to 4. The higher + the number, the more insistent the request is. + + The \linebreak command causes LaTeX to stretch the line so it + extends to the right margin. + +\newline + + The \newline command breaks the line right where it is. It can + only be used in paragraph mode. + +\newpage + + The \newpage command ends the current page. In contrast to + \pagebreak it can produce a partly empty page, even when + \flushbottom is active. + +\nolinebreak + + \nolinebreak[number] + + The \nolinebreak command prevents LaTeX from breaking the + current line at the point of the command. With the optional + argument, number, you can convert the \nolinebreak command from + a demand to a request. The number must be a number from 0 to 4. + The higher the number, the more insistent the request is. + +\nopagebreak + + \nopagebreak[number] + + The \nopagebreak command prevents LaTeX from breaking the + current page at the point of the command. With the optional + argument, number, you can convert the \nopagebreak command from + a demand to a request. The number must be a number from 0 to 4. + The higher the number, the more insistent the request is. + +\pagebreak + + \pagebreak[number] + + The \pagebreak command tells LaTeX to break the current page at + the point of the command. With the optional argument, number, + you can convert the \pagebreak command from a demand to a + request. The number must be a number from 0 to 4. The higher + the number, the more insistent the request is. + +\sloppy + + \sloppy + + This declaration makes TeX less fussy about line breaking. This + can prevent overfull boxes, but may leave too much space + between words. + + Lasts until a \fussy command is issued. \fussy. + +2.3.11 Making Paragraphs + + A paragraph is ended by one or more completely blank lines --- + lines not containing even a %. A blank line should not appear + where a new paragraph cannot be started, such as in math mode + or in the argument of a sectioning command. + +\indent + + \indent + + This produces a horizontal space whose width equals the width + of the paragraph indentation. It is used to add paragraph + indentation where it would otherwise be suppressed. + +\noindent + + \noindent + + When used at the beginning of the paragraph, it suppresses the + paragraph indentation. It has no effect when used in the middle + of a paragraph. + +\par + + Equivalent to a blank line; often used to make command or + environment definitions easier to read. + +2.3.12 Margin Notes + + The command \marginpar[left]{right} creates a note in the + margin. The first line will be at the same height as the line + in the text where the \marginpar occurs. + + When you only specify the mandatory argument right, the text + will be placed + * in the right margin for one-sided layout + * in the outside margin for two-sided layout + * in the nearest margin for two-column layout. + + By issuing the command \reversemarginpar, you can force the + marginal notes to go into the opposite (inside) margin. + + When you specify both arguments, left is used for the left + margin, and right is used for the right margin. + + The first word will normally not be hyphenated; you can enable + hyphenation by prefixing the first word with a \hspace{0pt} + command. + +2.3.13 Math Formulae + + Table 1.7. Three environments that put LaTeX in math mode + math For Formulae that appear right in the text. + displaymath For Formulae that appear on their own line. + equation The same as the displaymath environment except that it + adds an equation number in the right margin. + + The math environment can be used in both paragraph and LR mode, + but the displaymath and equation environments can be used only + in paragraph mode. The math and displaymath environments are + used so often that they have the following short forms: +\(...\) instead of \begin{math}...\end{math} + +\[...\] instead of \begin{displaymath}...\end{displaymath} + + In fact, the math environment is so common that it has an even + shorter form: +$ ... $ instead of \(...\) + +Subscripts & Superscripts + + To get an expression exp to appear as a subscript, you just + type _{exp} . To get exp to appear as a superscript, you type + ^{exp }. LaTeX handles superscripted superscripts and all of + that stuff in the natural way. It even does the right thing + when something has both a subscript and a superscript. + +Math Symbols + +Spacing in Math Mode + + In a math environment, LaTeX ignores the spaces you type and + puts in the spacing that it thinks is best. LaTeX formats + mathematics the way it's done in mathematics texts. If you want + different spacing, LaTeX provides the following four commands + for use in math mode: + 1. \; - a thick space + 2. \: - a medium space + 3. \, - a thin space + 4. \! - a negative thin space + +Math Miscellany + + Table 1.8. Math Miscellany + \cdots Produces a horizontal ellipsis where the dots are raised + to the centre of the line. + \ddots Produces a diagonal ellipsis. + \frac{num}{den} Produces the fraction num divided by den. + \ldots Produces an ellipsis. This command works in any mode, + not just math mode. + \overbrace{text} Generates a brace over text. + \overline{text} Causes the argument text to be overlined. + \sqrt[root]{arg} Produces the square root of its argument. The + optional argument, root, determines what root to produce, i.e., + the cube root of x+y would be typed as $\sqrt[3]{x+y}$. + \underbrace{text} Generates text with a brace underneath. + \underline{text} Causes the argument text to be underlined. + This command can also be used in paragraph and LR modes. + \vdots Produces a vertical ellipsis. + \ensuremath{} It's argument is set in math mode. This is needed + for own definitions. + +2.3.14 Modes + + When LaTeX is processing your input text, it is always in one + of three modes: + * paragraph mode + * Math mode + * Left-to-right mode, called LR mode for short + + LaTeX changes mode only when it goes up or down a staircase to + a different level, though not all level changes produce mode + changes. Mode changes occur only when entering or leaving an + environment, or when LaTeX is processing the argument of + certain text-producing commands. + + Paragraph mode is the most common; it's the one LaTeX is in + when processing ordinary text. In that mode, LaTeX breaks your + text into lines and breaks the lines into pages. LaTeX is in + math mode when it's generating a mathematical formula. In LR + mode, as in paragraph mode, LaTeX considers the output that it + produces to be a string of words with spaces between them. + However, unlike paragraph mode, LaTeX keeps going from left to + right; it never starts a new line in LR mode. Even if you put a + hundred words into an \mbox, LaTeX would keep typesetting them + from left to right inside a single box, and then complain + because the resulting box was too wide to fit on the line. + + LaTeX is in LR mode when it starts making a box with an \mbox + command. You can get it to enter a different mode inside the + box - for example, you can make it enter math mode to put a + formula in the box. There are also several text-producing + commands and environments for making a box that put LaTeX in + paragraph mode. The box make by one of these commands or + environments will be called a parbox. When LaTeX is in + paragraph mode while making a box, it is said to be in inner + paragraph mode. Its normal paragraph mode, which it starts out + in, is called outer paragraph mode. + +2.3.15 Page Styles + + The \documentclass command determines the size and position of + the page's head and foot. The page style determines what goes + in them. + +\maketitle + + \maketitle + + The \maketitle command generates a title on a separate title + page. In the article class, \maketitle will also switch to + pagestyle plain. See Page Styles for commands to change page + numbering. + + Information used to produce the title is obtained from the + following declarations: + + See Page Styles for the commands to give the information. + +\author + + \author{names} + + The \author command declares the author(s), where names is a + list of authors separated by \and commands. Use \\ to separate + lines within a single author's entry -- for example, to give + the author's institution or address. + +\date + + \date{text} + + The \date command declares text to be the document's date. With + no \date command, the current date is used. + +\thanks + + \thanks{text} + + The \thanks command produces a \footnote to the title. + +\title + + \title{text} + + The \title command declares text to be the title. Use \\ to + tell LaTeX where to start a new line in a long title. + +\pagenumbering + + \pagenumbering{num_style} + + Specifies the style of page numbers. Possible values of + num_style are: + * arabic - Arabic numerals + * roman - Lowercase Roman numerals + * Roman - Uppercase Roman numerals + * alph - Lowercase letters + * Alph - Uppercase letters + +\pagestyle + + \pagestyle{option} + + The \pagestyle command changes the style from the current page + on throughout the remainder of your document. + + The valid options are: + * plain - Just a plain page number. + * empty - Produces empty heads and feet - no page numbers. + * headings - Puts running headings on each page. The document + style specifies what goes in the headings. + * myheadings - You specify what is to go in the heading with + the \markboth or the \markright commands. + +\markboth + +\markboth{left head}{right head} + + The \markboth command is used in conjunction with the page + style myheadings for setting both the left and the right + heading. You should note that a left-hand heading is generated + by the last \markboth command before the end of the page, while + a right-hand heading is generated by the first \markboth or + \markright that comes on the page if there is one, otherwise by + the last one before the page. + +\markright + +\markright{right head} + + The \markright command is used in conjunction with the page + style myheadings for setting the right heading, leaving the + left heading unchanged. You should note that a left-hand + heading is generated by the last \markboth command before the + end of the page, while a right-hand heading is generated by the + first \markboth or \markright that comes on the page if there + is one, otherwise by the last one before the page. + +\thispagestyle + + \thispagestyle{option} + + The \thispagestyle command works in the same manner as the + \pagestyle command except that it changes the style for the + current page only. + +2.3.16 Sectioning + + Sectioning commands provide the means to structure your text + into units. + * \part + * \chapter (report and book class only) + * \section + * \subsection + * \subsubsection + * \paragraph + * \subparagraph + + All sectioning commands take the same general form, i.e., + + \chapter[optional]{title} + + In addition to providing the heading in the text, the mandatory + argument of the sectioning command can appear in two other + places: + 1. The table of contents + 2. The running head at the top of the page + + You may not want the same thing to appear in these other two + places as appears in the text heading. To handle this + situation, the sectioning commands have an optional argument + that provides the text for these other two purposes. + + All sectioning commands have *-forms that print a title, but do + not include a number and do not make an entry in the table of + contents. + + \appendix + + The \appendix command changes the way sectional units are + numbered. The \appendix command generates no text and does not + affect the numbering of parts. The normal use of this command + is something like +\chapter{The First Chapter} + ... +\appendix +\chapter{The First Appendix} + +2.3.17 Spaces & Boxes + + All the predefined length parameters See Predefined lengths can + be used in the arguments of the box-making commands. + +\dotfill + + The \dotfill command produces a rubber length that produces + dots instead of just spaces. + +\hfill + + The \hfill fill command produces a rubber length which can + stretch or shrink horizontally. It will be filled with spaces. + +\hrulefill + + The \hrulefill fill command produces a rubber length which can + stretch or shrink horizontally. It will be filled with a + horizontal rule. + +\hspace + + \hspace{length}, \hspace*{length} + + The \hspace command adds horizontal space. The length of the + space can be expressed in any terms that LaTeX understands, + i.e., points, inches, etc. You can add negative as well as + positive space with an \hspace command. Adding negative space + is like backspacing. + + LaTeX removes horizontal space that comes at the end of a line. + If you don't want LaTeX to remove this space, include the + optional * argument. Then the space is never removed. + +\addvspace + + \addvspace{length} + + The \addvspace command normally adds a vertical space of height + length. However, if vertical space has already been added to + the same point in the output by a previous \addvspace command, + then this command will not add more space than needed to make + the natural length of the total vertical space equal to length. + +\bigskip + + The \bigskip command is equivalent to \vspace{bigskipamount} + where bigskipamount is determined by the document class. + +\medskip + + The \medskip command is equivalent to \vspace{medskipamount} + where medskipamount is determined by the document class. + +\smallskip + + \smallskip + + The \smallskip command is equivalent to + \vspace{smallskipamount} where smallskipamount is determined by + the document class. + +\vfill + + The \vfill fill command produces a rubber length which can + stretch or shrink vertically. + +\vspace + + \vspace{length}, \vspace*{length} + + The \vspace command adds vertical space. The length of the + space can be expressed in any terms that LaTeX understands, + i.e., points, inches, etc. You can add negative as well as + positive space with an \vspace command. + + LaTeX removes vertical space that comes at the end of a page. + If you don't want LaTeX to remove this space, include the + optional * argument. Then the space is never removed. + +\fbox + + \fbox{text} + + The \fbox command is exactly the same as the \mbox command, + except that it puts a frame around the outside of the box that + it creates. + +\framebox + + \framebox[width][position]{text} + + The \framebox command is exactly the same as the \makebox + command, except that it puts a frame around the outside of the + box that it creates. + + The framebox command produces a rule of thickness \fboxrule, + and leaves a space \fboxsep between the rule and the contents + of the box. + +lrbox + + \begin{lrbox}{cmd} text \end{lrbox} + + This is the environment form of \sbox. + + The text inside the environment is saved in the box cmd, which + must have been declared with \newsavebox. + +\makebox + + \makebox[width][position]{text} + + The \makebox command creates a box just wide enough to contain + the text specified. The width of the box is specified by the + optional width argument. The position of the text within the + box is determined by the optional position argument. + * c --- centred (default) + * l --- flushleft + * r --- flushright + * s --- stretch from left to right margin. The text must + contain stretchable space for this to work. + + See \makebox (picture). + +\mbox + + \mbox{text} + + The \mbox command creates a box just wide enough to hold the + text created by its argument. + + Use this command to prevent text from being split across lines. + +\newsavebox + + \newsavebox{cmd} + + Declares cmd, which must be a command name that is not already + defined, to be a bin for saving boxes. + +\parbox + + \parbox[position][height][inner-pos]{width}{text} + + A parbox is a box whose contents are created in paragraph mode. + The \parbox has two mandatory arguments: + * width - specifies the width of the parbox, and + * text - the text that goes inside the parbox. + + LaTeX will position a parbox so its centre lines up with the + centre of the text line. The optional position argument allows + you to line up either the top or bottom line in the parbox + (default is top). + + If the height argument is not given, the box will have the + natural height of the text. + + The inner-pos argument controls the placement of the text + inside the box. If it is not specified, position is used. + * t --- text is placed at the top of the box. + * c --- text is centred in the box. + * b --- text is placed at the bottom of the box. + * s --- stretch vertically. The text must contain vertically + stretchable space for this to work. + + A \parbox command is used for a parbox containing a small piece + of text, with nothing fancy inside. In particular, you + shouldn't use any of the paragraph-making environments inside a + \parbox argument. For larger pieces of text, including ones + containing a paragraph-making environment, you should use a + minipage environment See minipage. + +\raisebox + + \raisebox{distance}[extend-above][extend-below]{text} + + The \raisebox command is used to raise or lower text. The first + mandatory argument specifies how high the text is to be raised + (or lowered if it is a negative amount). The text itself is + processed in LR mode. + + Sometimes it's useful to make LaTeX think something has a + different size than it really does - or a different size than + LaTeX would normally think it has. The \raisebox command lets + you tell LaTeX how tall it is. + + The first optional argument, extend-above, makes LaTeX think + that the text extends above the line by the amount specified. + The second optional argument, extend-below, makes LaTeX think + that the text extends below the line by the amount specified. + +\rule + + \rule[raise-height]{width}{thickness} + + The \rule command is used to produce horizontal lines. The + arguments are defined as follows: + * raise-height - specifies how high to raise the rule + (optional) + * width - specifies the length of the rule (mandatory) + * thickness - specifies the thickness of the rule (mandatory) + +\savebox + + \savebox{cmd}[width][pos]{text} + + This command typeset text in a box just as for \makebox. + However, instead of printing the resulting box, it saves it in + bin cmd, which must have been declared with \newsavebox. + +\sbox + + \sbox{cmd}\{text} + + This commands typesets text in a box just as for \mbox. + However, instead of printing the resulting box, it saves it in + cmd, which must have been declared with \newsavebox. + +\usebox + + \usebox{cmd} + + Prints the box most recently saved in bin cmd by a \savebox + command. + +2.3.18 Special Characters + + The following characters play a special role in LaTeX and are + called special printing characters, or simply special + characters. +# $ % & ~ _ ^ \ { } + + Whenever you put one of these special characters into your + file, you are doing something special. If you simply want the + character to be printed just as any other letter, include a \ + in front of the character. For example, \$ will produce $ in + your output. + + One exception to this rule is the \ itself because \\ has its + own special meaning. A \ is produced by typing $\backslash$ in + your file. + + Also, \~ means `place a tilde accent over the following + letter', so you will probably want to use \verb instead. + + In addition, you can access any character of a font once you + know its number by using the \symbol command. For example, the + character used for displaying spaces in the \verb* command has + the code decimal 32, so it can be typed as \symbol{32}. + + You can also specify octal numbers with ' or hexadecimal + numbers with ", so the previous example could also be written + as \symbol{'40} or \symbol{"20}. + +2.3.19 Special Symbols + +Accents on Characters + + The rules differ somewhat depending whether you are in text + mode, math modes, or the tabbing environment. + +Text Mode + + The following accents may be placed on letters. Although o is + used in most of the example, the accents may be placed on any + letter. Accents may even be placed above a missing letter; for + example, \~{} produces a tilde over a blank space. + + The following commands may be used only in paragraph or LR + mode: + * \`{o} produces a grave accent, ò + * \'{o} produces an acute accent, ó + * \^{o} produces a circumflex, ô + * \"{o} produces an umlaut or dieresis, ö + * \H{o} produces a long Hungarian umlaut + * \~{o} produces a tilde, õ + * \c{c} produces a cedilla, ç + * \={o} produces a macron accent (a bar over the letter) + * \b{o} produces a bar under the letter + * \.{o} produces a dot over the letter + * \d{o} produces a dot under the letter + * \u{o} produces a breve over the letter + * \v{o} produces a v over the letter + * \t{oo} produces a tie (inverted u) over the two letters + + Note that the letters i and j require special treatment when + they are given accents because it is often desirable to replace + the dot with the accent. For this purpose, the commands \i and + \j can be used to produce dotless letters. + + For example, + * \^{\i} should be used for i, circumflex, î + * \"{\i} should be used for i, umlaut, ï + +Math Mode + + Several of the above and some similar accents can also be + produced in math mode. The following commands may be used only + in math mode: + * \hat{o} is similar to the circumflex (cf. \^) + * \widehat{oo} is a wide version of \hat over several letters + * \check{o} is a vee or check (cf. \v) + * \tilde{o} is a tilde (cf. \~) + * \widetilde{oo} is a wide version of \tilde over several + letters + * \acute{o} is an acute accent (cf. \`) + * \grave{o} is a grave accent (cf. >\') + * \dot{o} is a dot over the letter (cf. \.) + * \ddot{o} is a double dot over the letter + * \breve{o} is a breve (cf. \u) + * \bar{o} is a macron (cf. \=) + * \vec{o} is a vector (arrow) over the letter + +Tabbing Environment + + Some of the accent marks used in running text have other uses + in the Tabbing Environment. In that case they can be created + with the following command: + * >\a' for an acute accent + * \a` for a grave accent + * \a= for a macron accent + +Arrows + + LaTeX provides commands for all sorts of arrows. The following + commands are used only in math mode. + + In general the command names are created from left, right, up, + or down. leftright gives a double headed arrow. Prefacing with + long gives a longer arrow. Capitalizing the first letter gives + a double-shanked arrow. + + Examples are: + * \leftarrow + * \Leftarrow + * \longleftarrow + * \Longleftarrow + * \rightarrow + * \Rightarrow + * \longrightarrow + * \Longrightarrow + * \leftrightarrow + * \Leftrightarrow + * \longleftrightarrow + * \uparrow + * \downarrow + * \Uparrow + * >\nearrow points from southwest to northeast + * \searrow points from northwest to southeast + * \swarrow points from northeast to southwest + * \nwarrow points from southeast to northwest + + The \stackrel command is useful for putting things over or + under your arrow. + + See also: + * Math Symbols + * Binary and Relational Operators + * Greek Letters + * Miscellaneous Symbols + * Variable Size Math Symbols + +Binary and Relational Operators + + Some math symbols are obtained by typing the corresponding + keyboard character. Examples include ++ - = < > + +Note + + plus, minus, and equal sign may be used in either text or math + mode, but < and > are math mode only (they produce inverted + exclamation and question marks, respectively, in text mode). + + The following commands may be used only in math mode: + * \pm plus or minus sign + * \mp minus or plus sign + * \times times (an "x") + * \div divided by sign + * \ast an asterisk (centered) + * \star a five-point star (centered) + * \bullet a bullet + * \circ an open bullet + * \cdot a centered dot + * \leq less than or equal to + * \ll much less than + * \subset is a subset of + * \geq greater than or equal to + * \gg much greater than + * \equiv equivalence symbol + * \sim similar to + * \simeq similar or equal to + * \approx approximately equal to + * \neq not equal to + * \per "perpendicular to" symbols + * \propto proportional to + + Note that greater than and less than are obtained simply by + entering > and <. + + A slash, indicating not can be placed through a symbol (or a + letter) with the \not command. For example, not less than is + \not< and not less than or equal to is \not\leq. If the slash + isn't properly positioned it can be moved by putting a math + mode spacing command between the \notand the symbol. + +Delimiters + + Delimiters are objects which act logically like parentheses. + These can be used only in math mode. + + The delimiters recognized by LaTeX include: + * ( (left parenthesis) + * ) (right parenthesis) + * [ (left bracket) + * ] (right bracket) + * \{ (left brace) + * \} (right brace) + * | (vertical line) + * \vert (vertical line) + * \| (double vertical lines) + * \Vert (double vertical lines) + * / (slash) + * \backslash (backslash) + * \langle (left angle bracket) + * \rangle (right angle bracket) + * \uparrow (uparrow) + * \downarrow (down arrow) + * \updownarrow (up/down arrow) + +Making Delimiters the Right Size + + Delimiters in formulas should be big enough to fit around the + formulas they delimit (for example arround arrays). To obtain + stretchable delimiters (LaTeX makes them the appropriate size) + type a \left or \right command before the delimiter. \left and + \right commands must come in matching pairs, although the + delimiters themselves need not be the same. Thus, \left \{ ... + \right \[ produces a legal pair. In cases where only one + delimiter is desired, it is possible to make the matching + delimiter invisible by typing a period (.) after the command, + i.e., \left. or \right. + + In an eqnarray environment the matching \left and \right cannot + be split between lines and it may be necessary to use an + invisible \right. and \left. to terminate and begin parts on + different lines. In this case a second problem may arise, since + the size of the delimiters will be chosen only for the local + part, so that the size of the visible left and right delimiters + might not match. The solution is to trick LaTeX into thinking + that both parts have the same vertical height. This can be done + by placing a strut, that is a zero-width \rule. It can also be + accomplished with the \vphantom command, which I have not found + documented, but which appears to work. + + \vphantom{construct} creates a zero-width object with the + height of construct. The argument can contain things such as + \frac or the variable size math symbols and should be chosen + according to what is in the section with the delimiter you want + to match. + +Some Examples + +A six-j symbol + +\[ \left\{ +\begin{array}{ccc} +a & b & c \\ +d & e & f \end{array} +\right>\} \] + + This should be displayed something like (insofar as it can be + rendered in "ascii art"): +( a b c ) +- - +( d e f ) + + Note that the \[ ... \] set this off as Display Math, and that + the Array Environment is used to generate the three centered + columns inside the braces. + +A "multiple choice" equation + +\[ f(x) = + \left\{ \begin{array}{l} + 0, x < 0 \\ 1, x = 0 \\ + 2, x > 0 \end{array} \right. \] + + will be displayed as + ( 0, x < 0 +f(x) = - 1, x = 0 + ( 2, x > 0 + + Note that the invisible \right delimiter is specified using a + period. + +Ellipsis + + Ellipses (three dots) can be produced by the following commands + * \ldots horizontally at bottom of line + * \cdots horizontally center of line (math mode only) + * \ddots diagonal (math mode only) + * \vdots vertical (math mode only) + +Greek Letters + + These commands may be used only in math mode: + * \alpha + * \beta + * \gamma + * \delta + * \epsilon + * \varepsilon (variation, script-like) + * \zeta + * \eta + * \theta + * \vartheta (variation, script-like) + * \iota + * \kappa + * \lambda + * \mu + * \nu + * \xi + * \pi + * \varpi (variation) + * \rho + * \varrho (variation, with the tail) + * \sigma + * \varsigma (variation, script-like) + * \tau + * \upsilon + * \phi + * \varphi (variation, script-like) + * \chi + * \psi + * \omega + + Capital letters: + * \Gamma + * \Delta + * \Theta + * \Lambda + * \Xi + * \Pi + * \Sigma + * \Upsilon + * \Phi + * \Psi + * \Omega + + See also: + * Math Symbols + * Accents + * Miscellaneous Symbols + +Miscellaneous Symbols + +Some symbols for math + + The following symbols are also used only in math mode + * \aleph Hebrew aleph + * \hbar h-bar, Planck's constant + * \imath variation on i; no dot + * \jmath variation on j; no dot + * \ell script (loop) l + * \wp fancy script lowercase P + * \Re script capital R (Real) + * \Im script capital I (Imaginary) + * \prime prime (also obtained by typing ') + * \nabla inverted capital Delta + * \surd radical (square root) symbol + * \angle angle symbol + * \forall for all (inverted A) + * \exists exists (left-facing E) + * \partial partial derivative symbol + * \infty infinity symbol + * \triangle open triangle symbol + * \Box open square + * \Diamond open diamond + * \flat music: flat symbol + * \natural music: natural symbol + * \clubsuit playing cards: club suit symbol + * \diamondsuit playing cards: diamond suit symbol + * \heartsuit playing cards: heart suit symbol + * \spadesuit playing cards: space suit symbol + +Some Other Symbols + + The following symbols can be used in any mode: + * \dag dagger + * >\ddag double dagger + * >\S section symbol + * >\P paragraph symbol + * >\copyright copyright symbol + * >\pounds British pound sterling symbol + +Calligraphic Style Letters + + Twenty-six calligraphic letters are provided (the upper case + alphabet). These can only be used in math mode. + + In LaTeX 2.09 they are produced with the \cal declaration: +${\cal A}$ + + In LaTeX2e they are obtained with the \mathcal command: +$\mathcal{CAL}$ + +Math Functions + + Functions like log or cos are normally used in math mode. + However, inmath mode strings of letters are treated as a + product of variables, which would normally be displayed in math + italics rather than a text font which would be appropriate for + these functions. To get proper display of such functions they + are generated with LaTeX commands. + + Some of these commands are: + * \arccos + * \arcsin + * \arctan + * \cos + * \cosh + * \cot + * \coth + * \csc + * \deg + * \det + * \dim + * \exp + * \gcd + * \hom + * \inf + * \ker + * \lg + * \lim + * \liminf + * \limsup + * \ln + * \log + * \max + * \min + * \sec + * \sin + * \sinh + * \sup + * \tan + * \tanh + + Two commands are provided for the "modulus" function + * \bmod + * \pmod{} + + The former would be used to write "a mod b" as a \bmod b and + the latter, which requires an argument that is displayed in + parentheses, would be used to write "n = i (mod j)" as n = i + \pmod{j} + +Variable Size Math Symbols + + The size of some mathematical symbols, notably summation signs, + product signs, and integral signs, depends on the environment + in which they appear (i.e., displaymath as opposed to math + environments. + + These include: + * \sum a summation sign (capital sigma) + * \prod a product (capital pi) + * \coprod a coproduct (inverted capital pi) + * \int an integral sign + * \oint a surface (circular) integral sign + * \bigcup big "U" + * \bigcap big inverted "U" + * \bigvee big "V" + * \bigwedge big inverted "V" + * \bigodot big "O" with dot at center + * \bigotimes big "O" with cross inside + * \bigoplus big "O" with a + inside + * \biguplus big "U" with a + inside + + The \sqrt command also produces a variable size symbol + appropriate for the size of hte radicand argument. + + The "limits" associated with these symbols are entered as + subscripts for entries appearing below the symbol and as + superscripts for entries appearing above the symbol. For + example the sum from n=0 to infinity of x^n would be entered as +\sum_{n=0}^{\infty} x_{n} + + The actual placement of the limits depends on whether this is + in displaymath mode in which case they are placed below/above + or in math mode in running text in which case they are placed + as regular subscripts and superscripts. + + Note that it is possible to treat several of these symbols (a + common example would be a double sum) as a single symbol for + placing limits above and/or below by using the \mathop command. + + Hats and tildes over symbols which stretch (as best they can) + to the correct size for their arguments are produced by + \widehat and \widetilde + +2.3.20 Splitting the Input + + A large document requires a lot of input. Rather than putting + the whole input in a single large file, it's more efficient to + split it into several smaller ones. Regardless of how many + separate files you use, there is one that is the root file; it + is the one whose name you type when you run LaTeX. + +\include + + \include{file} + + The \include command is used in conjunction with the + \includeonly command for selective inclusion of files. The file + argument is the first name of a file, denoting file.tex. If + file is one the file names in the file list of the \includeonly + command or if there is no \includeonly command, the \include + command is equivalent to +\clearpage \input{file} \clearpage + + except that if the file file.tex does not exist, then a warning + message rather than an error is produced. If the file is not in + the file list, the \include command is equivalent to + \clearpage. + + The \include command may not appear in the preamble or in a + file read by another \include command. + +\includeonly + + \includeonly{file_list} + + The \includeonly command controls which files will be read in + by an \include command. file_list should be a comma-separated + list of filenames. Each filename must match exactly a filename + specified in a \include command. This command can only appear + in the preamble. + +\input + + \input{file} + + The \input command causes the indicated file to be read and + processed, exactly as if its contents had been inserted in the + current file at that point. The file name may be a complete + file name with extension or just a first name, in which case + the file file.tex is used. + +2.3.21 Starting & Ending + + Your input file must contain the following commands as a + minimum: +\documentclass{class} +\begin{document} + ... your text goes here ... +\end{document} + + where the class selected is one of the valid classes for LaTeX. + See Document Classes (and see Overview), for details of the + various document classes available locally. + + You may include other LaTeX commands between the \documentclass + and the \begin{document} commands (i.e., in the `preamble'). + +2.3.22 Table of Contents + + A table of contents is produced with the \tableofcontents + command. You put the command right where you want the table of + contents to go; LaTeX does the rest for you. It produces a + heading, but it does not automatically start a new page. If you + want a new page after the table of contents, include a \newpage + command after the \tableofcontents command. + + There are similar commands \listoffigures and \listoftables for + producing a list of figures and a list of tables, respectively. + Everything works exactly the same as for the table of contents. + + NOTE: If you want any of these items to be generated, you + cannot have the \nofiles command in your document. + +\addcontentsline + + \addcontentsline{file}{sec_unit}{entry} + + The \addcontentsline command adds an entry to the specified + list or table where: + * file is the extension of the file on which information is + to be written: toc (table of contents), lof (list of + figures), or lot (list of tables). + * sec_unit controls the formatting of the entry. It should be + one of the following, depending upon the value of the file + argument: + 1. toc --- the name of the sectional unit, such as part + or subsection. + 2. lof --- figure + 3. lot --- table + * entry is the text of the entry. + +\addtocontents + + \addtocontents{file}{text} + + The \addtocontents command adds text (or formatting commands) + directly to the file that generates the table of contents or + list of figures or tables. + * file is the extension of the file on which information is + to be written: toc (table of contents), lof (list of + figures), or lot (list of tables). + * text is the information to be written. + +2.3.23 Terminal Input/Output + +\typein + + \typein[cmd]{msg} + + Prints msg on the terminal and causes LaTeX to stop and wait + for you to type a line of input, ending with return. If the cmd + argument is missing, the typed input is processed as if it had + been included in the input file in place of the \typein + command. If the cmd argument is present, it must be a command + name. This command name is then defined or redefined to be the + typed input. + +\typeout + + \typeout{msg} + + Prints msg on the terminal and in the log file. Commands in msg + that are defined with \newcommand or \renewcommand are replaced + by their definitions before being printed. + + LaTeX's usual rules for treating multiple spaces as a single + space and ignoring spaces after a command name apply to msg. A + \space command in msg causes a single space to be printed. A + ^^J in msg prints a newline. + +2.3.24 Typefaces + + The typeface is specified by giving the size and style. A + typeface is also called a font. + +\Styles + + The following type style commands are supported by LaTeX. + + These commands are used like \textit{italics text}. The + corresponding command in parenthesis is the declaration form, + which takes no arguments. The scope of the declaration form + lasts until the next type style command or the end of the + current group. + + The declaration forms are cumulative; i.e., you can say + \sffamily\bfseries to get sans serif boldface. + + You can also use the environment form of the declaration forms; + e.g. \begin{ttfamily}...\end{ttfamily}. + + Table 1.9. Typefaces + \textrm (\rmfamily) Roman. + \textit (\itshape) , \emph Emphasis (toggles between \textit + and \textrm). + \textmd (\mdseries) Medium weight (default). The opposite of + boldface. + \textbf (\bfseries) Boldface. + \textup (\upshape) Upright (default). The opposite of slanted. + \textsl (\slshape) Slanted. + \textsf (\sffamily) Sans serif. + \textsc (\scshape) Small caps. + \texttt (\ttfamily) Typewriter. + \textnormal (\normalfont) Main document font. + \mathrm Roman, for use in math mode. + \mathbf Boldface, for use in math mode. For bold symbols or + complete equations take a look at \boldsymbol and \bm. + \mathsf Sans serif, for use in math mode. + \mathtt Typewriter, for use in math mode. + \mathit Italics, for use in math mode, e.g. variable names with + several letters. + \mathnormal For use in math mode, e.g. inside another type + style declaration. + \mathcal `Calligraphic' letters, for use in math mode. + + In addition, the command \mathversion{bold} can be used for + switching to bold letters and symbols in formulas. + \mathversion{normal} restores the default. + +Sizes + + The following standard type size commands are supported by + LaTeX. + + The commands as listed here are "declaration forms". The scope + of the declaration form lasts until the next type style command + or the end of the current group. + + You can also use the environment form of these commands; e.g. + \begin{tiny}...\end{tiny}. + + Table 1.10. Standard type size commands + \tiny + \scriptsize + \footnotesize + \small + \normalsize (default) + \large + \Large + \LARGE + \huge + \Huge + +Low-level font commands + + These commands are primarily intended for writers of macros and + packages. The commands listed here are only a subset of the + available ones. For full details, you should consult Chapter 7 + of The LaTeX Companion. + + Table 1.11. Low-level font commands + \fontencoding{enc} Select font encoding. Valid encodings + include OT1 and T1. + \fontfamily{family} Select font family. Valid families include: + * cmr for Computer Modern Roman + * cmss for Computer Modern Sans Serif + * cmtt for Computer Modern Typewriter + + and numerous others. + \fontseries{series} Select font series. Valid series include: + * m Medium (normal) + * b Bold + * c Condensed + * bc Bold condensed + * bx Bold extended + + and various other combinations. + \fontshape{shape} Select font shape. Valid shapes are: + * n Upright (normal) + * it Italic + * sl Slanted (oblique) + * sc Small caps + * ui Upright italics + * ol Outline + + The two last shapes are not available for most font families. + \fontsize{size}{skip} Set font size. The first parameter is the + font size to switch to; the second is the \baselineskip to use. + The unit of both parameters defaults to pt. A rule of thumb is + that the baselineskip should be 1.2 times the font size. + \selectfont The changes made by calling the four font commands + described above do not come into effect until \selectfont is + called. + \usefont{enc}{family}{series}{shape} Equivalent to calling + \fontencoding, \fontfamily, \fontseries and \fontshape with the + given parameters, followed by \selectfont. + +2.4 Parameters + + The input file specification indicates the file to be + formatted; TeX uses .tex as a default file extension. If you + omit the input file entirely, TeX accepts input from the + terminal. You specify command options by supplying a string as + a parameter to the command; e.g. + + latex \scrollmode\input foo.tex + + will process foo.tex without pausing after every error. + + Output files are always created in the current directory. When + you fail to specify an input file name, TeX bases the output + names on the file specification associated with the logical + name TEX_OUTPUT, typically texput.log. + +3 LaTeX Packages + +3.1 amsmath + + amsmath consists of several packages to aid in typesetting + math. + + \boldsymbol + Produces a bold math symbol. When not only a single + symbol, but a complete equation has to be bold you might + consider using the superior \bm command which takes + better care of spacing. + + \pmb + Can be used for mathematic symbols, when no bold version + is available. It prints the standard symbol several + times slightly shifted and is inferior to a real bold + font! + +3.2 dcolumn + + \usepackage{dcolumn} + + Defines a system for defining columns of entries in an array or + tabular which are to be aligned on a decimal point. + + This package defines D to be a column specifier with three + arguments: +D{sep.tex}{sep.dvi}{decimal places} + + sep.tex should be a single character, this is used as the + separator in the .tex file. It will usually be '.' or ','. + + sep.dvi is used as the separator in the output. + + decimal places should be the maximum number of decimal places + in the column. + + \newcolumntype can be used to define own column types. + +3.3 float + +Note + + The contents of this section was taken from the documentation + of float v1.3d of 2001/11/08. + + “This style option improves the interface for defining objects + such as figures and tabels in LaTeX. It adds the notion of a + float style that governs the appearance of floats.” + + \newfloat{}{}[] + Add a new class of floats. + + \floatstyle{