Tables of Contents for The Latex Companion
A Short History of TEX and LATEX
1
2
In the Beginning There Was TEX
1
1
Then Leslie Lamport Developed LATEX
2
1
With LATEX toward the Year 2000?
3
1
LATEX and Its Components
3
3
The Concept of Generic Markup
6
3
What Is Generic Markup?
6
2
Advantages of Generic Markup
8
1
Separation of Content and Form
8
1
Necessity of Layout Markup
9
2
Pitfalls of Layout Markup
9
1
When to Use Layout Markup
10
1
The Structure of a LATEX Document
11
36
The Structure of a Source File
11
6
Processing of Options and Packages
13
3
Splitting the Source File into Parts
16
1
Combining Several Files
17
1
Changing Fixed Heading Texts
30
1
Structure of the Table of Contents
31
9
Typesetting a Contents List
32
3
Entering Information into the Contents Files
35
1
Defining a New TOC-Like File
36
1
Multiple Tables of Contents
36
4
varioref---More Flexible Cross-References
41
4
References to External Documents
45
2
Basic Formatting Tools
47
36
Phrases and Paragraphs
48
8
letterspace---Changing Inter-Letter Spacing
48
1
ulem---Emphasize via Underline
49
1
xspace---Gentle Spacing after a Macro
50
1
Paragraph Justification
50
2
doublespace---Changing Inter-Line Spacing
52
1
picinpar---Typeset a Paragraph with a Rectangular Hole
53
1
shapepar---Typeset a Paragraph with a Specified Shape
54
2
Modifying the Standard Lists
56
4
alltt---A Verbatim-Like Environment
66
1
verbatim---A Style for Literal Text
66
1
moreverb---More Verbatim-Like Environments
66
4
Footnotes, Endnotes, and Marginals
70
5
Using Multiple Columns
75
5
multicol---A Flexible Way to Handle Multiple Columns
76
1
Typesetting in Columns
76
1
Customizing the multicols Environment
77
2
Floats and Footnotes in multicol
79
1
ftnright---Right Footnotes in a Two-Column Environment
80
1
Simple Version Control
80
3
The Layout of the Page
83
18
Geometrical Dimensions of the Layout
84
3
Typesetting Pages in Landscape Mode
90
1
Writing New Page Styles
92
4
Customizing Page Styles with fancyheadings
96
3
Comparing the tabbing and tabular Environments
102
1
Using the tabbing Environment
102
2
The program Environment
104
1
array---Extending the tabular Environments
104
14
Examples of Preamble Commands
105
5
Defining New Column Specifiers
112
1
Some Peculiarities of the array Implementation
113
1
tabularx---Automatic Calculation of the Column Widths
113
4
delarray---Specifying Delimiters Surrounding an Array
117
1
Multipage Tabular Material
118
11
supertab---Making Multipage Tabulars
119
3
longtable---Sophisticated Multipage Tabulars
122
4
dcolumn---Defining Column Alignments
129
1
hhline---Combining Horizontal and Vertical Lines
130
1
Hyphenation in Narrow Columns
132
1
Footnotes in Tabular Material
132
1
Managing Tables with Wide Entries
133
1
Columns Spanning Multiple Rows
134
2
Understanding Float Parameters
141
3
Improved Float Control
144
2
float---Creating New Float Types
146
4
I Want My Float ``Here''!
149
1
Different Kinds of Floating Environments
150
4
floatfig---Narrow Floating Figures
150
1
wrapfig---Wrapping Text around a Figure
151
1
subfigure---Figures inside Figures
152
1
endfloat---Place Figures and Tables at the End
153
1
Customizing Your Captions
154
3
Understanding Font Characteristics
159
6
Monospaced and Proportional Fonts
159
1
Serifed and Sans Serif Fonts
160
1
Font Families and Their Attributes
160
4
Standard NFSS Font Commands
165
5
Combining Standard Font Commands
170
1
Font Commands versus Declarations
171
1
Accessing All Characters of a Font
172
1
Changing the Default Text Fonts
173
1
LATEX 2.09 Font Commands
174
1
Special Math Alphabet Identifiers
175
3
Text Font Commands in Math
178
1
Mathematical Formula Versions
178
2
Providing New Text Fonts
180
3
Providing New Math Fonts
183
2
slides---Producing Overhead Slides
185
1
Processing Older Documents
185
1
Special Packages for NFSS
186
1
The Low-Level Interface
187
7
Setting Individual Font Attributes
188
4
Setting Several Font Attributes
192
1
Automatic Substitution of Fonts
193
1
Using Low-Level Commands in the Document
193
1
Setting Up New Fonts
194
16
Declaring New Font Families and Font Shape Groups
194
8
Modifying Font Families and Font Shape Groups
202
1
Declaring New Encoding Schemes
202
1
Internal File Organization
203
2
Declaring New Fonts for Use in Math
205
4
The Order of Declaration
209
1
Warning and Error Messages
210
5
The AMS-LATEX Project
215
1
Fonts and Symbols in Formulae
216
7
Names of Math Font Commands
216
1
Compound Symbols, Delimiters, and Operators
223
8
Multiple Integral Signs
223
1
Over and Under Arrows
223
1
Superscripted Accents
225
1
\overset, \underset, and \sideset
226
1
\mod and Its Relatives
229
1
Fractions and Related Constructions
229
1
Matrix-Like Environments and Commutative Diagrams
231
4
The cases Environment
231
1
The Matrix Environments
231
2
The Sb and Sp Environments
233
1
Alignment Structures for Equations
235
5
The align Environment
236
1
The gather Environment
236
1
The alignat Environment
237
1
The multline Environment
237
1
The split Environment
238
1
Alignment Environments as Parts of Displays
239
1
Vertical Spacing and Page Breaks in Equation Structures
239
1
The \intertext Command
240
1
Resetting the Equation Counter
241
1
Fine-Tuning Spacing in Math Mode
242
1
Options and Sub-Packages to the amstex Package
243
1
AMS-LATEX Document Classes
244
1
Examples of Multiple-Line Equation Structures
244
7
The split Environment
244
3
The multline Environment
247
1
The gather Environment
248
1
The align Environment
248
1
Using the align and split Environments within gather
249
1
Using the alignat Environments
250
1
Extensions to the theorem Environment
251
4
Defining New Theorem Environments
252
1
Examples of the Definition and Use of Theorems
253
1
Special Considerations
254
1
Mathematical Style Parameters
255
4
Controlling the Size of Characters
255
1
LATEX Math Style Parameters
256
3
LATEX in a Multilingual Environment
259
16
TEX and Non-English Languages
259
3
The Virtual Font Mechanism
261
1
Babel---LATEX Speaks Multiple Languages
262
10
The Structure of the babel Language Style Files
265
7
Implementing Typographic Rules
272
3
Traditional French Typographic Rules
272
1
Commands of the french Package
273
1
Structure of the french Package
274
1
Portable Graphics in LATEX
275
36
The picture Environment
280
13
Bezier Approximations
280
1
Putting Multiple Boxes
281
1
Drawing Binary or Ternary Trees
282
1
Examples of the barenv Environment
286
1
Drawing Arbitrary Curves
287
6
Enhancements to the picture Environment---epic
293
7
Description of the Commands
295
5
Extending the epic Package
300
3
eepic's Extensions to LATEX
300
1
eepic's Extensions to epic
301
1
New Commands with eepic
301
1
Packages Based on epic
303
8
Drawing Bipartite Graphs
303
4
The PostScript Language
311
4
What Is Encapsulated PostScript?
313
2
dvips---A dvi to PostScript Converter
315
2
Merging Text and PostScript Graphics
317
3
More Complex Figure Arrangements
320
1
Rotating Tabular Material
324
3
Rotated Captions Only
327
1
Deficiencies and Bugs
330
1
Boxing and Gray Shading
330
1
Overlaying Text on the Output Page
332
1
Naming Those Thousands of Fonts
332
2
Using the PostScript Pi Fonts
335
2
Generic Commands in the Style pifont
337
1
Setting Up New PostScript Fonts Yourself
339
1
Replacing All TEX Fonts with PostScript Fonts
340
1
DCPS---The Cork Encoding with PostScript Fonts
340
5
Syntax of the Index Entries
346
6
Generating Subentries
348
1
Page Ranges and Cross-References
348
1
Controlling the Presentation Form
349
1
Printing Those Special Characters
350
1
Consistency and Index Entries
351
1
Generating the Raw Index
352
1
Generating the Formatted Index
353
1
Running the MakeIndex Program
353
4
Detailed Options of the MakeIndex Program
355
1
Customizing the Index
357
7
Example of Index Style Files
358
1
Changing the ``Special Characters''
360
1
Changing the Output Format of the Index
361
2
Treating Funny Page Numbers
363
1
A Reimplementation of the Index Commands
367
4
Bibliography Generation
371
50
Entering the Citations
372
3
Customizing the Citations
373
1
Customizing the Bibliography Labels
374
1
Using BIBTEX with LATEX
375
10
A List of BIBTEX Style Files
376
2
Examples of BIBTEX Styles
378
7
Multiple Bibliographies in One Document
385
7
The chapterbib Package
385
1
Bibliography Data Base Management Tools
392
6
The General Format of the .bib File
398
7
The General Format of a BIBTEX Entry
398
1
The Text Part of a Field Explained
398
4
Abbreviations in BIBTEX
402
2
Detailed Description of the Entries
405
2
Understanding BIBTEX Styles
407
7
A General Description of a BIBTEX Style File
407
3
The BIBTEX Style File Commands
410
1
The Built-In Functions
410
1
The Documentation Style btxbst.doc
410
4
Introducing Small Changes in a Style File
414
5
Foreign Language Support
416
3
makebst---Customizing Bibliographic Style Files
419
2
LATEX Package File Documentation Tools
421
18
Documenting Package Files
421
1
The User Interface for the doc Package
422
10
Describing New Macros and Environments
423
1
Cross-Referencing All Macros Used
424
1
Producing the Actual Index Entries
424
1
Additional Bells and Whistles
424
1
A Simple Example of a File Documented with doc
426
6
Conditional Inclusion of Code
434
1
An Example of an Installation Procedure
435
4
A A LATEX Overview for Package and Class Writers
439
36
A.1 Linking Markup and Formatting
439
12
A.1.1 Defining New Commands
440
2
A.1.2 Defining New Environments
442
3
A.1.3 Defining and Changing Counters
445
2
A.1.4 Defining and Changing Space Parameters
447
4
A.2 Page Markup---Several Kinds of Boxes
451
9
A.2.2 Paragraph Boxes
455
3
A.2.4 Manipulating Boxed Material
459
1
A.3 Package and Class File Structure
460
8
A.3.1 The Identification Part
462
1
A.3.2 The Initial Code Part
463
1
A.3.3 The Declaration of Options
463
1
A.3.4 The Execution of Options
464
1
A.3.5 The Package Loading Part
465
1
A.3.6 The Main Code Part
466
1
A.3.7 Special Commands for Package and Class Files
466
1
A.3.8 Special Commands for Class Files
467
1
A.4 calc---Arithmetic Calculations
468
2
A.5 ifthen---Advanced Control Structures
470
5
B.1 The Main TEX Internet Sites
475
4