A L^{A}TEX survival guide for Unix systems

edited by Sebastian Rahtz

January 10th 1994

Contents

1 Introduction 1

2 Getting Started 2 2.1 Running a Sample File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2.2 Preparing and Running L^{A}TEX on Your Own Files . . . . . . . . . . . . . . . . . 2

3 Carrying On 4 3.1 Operating system issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 3.2 How to use the dvips command . . . . . . . . . . . . . . . . . . . . . . . . . . 5

3.2.1 Using the ‘epsfig’ package . . . . . . . . . . . . . . . . . . . . . . . . . 6

4 Document classes 6 4.1 ‘Mainz’ packages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 4.2 Other packages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 4.3 Local macros and environments . . . . . . . . . . . . . . . . . . . . . . . . . . 9

5 Additional BibTEX style files 9

6 Fonts 11 6.1 Using PostScript fonts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

7 Previewers 13

8 Related software 15

A Joining the TEX and L^{A}TEX Community 15 A.1 UK TEX users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

1 Introduction

This document is designed to provide new users of L^{A}TEX with a reference for the local features not documented in the manual (The L^{A}TEX Book, Lesley Lamport, Addison Wesley 1987); it takes the place of the Local Guide referred to in the book. For a general introduction to L^{A}TEX, you are referred to the companion manual Essential L^{A}TEX ++, mostly by Jon Warbrick. For a general introduction to the concepts of the TEX software distribution, see Joachim Schröd’s Components of TEX.

Readers of this document will normally be staff or students who have either taught themselves L^{A}TEX, or are being taught it as part of a course. Completely new users should read Essential L^{A}TEX ++ first, to familiarize themselves with basic concepts. Most of this manual is for reference purposes, so do not read it as a tutorial text!

L^{A}TEX runs on a variety of computers at many different sites. This document tells you how to use L^{A}TEX on Unix computers.^{1} It is not about L^{A}TEX itself, which is described by the manual— L^{A}TEX: A Document Preparation System, published by Addison-Wesley, available at the book shop.

If you have a question that you can’t answer by reading the manual and this document, ask the local support team.

2 Getting Started

2.1 Running a Sample File

Before preparing your own documents, you may want to get acquainted with L^{A}TEX by running it on a sample input file. First make your own copy of the file sample.tex by typing the following command:

       cp /usr/local/tex/texmf/tex/latex/base/sample2e.tex .

(You must type the space followed by the period at the end. This and all other commands are ended by typing return.) A copy of the file sample.tex is now in your current directory; you can edit it just like any other file. If you destroy or mess up your copy, typing the above command again gets you a fresh one. Study this file as an example of a complete L^{A}TEX document, which uses many of the common features.

Next, run L^{A}TEX on the file sample.tex by typing:

      latex sample

When L^{A}TEX has finished, it will have produced the file sample.dvi in your directory. You can print this file by typing the command

      dvips sample

After it has been printed, you can delete sample.dvi . You’ll also see a file called sample.log which contains a copy of all the messages that came on the screen (with, sometimes, more detail). You can safely delete this after your run.

2.2 Preparing and Running L^{A}TEX on Your Own Files

You can use any text editor which produces plain ASCII text files to prepare input for L^{A}TEX. The easiest way to start learning about L^{A}TEX is by examining the file small2e.tex with your text editor. You can obtain your own copy of this file, in your directory, by typing the command

       cp /usr/local/tex/texmf/tex/latex/base/small2e.tex .

After you have prepared your file, whose name should have the extension tex, you must run it through L^{A}TEX and print the output. Follow the instructions in Section 2.1, except substitute the first name of your file for sample . Remember to save disk space by deleting the dvi files after printing the output.

If you are used to using an Emacs-type editor, you may wish to utilise the facilities provided by GnuEmacs. These can be used on ordinary terminals, but if used on a workstation console, can use the mouse and function keys. Look out for the AUC-TeX package which provides a comprehensive set of facilities for editing L^{A}TEX code.

1Excellent public domain implementations of TEX for MSDOS, OS/2 and Macintosh computers are available from the UK TEX Archive; see A.1 below.

Question  Answer
How do I run L^{A}TEX  Use the ‘latex’ command…
How do I print a file?  Use the dvips command…

Can I have bibliographies done for me?

Use BibTEX (it’s documented in the L^{A}TEX book Appendix B!)—see section 5 below.

How do I recover from errors?

TEX is notorious for giving you apparently meaningless error messages! If you type ‘e’ when you get a TEX ‘?’ prompt, you will be put into the editor (by default, ‘vi’—set the environment variable TEXEDITOR to use a different one) at the error-producing line.

What if I run out of TEX memory?

This is a very big TEX already that you are running. If you run out of memory, its probably your fault.

Is it possible to draw pictures?

L^{A}TEX itself has a ‘picture’ environment, described in the manual, but the simplest way is to include a PostScript figure created with any good drawing tool (see section 3.2.1 below for how to include PostScript in L^{A}TEX).

How do I preview files before I print them?

Use one of two previewers, dvipage and xdvi, depending on whether your windowing system is Sunview or X Windows.

Are there other packages for L^{A}TEX?

Lots. We have tried to collect useful-looking things. Some of these are documented below.

Are we in contact with the rest of the L^{A}TEX community?

Yes. There is a world-wide TEX-hackers mailing list, and a UK list. These are the next line of defense after your local gurus; the UK bulletin is posted on Usenet news.

Are there other macro packages than L^{A}TEX?

Yes, certainly, but do not expect as much documentation and examples. AMS-TEX (from the American Mathematical Society) is widely used. Such formats are not available by default—talk to technical support if you want to use them.

Can I use Metafont to create my own fonts?

Yes, it is installed. But don’t expect much help about design!

Can I join a TEX User Group?

Yes, contact the TEX Users Group, P. O. Box 869, Santa Barbara, CA 93102, USA. telephone 805-899-4673; email Internet:

tug@tug.org

Table 1: Common questions, with answers

If you want to stop L^{A}TEX in the middle of its execution, perhaps because it is printing a seemingly unending string of uninformative error messages, press Ctrl-C, and respond to the prompt with ‘X’

3 Carrying On

3.1 Operating system issues

The only special problems in using L^{A}TEX under this operating system involve the way files are handled. The first problem arises because, when a program starts to write a file, the previous version of that file is destroyed. Thus, if an error forces you to stop L^{A}TEX prematurely (by typing Ctrl-C), then the files that L^{A}TEX was writing are incomplete, and the previous complete versions have been destroyed. You probably don’t care about the output on the dvi file, but, if you are making a table of contents or using cross-referencing commands, then L^{A}TEX also writes one or more auxiliary files that it reads the next time it processes the same input file. If the auxiliary files are incomplete because L^{A}TEX was stopped before reaching the end of its input file, then the table of contents and cross-references will be incorporated the next time L^{A}TEX is run on the same input file. You will have to run L^{A}TEX a second time to get them right. If you want to avoid having to run L^{A}TEX twice after making an error—for example, if your input is very long—then you should save copies of these auxiliary files before running L^{A}TEX. An input file named myfile.tex and all the auxiliary files produced by L^{A}TEX from it are included in the file specifier myfile.* . Use the cp command to save copies of these files.

The second problem in using L^{A}TEX involves the files that L^{A}TEX reads. The file whose name you type with the latex command is called the root file. In addition to reading the root file, L^{A}TEX also reads the files specified by \input and \include commands. With our directory system, L^{A}TEX must know not only the names of these file but also on what directories they are. It will have no problem finding the correct files if you follow two simple rules:

1. Run L^{A}TEX from the directory containing the root file.

2. Keep all files specified by \input and \include commands in the same directory as

the root file. If you follow these rules, you never have to type a path specifier when using L^{A}TEX.

You should never break the first rule, otherwise L^{A}TEX will have trouble finding auxiliary files. (To run L^{A}TEX on someone else’s file, copy the file to your directory.) If you break the second rule, specifying a file from another directory in an \input or \include command, you must use a complete path name. For example, to include the file hisfile.tex from kk’s directory foo/bar , you can type

      \include{/home/kk/foo/bar/hisfile}

For people who don’t like to obey rules, here is exactly how L^{A}TEX finds its files. The root file is found by the operating system according to its usual rules. L^{A}TEX’s auxiliary files are read and written in the directory from which it is run. All file names specified in the L^{A}TEX input, including the names of document class files specified by the \documentclass command, are interpreted relative to the directory from which L^{A}TEX is run. If L^{A}TEX does not find a file starting in this directory, it looks in the system directory /usr/local/tex/texmf/tex/latex. You can change the directories in which L^{A}TEX looks for its input files by setting the environment variable TEXINPUTS . You need to type a shell command:

      Shell command to type
      rc  TEXINPUTS=(.  /home/dracula/texdocs)
      sh  TEXINPUTS=.:/home/dracula/texdocs:; export TEXINPUTS
      csh setenv TEXINPUTS .:/home/dracula/texdocs:

This causes L^{A}TEX to look for files first in the current directory (do not neglect to specify a . for the current directory as the first place in the list), then in dracula’s texdocs directory, and then in the system directory (the trailing : implies this). You might want to do this if your name is Dracula and you have your own personal package files in your texdocs directory.

3.2 How to use the dvips command

The dvips command is used to convert the TEX output file into PostScript, and spool it to a LaserWriter or other PostScript printer (including screen-based PostScript interpreters like GhostScriptor OpenWindows). It includes the facility to incorporate raw PostScript files into L^{A}TEX, using a \special command (see below, section 3.2.1). It is normally configured to invoke lpr directly.

The dvips driver has a plethora of command line options. Reading through this section will give a good idea of the capabilities of the driver.

Many of the parameterless options can be turned off by immediately suffixing the option with a zero (0); for instance, to turn off page reversal if it is turned on by default, use -r0. The options that can be turned off in this way are -a, -f, -k, -i, -m, -q, -r, -s, -E, -F, -K, -M, -N, -U, and -Z.

This is a handy summary of the options; it is printed out when you run dvips with no arguments.

This is dvipsk 5.58a Copyright 1986, 1994 Radical Eye Software
      Usage: dvips [options] filename[.dvi]
 a*  Conserve memory, not time       y # Multiply by dvi magnification
 b # Page copies, for posters e.g.  A   Print only odd (TeX) pages
 c # Uncollated copies                B   Print only even (TeX) pages
 d # Debugging                         C # Collated copies
 e # Maxdrift value                   D # Resolution
 f*  Run as filter                     E*  Try to create EPSF
 h f Add header file                  F*  Send control-D at end
 i*  Separate file per section       K*  Pull comments from inclusions
 k*  Print crop marks                 M*  Don't make fonts
 l # Last page                         N*  No structured comments
 m*  Manual feed                       O c Set/change paper offset
 n # Maximum number of pages         P s Load config.$s
 o f Output file                       R   Run securely
 p # First page                        S # Max section size in pages
 q*  Run quietly                       T c Specify desired page size
 r*  Reverse order of pages          U*  Disable string param trick
 s*  Enclose output in save/restore V*  Send downloadable PS fonts as PK
 t s Paper format                      X # Horizontal resolution
 x # Override dvi magnification      Y # Vertical resolution
                                         Z*  Compress bitmap fonts
 pp #-# First-last page
      # = number   f = file   s = string  * = suffix, `0' to turn off
      c = comma-separated dimension pair (e.g., 3.2in,-32.1cm)

The -E option makes dvips attempt to generate an EPSF file with a tight bounding box. This only works on one-page files, and it only looks at marks made by characters and rules, not by any included graphics. In addition, it gets the glyph metrics from the tfm file, so characters that lie outside their enclosing tfm box may confuse it. In addition, the bounding box might be a bit too loose if the character glyph has significant left or right side bearings. Nonetheless, this option works well for creating small EPSF files for equations or tables or the like.

3.2.1 Using the ‘epsfig’ package

If you want to include a PostScript graphic into a L^{A}TEX file, use the \epsfig package with, e.g.:

\documentclass{article}
\usepackage{epsfig}

Now, at the point you want to include the file, enter a line such as \epsfig{figure=foo.ps}. If your file did not (or does not currently) have a bounding box comment, you should supply it as in the following example:

\epsfig{bbllx=100,bblly=100,bburx=500,bbury=500,file=foo.ps}

(in the same order they would have been in a normal bounding box comment). Note that all information for \epsfig is included in a single parameter, separated by commas. Now, save your changes and run TEX and \dvips; the output should have your graphic positioned at precisely the point you indicated, with the proper amount of space reserved.

The effect of the \epsffile macro is to typeset the figure as a TEX \vbox at the point of the page that the command is executed. By default, the graphic will have its ‘natural’ width (namely, the width of its bounding box). The TEX box will have depth zero and a ‘natural’ height. For graphics included with \epsfig where the size is given in TEX dimensions, this scaling will produce the correct, or expected, results.

You can enlarge or reduce the figure by putting width=<dimen> in the parameter of \epsfig. Then the width of the TEX box will be \<dimen> and its height will be scaled proportionately. Alternatively you can force the vertical size to a particular size with height=<dimen> in which case the height will be set and the width will be scaled proportionally. If you set both, the aspect ratio of the included graphic will be distorted but both size specifications will be honored.

By default, clipping is disabled for included EPSF images. This is because clipping to the bounding box dimensions often cuts off a small portion of the figure, due to slightly inaccurate bounding box arguments. The problem might be subtle; lines around the boundary of the image might be half their intended width, or the tops or bottoms of some text annotations might be sliced off. If you want to turn clipping on, just use the parameter clip= to \epsfig.

4 Document classes

The normal article, book and report classes described in the manual are available. There are three groups of package files available: a) those supplied with L^{A}TEX, and endorsed by the maintainers; b) those initially developed by Frank Mittelbach and Rainer Schöpf (sometimes known as the ‘Mainz’ packages), and other members of the L^{A}TEX team, which will definitely work; those written and distributed by other L^{A}TEX users which have come into common use, but which are not so carefully tested. These packages may affect the main layout and style (eg ‘times’, ‘multicol’) or add new facilities (eg ‘longtable’).

4.1 ‘Mainz’ packages

The recent, widely-used, packages from Mittelbach and Schöpf have their own documentation, stored with the source of the packages in directories of the relevant name in

/usr/local/tex/texmf/tex/latex/tools.

If you want to read the full documentation, copy the files from the relevant directory, and look at the readme file for how to get a printout. The packages are:

array An extensive revision of the L^{A}TEX tabular and array modes by Frank Mittelbach; the chief differences are new options in the preamble, listed in Table 2, quoted from the documentation.

  m{width}

Definines a column of width width. Every entry will be centered in proportion to the rest of the line. It is somewhat like

             \parbox{width}.
  p{width} Equivalent to \parbox[t]{width}.
  b{width} Coincides with \parbox[b]{width}.
  >{decl.}

Can be used before an l, r, c, p, m or a b option. It inserts decl. directly in front of the entry of the column.

  <{decl.}

Can be used after an l, r, c, p{..}, t{..} or a b{..} option. It inserts decl. right after the entry of the column.

      |

Inserts a vertical line. The distance between two columns will be enlarged by the width of the line in contrast to the original definition of L^{A}TEX.

  !{decl.}

Can be used anywhere and corresponds with the | option. The difference is that decl. is inserted instead of a vertical line, so this option doesn’t suppress the normally inserted space between columns in contrast to @{...}.

Table 2: The new preamble options for ‘array’

Additionally there is a new parameter called \extrarowheight. If it takes a positive length, the value of the parameter is added to the normal height of every row of the table, while the depth will remain the same. This is important for tables with horizontal lines because those lines normally touch the capital letters. Facilities are available for defining new column specifiers, and for columns which line up on a decimal point. This package also provides a ‘longtable’ package which implements arbitrarily-long multipage tables. For simple multi-page tables, the supertab package described below in section 4.2 will probably suffice.

ftnright a package which sets footnotes in the right-hand column of a two column style.

multicol Provides a flexible mechanism for multiple columns on a page. An ennvironment multicols is provided, with a parameter of the number of columns desired. The number of columns (up to 10) can be changed in the middle of a page.

This is set in four columns across the page, and ‘multicols’ is going to take care of the column breaks and making the columns the same height. You can see that the normal justification of TEX is finding this hard work.

What is that sound high in the air Murmur of maternal lamentation Who are those hooded hordes swarming Over endless plains, stumbling in cracked earth Ringed by the flat horizon only What is the city over the mountains Cracks and reforms and bursts in the violet air Falling towers

theorem new implementations of theorem environments.

verbatim new, more robust, implementations of verbatim environments, including facilities for verbatim input of a text file.

Some of these documents are rather technical. Ask for advice if you do not understand them.

4.2 Other packages

Some commonly-used, or interesting, packages which change the normal layout or style, or add new facilities, are

pifont Gives you access to Zapf Dingbats, if you have a PostScript printer and use dvips.

\ding generates a Zapf Dingbat character; it has a parameter of the Dingbat number (see chart p. 14 below). Thus \ding{166} generates .

\dingfill (with the usual numeric parameter) acts like other filling commands, but fills the space with a chosen Dingbat like that.

\dingline generates a freestanding line of the little chaps:

Inevitably, the ‘dinglist’ environment sets up an itemized list, but has a Dingbat instead of a bullet (you are reading a dinglist at the moment).

rotating This package provides three new environments.

‘Rotate’ provides a generalised rotation environment, where the text will be rotated (clockwise, as is normal in PostScript) by the number of degrees specified as a parameter to the environment, but no special arrangement is made to find space for the result. Note the % at the end of \begin{rotate}{56} — this is vital to prevent a space getting into the rotated text.

Start here Save whales End here

                   Start here
                     \begin{rotate}{56}%
                      Save whales
                     \end{rotate}
                   End here

A complete example of rotating text without leaving space would the ‘Save the whale’ text written at 10 degree intervals round the compass. We use ‘rlap’ to ensure that all the texts are printed at the same point. Just to show that TEX can handle PostScript muckingsabout properly…

Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale Save the whale

                   \newcount\wang
                   \newsavebox{\wangtext}
                   \newdimen\wangspace
                   \def\wheel#1{\savebox{\wangtext}{#1}%
                   \wangspace\wd\wangtext
                   \advance\wangspace by 1cm%
                   \centerline{%
                   \rule{0pt}{\wangspace}%
                   \rule[-\wangspace]{0pt}{\wangspace}%
                   \wang=-180\loop\ifnum\wang<180
                   \rlap{\begin{rotate}{\the\wang}%
                   \rule{1cm}{0pt}#1\end{rotate}}%
                   \advance\wang by 10\repeat}}
                   \wheel{Save the whale}

The following list is like description, but the labels are set in a wider box:

cats and bears are jolly good creatures to make money from, if you draw greetings cards

vultures seldom appear on any cards

fleas, ticks, mites and cockroaches have no credibility at all, though they do appear occasionally in literature, most famously in the case of ‘archie and mehitabel’

Figure 1: Demonstration of catalogue environment

If the user desires L^{A}TEX to leave space for the rotated box, then ‘turn’ is used:

Start here Save the whale end here

                                                 Start here \begin{turn}{-56}%
                                                   Save the whale
                                                  \end{turn} end here

The environment ‘Sideways’ is a special case, setting the rotation to −90, and leaving the correct space for the rotated box.

Start here Save the whale End here

                                                Start here
                                                \begin{sideways}%
                                                Save the whale
                                                \end{sideways}
                                                End here

4.3 Local macros and environments

A number of useful macros and environments are provided in a single file local.sty, which is read in by the ‘localart.sty’ style. It defines (at least) the following commands:

• catalogue is a new environment for lists, demonstrated in Fig. 1.

• widedesc is a new environment for lists, demonstrated in Fig. 2.

• screen is a new environment for quoting code, demonstrated in Fig. 3. The text is set in a verbatim frame to make it stand out.

• Leslie Lamport’s alltt environment is provided, which is like verbatim except that the \, { and } characters remain active, permitting you to change font etc In addition, all the names of TEX-related products are provided as macros, listed in Table 3.

5 Additional BibTEX style files

In addition to the ‘plain’ and ‘alpha’ style files for BibTEX described in the L^{A}TEX book, a number of other style files are available:

acm generates the style suitable for submission to the ACM The following list is like description, but the labels are set in a wider box:

cats and bears are jolly good creatures to make money from, if you draw greetings cards

vultures seldom appear on any cards

fleas, ticks, mites and cockroaches have no credibility at all, though they do appear occasionally in literature, most famously in the case of ‘archie and mehitabel’

Figure 2: Demonstration of widedesc environment

psfig: including cstr3.ps
psfig: searching article1.ps \ ps@stream for bounding box
psfig: including article1.ps
psfig: searching article2.ps \ ps@stream for bounding box
psfig: including article2.ps
psfig: searching article3.ps \ ps@stream for bounding box
psfig: including article3.ps
No file csstyles.ind.
[29] [30] [31] [32] [33] [34] [35] (csstyles.aux)
LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right.
(see the transcript file for additional information)

Figure 3: Demonstration of screen environment

\SLiTeX  SLiTEX
\SliTeX  SLiTEX
\slitex  SLiTEX
\PiCTeX  PICTEX
\pictex  PICTEX
\AmSTeX  AMS-TEX
\AMSTeX  AMS-TEX
\AMSTEX  AMS-TEX
\amstex  AMS-TEX
\BIBTeX  BibTEX
\BibTeX  BibTEX
\bibtex  BibTEX
\METAFONT
\Metafont
\metafont
\MF
\latex  L^{A}TEX
\TeXsis  TEXsis
\Unix  Unix
\unix  Unix

\PS  PostScript

Table 3: Macros to print various TEX names

Magstep GF/PK PXL point
.9  270  1350 9
1  300  1500 10
1.095  329  1643 11
1.2  360  1800 12
1.440  432  2160 14
1.728  518  2592 17
2.073  622  3110 20
2.488  746  3732 24

Table 4: Relationship between fontsize conventions

ieeetr generates style for IEEETR

apalike is a generic ‘natural science’ style that is essentially Harvard. You must use package apalike if you intend to use this bibliography style.

6 Fonts

A very large number of fonts are available to you, both ones generated by , which should be available anywhere, and the PostScript ones if you have a PostScript printer (see 6.1 below). In case you are curious about the relationship between magnification, point size, file name etc, Table 4 may help.

6.1 Using PostScript fonts

A number of special packages are available if you know that output is going to a PostScript printer: for instance, using package palatino will make L^{A}TEX use Palatino for Roman, Avant Garde for Sans Serif, Courier for Typewriter. Similar packages are available for Times (times package), New Century Schoolbook (newcen). In general PostScript fonts are to be preferred, since the Computer Modern Roman fonts do not reproduce well on a 300 dpi LaserWriter. You should not use the DVI output files on other systems or send them to other sites; the original L^{A}TEX source is, however, totally standard, and can be happily distributed to other TEX users (who will simply get the CMR fonts when they print by removing the package). BEWARE that you may get problems if you use a lot of mathematics: the maths fonts were designed to go with Knuth’s Computer Modern Roman, and may not look good with Palatino or Times. You are recommended to consider using pure Computer Modern Roman if you are a heavy maths user, or purchase the Lucida Bright and Lucida New Math, or MathTime, fonts.

Examples of common PostScript typefaces are:

• Family pag (AvantGarde)

ptmWhat is that sound high in the air Murmur of maternal lamentation Who are those hooded hordes swarming Over endless plains, stumbling in cracked earth Ringed by the flat horizon only What is the city over the mountains Cracks and reforms and bursts in the violet air Falling towers

• Family pbk (Bookman)

ptmWhat is that sound high in the air Murmur of maternal lamentation Who are those hooded hordes swarming Over endless plains, stumbling in cracked earth Ringed by the flat horizon only What is the city over the mountains Cracks and reforms and bursts in the violet air Falling towers

• Family phv (Helvetica)

ptmWhat is that sound high in the air Murmur of maternal lamentation Who are those hooded hordes swarming Over endless plains, stumbling in cracked earth Ringed by the flat horizon only What is the city over the mountains Cracks and reforms and bursts in the violet air Falling towers

• Family pnc (New Century Schoolbook)

ptmWhat is that sound high in the air Murmur of maternal lamentation Who are those hooded hordes swarming Over endless plains, stumbling in cracked earth Ringed by the flat horizon only What is the city over the mountains Cracks and reforms and bursts in the violet air Falling towers

• Family ppl (Palatino)

ptmWhat is that sound high in the air Murmur of maternal lamentation Who are those hooded hordes swarming Over endless plains, stumbling in cracked earth Ringed by the flat horizon only What is the city over the mountains Cracks and reforms and bursts in the violet air Falling towers

• Family ptm (Times)

ptmWhat is that sound high in the air Murmur of maternal lamentation Who are those hooded hordes swarming Over endless plains, stumbling in cracked earth Ringed by the flat horizon only What is the city over the mountains Cracks and reforms and bursts in the violet air Falling towers

• Family pcr (Courier)

ptmWhat is that sound high in the air
Murmur of maternal lamentation
Who are those hooded hordes swarming
Over endless plains, stumbling in cracked earth
Ringed by the flat horizon only
What is the city over the mountains

TEX font name  LaserWriter font name  TEX font name  LaserWriter font name
pagd  AvantGarde-Demi  pagdo  AvantGarde-DemiOblique
pagk  AvantGarde-Book  pagko  AvantGarde-BookOblique
pbkd  Bookman-Demi  pbkdi  Bookman-DemiItalic
pbkl  Bookman-Light  pbkli  Bookman-LightItalic
pcrb  Courier-Bold  pcrbo  Courier-BoldOblique
pcrr  Courier  pcrro  Courier-Oblique
phvb  Helvetica-Bold  phvbo  Helvetica-BoldOblique
phvr  Helvetica  phvro  Helvetica-Oblique
pnbb  NewBaskerville-Bold  pnbbi  NewBaskerville-BoldItalic
pnbr  NewBaskerville-Roman  pnbri  NewBaskerville-Italic
pncb  NewCenturySchlbk-Bold  pncbi  NewCenturySchlbk-BoldItalic
pncr  NewCenturySchlbk-Roman pncri  NewCenturySchlbk-Italic
pplb  Palatino-Bold  pplbi  Palatino-BoldItalic
pplr  Palatino-Roman  pplri  Palatino-Italic
psyr  Symbol  ptmb  Times-Bold
ptmbi  Times-BoldItalic  ptmr  Times-Roman
ptmri  Times-Italic  pzcmi  ZapfChancery-MediumItalic
pzdr  ZapfDingbats

Table 5: Names for common PostScript fonts in TEX

     Cracks and reforms and bursts in the violet air
     Falling towers

One particular font is more difficult to use, the collection of symbols called Zapf Dingbats. A chart of Dingbats is given in table 6. See p. 8 for details of a package which lets you easily access this font.

If you buy other PostScript fonts, you will find that you are supplied with the font itself and a font metric file. The latter can be converted to a TEX font metric file, and the font either downloaded permanently to a printer, or sent with every job. The details of this of beyond the scope of this guide, and you are advised to consult the support team.

7 Previewers

Previewing your output before printing can save lots of paper. There are two possibilities:

1. Use a dvi previewer. The recommended ones are dvipage for those using Sunview, and xdvi for those using X Windows. The former is fast, and has an excellent interface, but it does not support some of the more modern features of dvi drivers, and may not reproduce your output accurately (not at all if you use PostScript fonts). The latter is rather more cumbersome, but has more features. In particular, it can access a set of bitmap versions of the common PostScript fonts, which allows users of packages like ‘times’ to see exactly what they are getting. The manual pages for the two commands should be consulted for usage.

2. Neither of the previewers lets you see embedded PostScript graphics, or effects like text rotation or gray shades. It is therefore often desirable to run the output through dvips (using the -o option to save the output) and use a PostScript previewer. If you use Sun’s OpenWindows, this includes the pageview command to show any PostScript file. The public domain Ghostscript (gs) is rather faster and more reliable, but has a poor interface. It is enhanced by the GhostView (ghostview) command which offers a good interface and calls on ghostscript to do the work.

32 80 160  208
33 81 161 209
34 82 162 210
35 83 163 211
36 84 164 212
37 85 165 213
38 86 166 214
39 87 167 215
40 88 168 216
41 89 169 217
42 90 170 218
43 91 171 219
44 92 172 220
45 93 173 221
46 94 174 222
47 95 175 223
48 96 176 224
49 97 177 225
50 98 178 226
51 99 179 227
52 100 180 228
53 101 181 229
54 102 182 230
55 103 183 231
56 104 184 232
57 105 185 233
58 106 186 234
59 107 187 235
60 108 188 236
61 109 189 237
62 110 190 238
63 111 191 239
64 112 192 240
65 113 193 241
66 114 194 242
67 115 195 243
68 116 196 244
69 117 197 245
70 118 198 246
71 119 199 247
72 120 200 248
73 121 201 249
74 122 202 250
75 123 203 251
76 124 204 252
77 125 205 253
78 126 206 254
79 127  207 255

Table 6: Dingbat Chart

8 Related software

There is a wide variety of supporting or related software available; a brief description is given below of commands which may be of interest. Unix manual pages are provided for all of these; note that you must add /usr/local/man to your manpath to access some of these: tex Plain TEX. The following commands are for serious TEXnicians only: MakeTeXPK used by dvips and xdvi to create new .pk files from font sources on demand afm2tfm create .tfm files from Adobe .afm files dvicopy take a .dvi file and resolve all virtual font references, and write a new .dvi file with the

result dvitype list a .dvi file in human-readable form for debugging gftodvi convert .gf font file to .dvi form for printing gftopk convert .gf font file to .pk form gftype list a .gf font file in human-readable form initex a special version of TEX which can read hyphenation patterns and write format files patgen generate a TEX hyphenation file from list of hyphenated words pktogf convert .pk font file to .gf form pktype list a .pk font file in human-readable form pltotf convert a .pl (human readable) font metric file to .tfm tangle convert .web files to compilable Pascal tftopl convert a .tfm font metric file to .pl (human readable) form vftovp convert .vf virtual font files to .vpl (human readable) form vptovf convert .vpl (human readable) form virtual font files to .vf form weave convert .web files to .tex files for printing

A Joining the TEX and L^{A}TEX Community

Thanks to the generosity of Don Knuth and Leslie Lamport, and contributions from many individuals around the world, TEX, and L^{A}TEX are available, and in the public domain, on machines ranging from microcomputers like the IBM PC and the Apple Macintosh, to large mainframes. Actual implementations of these programs usually cost some money, but only because a certain expenditure of human effort is required to prepare a smoothly-functioning installation.

There is a large and active TEX Users Group, TUG, which meets every summer, and which publishes an excellent quarterly journal, TUGboat, which averages about 200 pages per year. Membership in TUG costs only about $50 a year, and order forms for membership, back issues, and other TEX publications are available from the TEX Users Group, P. O. Box 869, Santa Barbara, CA 93102, USA. Telephone 805-899-4673. Email (Internet) tug@tug.org

Immediately before and after the summer conference, there are workshops and tutorials for new, intermediate, and advanced users, and video tapes of several of them are available for rent or purchase through TUG. If sufficient local interest and support exists, TUG will also coordinate the holding of local on-site workshops to train people in the use of TEX and L^{A}TEX.

A.1 UK TEX users

The UK TEX Users Group offers a joint membership with international TUG, publishes a newsletter, and has regular workshop meetings. Mail p.abbott@aston.ac.uk for details. It is also closely associated with the UK TEX Archive at Aston University. This is a huge collection of TEXrelated material which may have what you want. You can access it using ftp to site ftp.tex.ac.uk (134.151.40.18).

Local TEX users with access to Usenet news and becoming addicted to TEX should also read comp.text.tex, but be warned that this is a high-volume news group and can get quite technical.

Index

ACM, 9 array.sty, 6 AvantGarde, 11

Bookman, 11

Courier, 12

font AvantGarde, 11 Bookman, 11 Courier, 12 Helvetica, 12 New Century Schoolbook, 12 Palatino, 12 Times, 12

Harvard bibliography style, 11 Helvetica, 12

IEEE, 11

multicol.sty, 7

New Century Schoolbook, 12

packages array, 6 multicol, 7 rotate, 8

Palatino, 12

rotating.sty, 8

Times, 12