The Advanced TeXbook.

Front cover

By David Salomon. Published by Springer in August, 1995. ISBN 0-387-94556-3. LCCN Z253.4.T47S25 1995. xx + 490 pages.

The book has developed out of classes taught for TUG, the TeX Users' Group during 1985--1995. A large part of the material has been prepublished in TUGboat. In addition to a detailed index the book includes numerous exercises scattered throughout the text, offering the reader a chance to test their knowledge and understanding "on the fly." Answers are provided. The book is bound as a paperback with a colorful cover.

A BibTeX style file and an Errata list are available. See also here.

The author would like to thank C. G. van der Laan who read most of the material and made helpful comments and important suggestions. Johnny Tolliver made an indirect contribution by implementing the MakeIndex program on the Macintosh.

Table of contents

Page 43

Page 34

Front matter
Preface [v--xi].
Table of contents [xiii-xx].
Introduction [1--14].
Basics, fonts, dimensions, scaling.
Chapter 2. Advanced Introduction [15--32].
Registers, modes, anatomy, characters, end-of-line, numbers, category codes, commands, assignments, lists, whatsits, parameters, discardable items, macros, formats.
Page 163

Page 88

Chapter 3. Boxes and Glue [33--86].
\hbox, box registers, modes, \vbox, \boxmaxdepth, \vtop, opening boxes, glue, flexible glues, the filneg glues, predefined fills, orders of infinity, glue set ratio, badness, the interline glue, kern, rules, phantoms and \smash, \vsplit, \lastbox.
Chapter 4. Paragraphs [87--108].
paragraph start and end, \everypar, horizontal lists, interword glue, interline glue, line spacing, paragraph shapes, paragraph indentation, hanging indentation, \vadjust, \obeylines, concatenating paragraphs, \par, \prevgraf, \parshape.
Chapter 5. Macros [109--142].
Delimiting parameters, macro names, spurious spaces, reading the source file, braces, \let, \futurelet, \afterassignment, \aftergroup, \expandafter, \csname, nested macro definitions and expansions, recursion, \edef, debugging aids, \catcode, \jobname, \chardef, active characters.
Page 234

Page 186

Chapter 6. Conditionals [143--160].
Types of conditionals, boolean variables, \ifx, \if, \ifcat, nested ifs, evaluation of conditionals.
Chapter 7. Examples of Macros [161--192].
Slanted lines, grids, scanning the argument, transferring an argument, vertical printing, reversing the argument, scanning a string, adding a constant, writing strings on file, verbatim listing, ignoring the last character, spreading a string, placing commas between digits, looking at the next word, bracketing text, a dropshadow, combining text and graphics, a variation on \boxit, fitting text in a given box, the Sierpinski triangle, macros for looping.
Chapter 8. Tokens and File I/O [193--210].
Toks and macros, file I/O, keyboard input, writing arbitrary strings on file.
Page 308

Page 275

Chapter 9. Multipass Jobs [211--220].
Cross-referencing in a document, general cors-referencing, creating a table-of-contents, remarks.
Chapter 10. Special Topics [221--228].
Pasting material in Textures, shaded boxes in postscript, arithmetic calculations.
Chapter 11. Leaders [229--236].
Horizontal leaders, brace fills, staggered leaders, vertical leaders.
Chapter 12. Tables [237--248].
\halign, examples, remarks, \valign.
Chapter 13. Advanced Math [249--270].
noncentered displays, math fonts, the four styles, spacing in math mode, ordinary symbols, large operators, binary operators, relations, openings and closings, punctuations, inner subformulas, delimiters, radicals, \mathaccent, horizontally extensible symbols, super- and subscripts, ellipses, the vertical bar, \mathsurround.
Page 367


Chapter 14. Line & Page Breaks [271--284].
Tolerance, demerits, the line-break algorithm, hyphenation, the page-break algorithm.
Chapter 15. Handling Errors [285--294].
Warnings, errors, fatal errors, notes.
Chapter 16. Output Routines [295--326].
The MVL and the page builder, the current page and LRC, header and footer, a title page, crop marks, a bordered page, \vsplit, splitting a box, double-column pages, \raggedbottom, facing figures, selective page shipout, end of document.
Chapter 17. OTR Techniques: I [327--362].
Special penalties, \lastxx, breaking up a page, duplicating a page, reversing a page, counting the lines, breaking up a line of text, \rightskip, \parshape, depth of \box255, communication by kern, two-pass methods, tables broken across pages, communication by special vboxes, verse numbers in the left margin, revision bars.

Back Cover

Chapter 18. OTR Techniques: II [363--384].
Method 1, example, method 2, example, method 3, example.
Chapter 19. Insertions [385--416].
Insertions (introductory), insertions (intermediate), tracing insertions (preliminary), endnotes, footnotes, right margin insertions, floating insertions, the plain format OTR, \supereject, \insertpenalties, insertions (advanced), tracing (in detail), endnotes, practical problems.
Chapter 20. Example Format [417--434].
The main macros, the final typesetting, the TOC macros, the index, special characters.
References [435--438].
Back matter
Appendix A. Answers to Exercises [439--470].
Index [471--490].