O'Reilly logo

Making TeX Work by Norman Walsh

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Table of Contents

Forward to the SourceForge Edition

Acknowledgments

Preface

Why Read This Book?

Scope of This Book

Conventions Used in This Book

How to Get TeX

Where Are the Files?

Getting Software Without FTP

Getting Examples From This Book

Versions of TeX

Implementations and Platforms

UNIX

MS-DOS

OS/2

Macintosh

We'd Like to Hear From You

Acknowledgments

I. An Introduction to TeX

1. The Big Picture

What Is TeX?

TeX for Beginners

Boxes and Glue

Control Sequences

Special Characters

Text Formatting Versus Word Processing

What About Desktop Publishing?

What About troff?

What About SGML?

How TeX Works

TeXing a Simple Document

TeXing More Complex Documents

Building a Table of Contents

Figure References

Indexes and Glossaries

Bibliographies

Special Things

2. Editing

What Can an Editor Do?

Quoting Automatically

Matching Braces

Inserting Common Control Sequences

Running TeX Automatically

GNU Emacs

Starting TeX Mode

Typing in Emacs

Running TeX Automatically

aucTeX

Starting aucTeX

Typing in aucTeX

aucTeX Outline Mode

Intelligent Paragraph Reformatting

Multi-file Documents

Running TeX

Finding Errors

Multi-Edit

Setting Up TeX Support

Typing in Multi-Edit

Running TeX

Brief

MicroEMACS

epm: OS/2's Enhanced Editor

Other Tools

TeX as a Compiler

Processing a Document

Spellchecking

ispell

amSpell

Revision Control

TeX Shells

TeXShell

TeXPert

4TeX

PMTeX

TeXit

3. Running TeX

What Do You Run?

What Files Does TeX Need?

Pool Files

Format Files

User Files

The Command Line

Command-line Options

Command-line Cautions

TeX Without Options

What About Errors?

Log Files

Interpreting TeX Error Messages

Naming a File TeX Cannot Find

Misspelling a Control Sequence Name

Failure to Close an Environment

Math Outside of Math Mode

Missing Fonts

Everything Else

The Question Mark Prompt

4. Macro Packages

Installation: Making Format Files

Hyphenation Patterns

General-purpose Formats

Plain TeX

Extended Plain TeX

LaTeX2e Versus LaTeX

LaTeX2e

LaTeX

AMSTeX

AMSLaTeX

Lollipop

TeXinfo

Other Formats

Special-purpose Formats

SliTeX

FoilTeX

Seminar

TeX in Color

Setting Up Color

Using Color

Now I've Got Color, but I Need Black and White!

Color Under LaTeX2e

Color Is Subtle

Further Reading

II. Elements of a Complex Document

5. Fonts

What TeX Needs To Know

Selecting a Font in TeX

Which Character Is Which?

The Issue of Size

Expressing Design Size in TeX

Expressing Magnification in TeX

Standard Magnifications

Where Do TFM Files Come From?

The New Font Selection Scheme

Selecting Fonts with the New Font Selection Scheme

Defining Fonts with NFSS2

Storing Font Definitions

Changing the Defaults

NFSS Pitfalls

PostScript Fonts Under NFSS

Adjustments to Scale

When Things Go Wrong

When TeX Complains

When the DVI Driver Complains

Encoding Vectors

Virtual Fonts

Automatic Font Generation by DVI Drivers

Math Fonts in TeX

Concrete Examples

MetaFont Fonts

PostScript Type 1 Fonts

HP LaserJet Softfonts

TrueType Fonts

6. Pictures and Figures

Different Kinds of Images

Bitmapped Images

Scalable Images

Device Independence Revisited

Using Only TeX

Plain TeX

LaTeX

PiCTeX

XYPic

DraTeX

Using a Little Help

MFPic

Fig2MF

MetaFont

Using a Little More Help

PSTricks

TeXdraw

tpic

Using a Lot of Help

Electronic Cut-and-paste

Scalable Image Formats

Bitmapped Image Formats

Inserting PostScript Images into TeX

Manipulating Images

Image Magick

PBMplus

xv

xloadimage

Image Alchemy

ColorView

Jpeg4

pmjpeg

txt2pcx

Ghostscript

GoScript

hp2xx

Image Editors

xfig

idraw

tgif

bitmap/pixmap

Other Bitmap Editors

texcad/xtexcad

Screen Dumps

7. International Considerations

Typesetting in Any Language

Reading Input Files

Changing the Rules

Printing the Result

The Babel Styles

Building Multilingual Babel Formats

TeX Pitfalls

Very Complex Languages

Japanese

Chinese

Arabic

Hebrew

8. Printing

Printing Fonts

Built-in Fonts

External Fonts

Bitmapped Fonts

Scalable Fonts

Font Printing Pitfalls

Printing Pictures and Figures

Unsolvable Problems

Solvable Problems

Pictures Using Only TeX

MetaFont Figures

Scalable Images

Bitmap Images

Selected Drivers

emTeX Drivers

dvilj2

dvips

DVILASER/HP

DVILASER/PS

PTI Laser/HP and PTI Jet

PTI Laser/PS

dvipsone

9. Previewing

Previewing Under X11

Previewing with xdvi

Previewing with \xtex

Previewing with Ghostscript

Previewing with emTeX

Previewing with dvivga

TeX Preview

dvideo

PTI View

Previewing Under Windows

dvimswin

dviwin

wdviwin

DVIWindo

Previewing on a TTY

dvi2tty

dvgt/dvitovdu

crudetype

10. Online Documentation

Something Is Lost

TeXinfo

\LaTeX2HTML

LameTeX

latex2hy

detex

dvispell

11. Introducing MetaFont

What to Run?

What Files Does MetaFont Need?

Pool Files

Base Files

MetaFont Programs

Command-line Options

Building a Base File

Running MetaFont

Picking a Mode

Selecting a Size

Making a GF Font

Making a PK Font

What About Errors?

Other Errors

Output at Very High Resolutions

Output at Very Low Resolutions

12. Bibliographies, Indexes, and Glossaries

BibTeX

How BibTeX Works

Building a Bibliography Database

Bibliography Styles

Bibliography Database Tools

Tib

Making Indexes

Index Entries

Index Format

Special-purpose styles

Making Glossaries

III. A Tools Overview

13. Non-commercial Environments

Web2C

emTeX

Where to Start

Unpacking the Archives

Setting Up the Environment

Testing the Installation

Installing Fonts

Making emTeX Smaller

Basic Customization

Installing the Beta Test Versions of emTeX

Running emTeX 386 in Windows

Automatic Font Generation with emTeX

Installing emTeX on a Network

texas

sbTeX

gTeX

14. Commercial Environments

μTeX by ArborText

\yyTeX

Textures

TurboTeX

PCTeX

PCTeX For Windows

Scientific Word

15. TeX on the Macintosh

CMacTeX

DirectTeX

OzTeX

Textures

Other Tools

Alpha

BBEdit

BSR Font Tools

Excalibur

HyperBibTeX

MacGS

dvidvi

MacDVIcopy

MacBibTeX

MacMakeIndex

16. TeX Utilities

List of Tools

A. Filename Extension Summary

B. Font Samples

Font Encodings

Font Samples

C. Resources

TUG: The TeX Users Group

Other User Groups

TeX Software

TeX Shells

Editors

Macro Packages (Formats)

Styles and Macros

Styles That Produced This Book

Utilities

Miscellaneous

D. Long Examples

E. GNU Free Documentation License

0. PREAMBLE

1. APPLICABILITY AND DEFINITIONS

2. VERBATIM COPYING

3. COPYING IN QUANTITY

4. MODIFICATIONS

5. COMBINING DOCUMENTS

6. COLLECTIONS OF DOCUMENTS

7. AGGREGATION WITH INDEPENDENT WORKS

8. TRANSLATION

9. TERMINATION

10. FUTURE REVISIONS OF THIS LICENSE

How to use this License for your documents

Bibliography

List of Figures

1.1. The Letters g and h inside their boxes.

1.2. Example figure produced by both TeX and troff

1.3. A high-level view of TeX

1.4. High-level view of TeX including more detail

1.5. TeXing a More Complex Document

2.1. Extension setup in Multi-Edit

2.2. LaTeX as a compiler in Multi-Edit

2.3. Editing a file with MicroEMACS

2.4. Microsoft Windows online help for LaTeX

2.5. Editing a TeX document with epm under OS/2

2.6. Edit settings control word delimiters

2.7. Spellchecking a document with amSpell

2.8. TeXShell

2.9. TeXPert

2.10. 4TeX

2.11. PMTeX

2.12. TeXit

4.1. Sample page

4.2. Plain TeX Input

4.3. LaTeX2e Input

4.4. LaTeX Input File

4.5. AMSTeX Input File

4.6. AMS sample page

4.7. Lollipop Input File

4.8. TeXinfo Input

4.9. TeXinfo sample page

4.10. Online documentation produced by MakeInfo

4.11. Caffeine by ChemTeX

4.12. The ChemTeX Source for Caffeine

4.13. A lithium cation rendered by ChemStruct

4.14. The ChemStruct Source for the Lithium Cation

4.15. A little Mozart...

4.16. The MusicTeX Source for Figure

5.1. fi as two characters and as a ligature

5.2. We unkerned and kerned

5.3. The Computer Modern Roman letter R at 150pt: (a) from a 5pt design; (b) from a 17pt design

5.4. How TeX uses a virtual font

6.1. An example diagram in Plain TeX

6.2. A parallelogram in LaTeX

6.3. A figure created with (a) epic, and (b) eepic

6.4. Several bezier curves created with the LaTeX bezier style

6.5. Sample diagrams using PiCTeX

6.6. An XYPic diagram

6.7. An DraTeX diagram

6.8. A PostScript bounding box example

6.9. An example of an encapsulated figure

6.10. Another example of an encapsulated figure (resized and rotated)

6.11. Editing an image with xfig

6.12. Editing an image with idraw

6.13. Editing an image with tgif

6.14. An example of bitmap editing an icon

6.15. A text mode screen dump.

7.1. Character mapping example

7.2. Poor Man's Japanese

7.3. \jemtex sample

7.4. Arabic text typeset with ArabTeX

7.5. Hebrew

8.1. Resolution of the bitmap and the device changed simultaneously

8.2. Resolution of the bitmap changed while device held constant

8.3. Previewing and printing with emTeX

9.1. How Previewing with xdvi Works

9.2. Previewing with xdvi

9.3. How Previewing with xtex Works

9.4. Previewing with xtex

9.5. Previewing with Ghostview

9.6. Previewing with emTeX's dviscr

9.7. Previewing with emTeX's dvipm

9.8. Previewing with dvivga

9.9. Previewing with ArborText's Previewer

9.10. Previewing with TurboTeX dvideo (using limited selection of fonts)

9.11. Previewing with Personal TeX's Previewer

9.12. Previewing with dvimswin

9.13. Previewing with dviwin

9.14. Previewing with TurboTeX's wdviwin

9.15. Previewing with Y&Y's DVIWindo

9.16. DVIWindo preview much enlarged

9.17. Previewing with dvgt under Tektronix 4010 emulation

10.1. TeXinfo sample page

10.2. Online documentation produced by MakeInfo

11.1. A figure eight created with MetaFont

12.1. Editing an article entry with \program{bibview}

12.2. Editing an article entry with \program{xbibtex}

12.3. Editing an article entry with \program{bibdb}

14.1. The PCTeX menu system

14.2. PCTeX For Windows editing and previewing a LaTeX document

14.3. PCTeX For Windows TrueType font metric builder

14.4. Editing a document with Scientific Word

14.5. Preview of the Scientific Word document shown in Figure

15.1. Editing, previewing, and typesetting in Textures

15.2. Alpha editing the fonts chapter from this book

15.3. \program{BBEdit} editing the fonts chapter from this book

15.4. \program{Excalibur} spellchecking the fonts chapter from this book

15.5. The \program{Hyper\BibTeX} view of a bibliographic database

List of Tables

1.

1.1. Special Characters in Plain TeX

1.2. How to Typeset Special Characters

2.1. aucTeX Math Operators in Mathematics Minor-mode

2.2. TeX Modes of Interaction

3.1.

5.1. Standard Weight and Width Designations

5.2. Weight and Width Are Combined to Form Series

5.3. Standard Abbreviations of Font Shape

5.4. User-level Font Selection Control Sequences in NFSS2

5.5. Encoding Schemes Supported by NFSS2

5.6. Default Fonts

5.7.

6.1. Graphics Manipulation Packages

6.2. Graphics Editing Packages

7.1. Standard Control Sequences for Symbols from Other Character Sets

7.2. New Control Sequences Proposed by TWGMLC

7.3. Language Switch Macros Proposed by TUG

8.1. Common DVI Drivers

8.2. Other \protect\dvilaserhp Utilities

8.3. Other \protect\dvilaserps Utilities

8.4. Other dvipsone Utilities

9.1. Common Previewers

9.2. TeX Preview Utilities

9.3. DVIWindo Utilities

11.1. Some Popular MetaFont Fonts on the CTAN Archives

12.1. Types of Entries with Required and Optional Fields

13.1. Summary of the \protect\emTeX Distribution

13.2. Fonts Libraries Available for \protect\emTeX on CTAN

13.3. Other \protect\emTeX Executables

13.4. The Beta Test Files for \protect\emTeX

14.1. TurboTeX Programs

14.2. Turbo\protect\TeX \protect\MF Programs

15.1. Summary of the \protect\cmactex Distribution at CTAN

15.2. Summary of the \protect\oztex Distribution at CTAN

15.3. Font Tools in the BSR package

16.1. The Public Doman DVI Driver Family

16.2. RTF Translators

16.3. Additional Scripts in PS Utils

B.1. The Computer Modern Roman Font Encoding

B.2. The Computer Modern Math Italic Font Encoding

B.3. The Cork Font Encoding

B.4. The Adobe Standard Font Encoding

List of Examples

1.1. An Example of a TeX Document

1.2. A typical bibliography database entry

2.1. A Simple Driver File

2.2. Local Variables in an Emacs Buffer

2.3. A Contrived Error

2.4. Revision Control Macros for TeX Documents Using RCS}

3.1. The Document BADFONT.TEX

5.1. Font-shape Declaration with NFSS2

5.2. Font-shape declaration with NFSS2 (simplified)

5.3. The PStoTeXfont script

6.1. The Input for the Plain TeX Diagram

6.2. The LaTeX Input for

6.3. The epic Input for

6.4. The Input for

6.5. PiCTeX Input for

6.6. The XYPic Input for

6.7. The DraTeX Input for

6.8. Converting Encapsulated PostScript to a Bitmap with Ghostscript

6.9. Script for Inserting a Captured Text Screen

7.1. {A Sample Multilingual Document Using English and French}

10.1. TeXinfo Commands

11.1. The Code for the Figure Eight

12.1. A Sample BibTeX entry

12.2. A Tib style database entry

D.1. MakeTeXPK.pl

D.2. MakeTeXTFM.pl

D.3. dvidxx.btm

D.4. makepk.btm

D.5. enc-afm.pl

D.6. TeXtoXfont

D.7. PStoXfont

D.8. txt2verb.pl

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required