Contents

List of Figures

List of Tables

Preface

1 Introduction

1.1 A brief history

1.2 Today’s system

1.3 Working with this book

1.3.1 What’s here

1.3.2 Typographic conventions

1.3.3 Using the examples

2 The Structure of a LaTeX Document

2.1 The structure of a source file

2.1.1 Processing of options and packages

2.1.2 Splitting the source file into parts

2.1.3 Combining several files

2.1.4 optional—Providing variants in the document source

2.2 Sectioning commands

2.2.1 Numbering headings

2.2.2 Formatting headings

2.2.3 Changing fixed heading texts

2.2.4 fncychap—Predefined chapter heading layouts

2.2.5 quotchap—Mottos on chapters

2.2.6 titlesec—A different approach to headings

2.3 Table of contents structures

2.3.1 Entering information into the contents files

2.3.2 Typesetting a contents list

2.3.3 Combining contents lists

2.3.4 Providing additional contents files

2.3.5 shorttoc—Summary table of contents

2.3.6 minitoc—Multiple tables of contents

2.3.7 titletoc—A different approach to contents lists

2.4 Managing references

2.4.1 showkeys—Displaying the reference keys

2.4.2 varioref—More flexible cross-references

2.4.3 prettyref—Adding frills to references

2.4.4 titleref—Non-numerical references

2.4.5 hyperref—Active references

2.4.6 xr—References to external documents

3 Basic Formatting Tools

3.1 Phrases and paragraphs

3.1.1 xspace—Gentle spacing after a macro

3.1.2 ellipsis, lips—Marks of omission

3.1.3 amsmath—Nonbreaking dashes

3.1.4 relsize—Relative changes to the font size

3.1.5 textcase—Change case of text intelligently

3.1.6 ulem—Emphasize via underline

3.1.7 soul—Letterspacing or stealing sheep

3.1.8 url—Typesetting URLs, path names, and the like

3.1.9 euro—Converting and typesetting currencies

3.1.10 lettrine—Dropping your capital

3.1.11 Paragraph justification in LaTeX

3.1.12 ragged2e—Enhancing justification

3.1.13 setspace—Changing interline spacing

3.1.14 picinpar—Making rectangular holes

3.2 Footnotes, endnotes, and marginals

3.2.1 Using standard footnotes

3.2.2 Customizing standard footnotes

3.2.3 ftnright—Right footnotes in a two-column environment

3.2.4 footmisc—Various footnotes styles

3.2.5 perpage—Resetting counters on a “per-page” basis

3.2.6 manyfoot—Independent footnotes

3.2.7 endnotes—An alternative to footnotes

3.2.8 Marginal notes

3.3 List structures

3.3.1 Modifying the standard lists

3.3.2 paralist—Extended list environments

3.3.3 amsthm—Providing headed lists

3.3.4 Making your own lists

3.4 Simulating typed text

3.4.1 Simple verbatim extensions

3.4.2 upquote—Computer program style quoting

3.4.3 fancyvrb—Highly customizable verbatim environments

3.4.4 listings—Pretty-printing program code

3.5 Lines and columns

3.5.1 lineno—Numbering lines of text

3.5.2 parallel—Two text streams aligned

3.5.3 multicol—A flexible way to handle multiple columns

3.5.4 changebar—Adding revision bars to documents

4 The Layout of the Page

4.1 Geometrical dimensions of the layout

4.2 Changing the layout

4.2.1 layouts—Displaying your layout

4.2.2 A collection of page layout packages

4.2.3 typearea—A traditional approach

4.2.4 geometry—Layout specification with auto-completion

4.2.5 lscape—Typesetting individual pages in landscape mode

4.2.6 crop—Producing trimming marks

4.3 Dynamic page data: page numbers and marks

4.3.1 LaTeX page numbers

4.3.2 lastpage—A way to reference it

4.3.3 chappg—Page numbers by chapters

4.3.4 LaTeX mark commands

4.3.5 extramarks—Providing new marks

4.4 Page styles

4.4.1 The low-level page style interface

4.4.2 fancyhdr—Customizing page styles

4.4.3 truncate—Truncate text to a given length

4.5 Visual formatting

4.5.1 nextpage—Extensions to clearpage

4.6 Doing layout with class

4.6.1 KOMA-Script—A drop-in replacement for article et al.

4.6.2 memoir—Producing complex publications

5 Tabular Material

5.1 Standard LaTeX environments

5.1.1 Using the tabbing environment

5.1.2 Using the tabular environment

5.2 array—Extending the tabular environments

5.2.1 Examples of preamble commands

5.2.2 Defining new column specifiers

5.3 Calculating column widths

5.3.1 Explicit calculation of column widths

5.3.2 tabularx—Automatic calculation of column widths

5.3.3 tabulary—Column widths based on content

5.3.4 Differences between tabular*, tabularx, and tabulary

5.4 Multipage tabular material

5.4.1 supertabular—Making multipage tabulars

5.4.2 longtable—Alternative multipage tabulars

5.5 Color in tables

5.6 Customizing table rules and spacing

5.6.1 Colored table rules

5.6.2 Variable-width rules

5.6.3 hhline—Combining horizontal and vertical lines

5.6.4 arydshln—Dashed rules

5.6.5 tabls—Controlling row spacing

5.6.6 booktabs—Formal ruled tables

5.7 Further extensions

5.7.1 multirow—Vertical alignment in tables

5.7.2 dcolumn—Decimal column alignments

5.8 Footnotes in tabular material

5.8.1 Using minipage footnotes with tables

5.8.2 threeparttable—Setting table and notes together

5.9 Applications

5.9.1 Managing tables with wide entries

5.9.2 Tables inside tables

6 Mastering Floats

6.1 Understanding float parameters

6.2 Float placement control

6.2.1 placeins—Preventing floats from crossing a barrier

6.2.2 afterpage—Taking control at the page boundary

6.2.3 endfloat—Placing figures and tables at the end

6.3 Extensions to LaTeX’s float concept

6.3.1 float—Creating new float types

6.3.2 caption—For nonfloating figures and tables

6.3.3 rotating—Rotating floats

6.3.4 rotfloat—Combining float and rotating

6.4 Inline floats

6.4.1 wrapfig—Wrapping text around a figure

6.4.2 picins—Placing pictures inside the text

6.5 Controlling the float caption

6.5.1 caption—Customizing your captions

6.5.2 subfig—Substructuring floats

6.5.3 subfloat—Sub-numbering floats

6.5.4 sidecap—Place captions sideways

6.5.5 fltpage—Captions on a separate page

7 Fonts and Encodings

7.1 Introduction

7.1.1 The history of LaTeX’s font selection scheme (NFSS)

7.1.2 Input and output encodings

7.2 Understanding font characteristics

7.2.1 Monospaced and proportional fonts

7.2.2 Serifed and sans serif fonts

7.2.3 Font families and their attributes

7.2.4 Font encodings

7.3 Using fonts in text

7.3.1 Standard LaTeX font commands

7.3.2 Combining standard font commands

7.3.3 Font commands versus declarations

7.3.4 Accessing all characters of a font

7.3.5 Changing the default text fonts

7.3.6 LaTeX 2.09 font commands

7.4 Using fonts in math

7.4.1 Special math alphabet identifiers

7.4.2 Text font commands in math

7.4.3 Mathematical formula versions

7.5 Standard LaTeX font support

7.5.1 Computer Modern—The LaTeX standard fonts

7.5.2 inputenc—Selecting the input encoding

7.5.3 fontenc—Selecting font encodings

7.5.4 textcomp—Providing additional text symbols

7.5.5 exscale—Scaling large operators

7.5.6 tracefnt—Tracing the font selection

7.5.7 nfssfont.tex—Displaying font tables and samples

7.6 PSNFSS—PostScript fonts with LaTeX

7.6.1 Font samples for fonts supported by PSNFSS

7.6.2 mathptmx—Times Roman in math and text

7.6.3 mathpazo—Palatino in math and text

7.6.4 pifont—Accessing Pi and Symbol fonts

7.7 A collection of font packages

7.7.1 eco—Old-style numerals with Computer Modern

7.7.2 ccfonts, concmath—The Concrete fonts

7.7.3 cmbright—The Computer Modern Bright fonts

7.7.4 luximono—A general-purpose typewriter font

7.7.5 txfonts—Alternative support for Times Roman

7.7.6 pxfonts—Alternative support for Palatino

7.7.7 The Fourier-GUTenberg fonts

7.7.8 The URW Antiqua and Grotesk fonts

7.7.9 yfonts—Typesetting with Old German fonts

7.7.10 euler, eulervm—Accessing the Euler fonts

7.8 The LaTeX world of symbols

7.8.1 dingbat—A selection of hands

7.8.2 wasysym—Waldi’s symbol font

7.8.3 marvosym—Interface to the MarVoSym font

7.8.4 bbding—A alternative to Zapf Dingbats

7.8.5 ifsym—Clocks, clouds, mountains, and other symbols

7.8.6 tipa—International Phonetic Alphabet symbols

7.8.7 Typesetting the euro symbol (€)

7.9 The low-level interface

7.9.1 Setting individual font attributes

7.9.2 Setting several font attributes

7.9.3 Automatic substitution of fonts

7.9.4 Using low-level commands in the document

7.10 Setting up new fonts

7.10.1 Overview

7.10.2 Naming those thousands of fonts

7.10.3 Declaring new font families and font shape groups

7.10.4 Modifying font families and font shape groups

7.10.5 Declaring new font encoding schemes

7.10.6 Internal file organization

7.10.7 Declaring new fonts for use in math

7.10.8 Example: Defining your own .fd files

7.10.9 The order of declaration

7.11 LaTeX’s encoding models

7.11.1 Character data within the LaTeX system

7.11.2 LaTeX’s internal character representation (LICR)

7.11.3 Input encodings

7.11.4 Output encodings

7.12 Compatibility packages for very old documents

7.12.1 oldlfont, rawfonts, newlfont—Processing old documents

7.12.2 LaTeXsym—Providing symbols from LaTeX 2.09 lasy fonts

8 Higher Mathematics

8.1 Introduction to AMS-LaTeX

8.2 Display and alignment structures for equations

8.2.1 Comparison with standard LaTeX

8.2.2 A single equation on one line

8.2.3 A single equation on several lines: no alignment

8.2.4 A single equation on several lines: with alignment

8.2.5 Equation groups without alignment

8.2.6 Equation groups with simple alignment

8.2.7 Multiple alignments: align and flalign

8.2.8 Display environments as mini-pages

8.2.9 Interrupting displays: intertext

8.2.10 Vertical space and page breaks in and around displays

8.2.11 Equation numbering and tags

8.2.12 Fine-tuning tag placement

8.2.13 Subordinate numbering sequences

8.2.14 Resetting the equation counter

8.3 Matrix-like environments

8.3.1 The cases environment

8.3.2 The matrix environments

8.3.3 Stacking in subscripts and superscripts

8.3.4 Commutative diagrams

8.3.5 delarray—Delimiters surrounding an array

8.4 Compound structures and decorations

8.4.1 Decorated arrows

8.4.2 Continued fractions

8.4.3 Boxed formulas

8.4.4 Limiting positions

8.4.5 Multiple integral signs

8.4.6 Modular relations

8.4.7 Fractions and generalizations

8.4.8 Dottier accents

8.4.9 amsxtra—Accents as superscripts

8.4.10 Extra decorations

8.5 Variable symbol commands

8.5.1 Ellipsis ...

8.5.2 Horizontal extensions

8.5.3 Vertical extensions

8.6 Words in mathematics

8.6.1 The ext command

8.6.2 Operator and function names

8.7 Fine-tuning the mathematical layout

8.7.1 Controlling the automatic sizing and spacing

8.7.2 Sub-formulas

8.7.3 Big-g delimiters

8.7.4 Radical movements

8.7.5 Ghostbusters™

8.7.6 Horizontal spaces

8.8 Fonts in formulas

8.8.1 Additional math font commands

8.8.2 bm—Making bold

8.8.3 A collection of math font set-ups

8.9 Symbols in formulas

8.9.1 Mathematical symbol classes

8.9.2 Letters, numerals, and other Ordinary symbols

8.9.3 Mathematical accents

8.9.4 Binary operator symbols

8.9.5 Relation symbols

8.9.6 Punctuation

8.9.7 Operator symbols

8.9.8 Opening and Closing symbols

9 LaTeX in a Multilingual Environment

9.1 TeX and non-English languages

9.1.1 Language-related aspects of typesetting

9.1.2 Culture-related aspects of typesetting

9.1.3 Babel—LaTeX speaks multiple languages

9.2 The babel user interface

9.2.1 Setting or getting the current language

9.2.2 Handling shorthands

9.2.3 Language attributes

9.3 User commands provided by language options

9.3.1 Translations

9.3.2 Available shorthands

9.3.3 Language-specific commands

9.3.4 Layout considerations

9.3.5 Languages and font encoding

9.4 Support for non-Latin alphabets

9.4.1 The Cyrillic alphabet

9.4.2 The Greek alphabet

9.4.3 The Hebrew alphabet

9.5 Tailoring babel

9.5.1 Hyphenating in several languages

9.5.2 The package file

9.5.3 The structure of the babel language definition file

9.6 Other approaches

9.6.1 More complex languages

9.6.2 Omega

10 Graphics Generation and Manipulation

10.1 Producing portable graphics and ornaments

10.1.1 boxedminipage—Boxes with frames

10.1.2 shadow—Boxes with shadows

10.1.3 fancybox—Ornamental boxes

10.1.4 epic—An enhanced picture environment

10.1.5 eepic—Extending the epic package

10.1.6 Special-purpose languages

10.2 LaTeX’s device-dependent graphics support

10.2.1 Options for graphics and graphicx

10.2.2 The includegraphics syntax in the graphics package

10.2.3 The includegraphics syntax in the graphicx package

10.2.4 Setting default key values for the graphicx package

10.2.5 Declarations guiding the inclusion of images

10.2.6 A caveat: Encapsulation is important

10.3 Manipulating graphical objects in LaTeX

10.3.1 Scaling a LaTeX box

10.3.2 Resizing to a given size

10.3.3 Rotating a LaTeX box

10.3.4 rotating—Revisited

10.4 Display languages: PostScript, PDF, and SVG

10.4.1 The PostScript language

10.4.2 The dvips PostScript driver

10.4.3 pspicture—An enhanced picture environment for dvips

10.4.4 The Portable Document Format

10.4.5 Scalable Vector Graphics

11 Index Generation

11.1 Syntax of the index entries

11.1.1 Simple index entries

11.1.2 Generating subentries

11.1.3 Page ranges and cross-references

11.1.4 Controlling the presentation form

11.1.5 Printing special characters

11.1.6 Creating a glossary

11.1.7 Defining your own index commands

11.1.8 Special considerations

11.2 makeindex—A program to format and sort indexes

11.2.1 Generating the formatted index

11.2.2 Detailed options of the MakeIndex program

11.2.3 Error messages

11.2.4 Customizing the index with MakeIndex

11.2.5 MakeIndex pitfalls

11.3 xindy—An alternative to MakeIndex

11.3.1 Generating the formatted index with xindy

11.3.2 International indexing with xindy

11.3.3 Modules for common tasks

11.3.4 Style files for individual solutions

11.4 Enhancing the index with LaTeX features

11.4.1 Modifying the layout

11.4.2 showidx, repeatindex, tocbibind, indxcite—Little helpers

11.4.3 index—Producing multiple indexes

12 Managing Citations

12.1 Introduction

12.1.1 Bibliographical reference schemes

12.1.2 Markup structure for citations and bibliography

12.1.3 Using BibTeX to produce the bibliography input

12.2 The number-only system

12.2.1 Standard LaTeX—Reference by number

12.2.2 cite—Enhanced references by number

12.2.3 notoccite—Solving a problem with unsorted citations

12.3 The author-date system

12.3.1 Early attempts

12.3.2 natbib—Customizable author-date references

12.3.3 bibentry—Full bibliographic entries in running text

12.4 The author-number system

12.4.1 natbib—Revisited

12.5 The short-title system

12.5.1 jurabib—Customizable short-title references

12.5.2 camel—Dedicated law support

12.6 Multiple bibliographies in one document

12.6.1 chapterbib—Bibliographies per included file

12.6.2 bibunits—Bibliographies for arbitrary units

12.6.3 bibtopic—Combining references by topic

12.6.4 multibib—Separate global bibliographies

13 Bibliography Generation

13.1 The BibTeX program and some variants

13.1.1 bibtex8—An 8-bit reimplementation of BibTeX

13.1.2 Recent developments

13.2 The BibTeX database format

13.2.1 Entry types and fields

13.2.2 The text part of a field explained

13.2.3 Abbreviations in BibTeX

13.2.4 The BibTeX preamble

13.2.5 Cross-referencing entries

13.3 On-line bibliographies

13.4 Bibliography database management tools

13.4.1 biblist—Printing BibTeX database files

13.4.2 bibtools—A collection of command-line tools

13.4.3 bibclean, etc.—A second set of command-line tools

13.4.4 bibtool—A multipurpose command-line tool

13.4.5 pybliographer—An extensible bibliography manager

13.4.6 JBibtexManager—A BibTeX database manager in Java

13.4.7 BibTexMng—A BibTeX database manager for Windows

13.5 Formatting the bibliography with BibTeX styles

13.5.1 A collection of BibTeX style files

13.5.2 custom-bib—Generate BibTeX styles with ease

13.6 The BibTeX style language

13.6.1 The BibTeX style file commands and built-in functions

13.6.2 The documentation style btxbst.doc

13.6.3 Introducing small changes in a style file

14 LaTeX Package Documentation Tools

14.1 doc—Documenting LaTeX and other code

14.1.1 General conventions for the source file

14.1.2 Describing new macros and environments

14.1.3 Cross-referencing all macros used

14.1.4 The documentation driver

14.1.5 Conditional code in the source

14.2 docstrip.tex—Producing ready-to-run code

14.2.1 Invocation of the DOCSTRIP utility

14.2.2 DOCSTRIP script commands

14.2.3 Installation support and configuration

14.2.4 Using DOCSTRIP with other languages

14.3 ltxdoc—A simple LaTeX documentation class

14.3.1 Extensions provided by ltxdoc

14.3.2 Customizing the output of documents that use ltxdoc

14.4 Making use of version control tools

14.4.1 rcs—Accessing individual keywords

14.4.2 rcsinfo—Parsing the $Id$ keyword

A A LaTeX Overview for Preamble, Package, and Class Writers

A.1 Linking markup and formatting

A.1.1 Command and environment names

A.1.2 Defining new commands

A.1.3 Defining new environments

A.1.4 Defining and changing counters

A.1.5 Defining and changing space parameters

A.2 Page markup—Boxes and rules

A.2.1 LR boxes

A.2.2 Paragraph boxes

A.2.3 Rule boxes

A.2.4 Manipulating boxed material

A.2.5 Box commands and color

A.3 Control structure extensions

A.3.1 calc—Arithmetic calculations

A.3.2 ifthen—Advanced control structures

A.4 Package and class file structure

A.4.1 The identification part

A.4.2 The initial code part

A.4.3 The declaration of options

A.4.4 The execution of options

A.4.5 The package loading part

A.4.6 The main code part

A.4.7 Special commands for package and class files

A.4.8 Special commands for class files

A.4.9 A minimal class file

B Tracing and Resolving Problems

B.1 Error messages

B.1.1 Dying with memory exceeded

B.2 Warnings and informational messages

B.3 TeX and LaTeX commands for tracing

B.3.1 Displaying command definitions and register values

B.3.2 Diagnosing page-breaking problems

B.3.3 Diagnosing and solving paragraph-breaking problems

B.3.4 Other low-level tracing tools

B.3.5 trace—Selectively tracing command execution

C LaTeX Software and User Group Information

C.1 Getting help

C.2 How to get those TeX files?

C.3 Using CTAN

C.3.1 Using the TeX file catalogue

C.3.2 Finding files on the archive

C.3.3 Getting multiple files

C.4 Finding the documentation on your TeX system

C.4.1 texdoc—Command-line interface for a search by name

C.4.2 texdoctk—Panel interface for a search by subject

C.5 TeX user groups

D TLC2 TeX CD

Bibliography

Index of Commands and Concepts

People

Biographies

Production Notes

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.22.71.106