Generic Local Guide for L^{A}TEX on platform

for L^{A}TEX (as of December 21, 1993)

add your name here

Joachim Schrod  Christine Detig

February 1, 1994

Contents

1 Introduction 3 2 Let’s Start 5

2.1 Running a Sample File . . . . . . . . . . . . . . . . . . . . . . . 5 2.2 Creating Own Documents . . . . . . . . . . . . . . . . . . . . . 5 2.3 What’s Special with L^{A}TEX on platform ? . . . . . . . . . . . . 6 2.4 Helpful tex Files . . . . . . . . . . . . . . . . . . . . . . . . . . 7

3 Available Document Classes and Packages 8

3.1 Document Classes . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.1.1 The article Document Class . . . . . . . . . . . . . . . 9 3.1.2 The book Document Class . . . . . . . . . . . . . . . 9 3.1.3 The letter Document Class . . . . . . . . . . . . . . . 9 3.1.4 The ltxdoc Document Class . . . . . . . . . . . . . . . 10 3.1.5 The report Document Class . . . . . . . . . . . . . . . 10 3.1.6 The slides Document Class . . . . . . . . . . . . . . . 10

3.2 Packages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.2.1 The doc Package . . . . . . . . . . . . . . . . . . . . . 10 3.2.2 The eufrak Package . . . . . . . . . . . . . . . . . . . 11 3.2.3 The euscript Package . . . . . . . . . . . . . . . . . . 11 3.2.4 The exscale Package . . . . . . . . . . . . . . . . . . . 11 3.2.5 The ifthen Package . . . . . . . . . . . . . . . . . . . . 12 3.2.6 The latexsym Package . . . . . . . . . . . . . . . . . . 12 3.2.7 The newlfont Package . . . . . . . . . . . . . . . . . . 12 3.2.8 The oldgerm Package . . . . . . . . . . . . . . . . . . 12 3.2.9 The oldlfont Package . . . . . . . . . . . . . . . . . . . 13 3.2.10 The pandora Package . . . . . . . . . . . . . . . . . . 13 3.2.11 The tracefnt Package . . . . . . . . . . . . . . . . . . 14 3.2.12 The varioref Package . . . . . . . . . . . . . . . . . . . 14

4 Carrying On 14 4.1 Where the Files Are . . . . . . . . . . . . . . . . . . . . . . . . 14 4.2 Fonts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 4.3 Errors in the L^{A}TEX book . . . . . . . . . . . . . . . . . . . . . 17

5 Bugs? No, Features! 17

6 Utilities 18 6.1 BibTEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 6.2 MakeIndex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

7 Getting Help 21

This Local Guide was derived from the Generic Local Guide (GLG), Revision 1.9, as of February 1, 1994. The GLG is copyright \begin{matrix}c \\ ◯ \end{matrix} 1988–1994 by Joachim Schrod. It is distributed under the GNU General Public License. It was inspired by the ‘Local Guide’ for L^{A}TEX 2.09 at the SRC of DEC, written by Leslie Lamport.

This text may (and should) be altered to fit to the local environment, e. g., local classes and packages should be added.

TEX is a trademark of the AMS. All other trademarks for devices or software are trademarks of the respective producers.

This document is still not ready; it has known problems. These problems are explained in notes throughout this text. To be able to see them very quickly, they are framed with a dangerous bend in the margin (like this explanation itself). If you know the answer to any question posed in a problem note, or if you have suggestions how to avoid the problem, please contact the author.

This document, the Generic Local Guide, has still places where information about your local installation is missing. All these places are marked with a hint what to do. This hint is typeset in a box, like this text you’re reading. In the L^{A}TEX source you’ll find the places to change if you look for the todo environment. Sometimes these “todo hints” are categorized, to help you in your decision if you want to attack them right now. This categorization is shown in the margin then.

declare \platform
declare \ifInstalledBabel
declare \ifInstalledMakeIndex

1 Introduction

L^{A}TEX runs on a variety of computers at many different sites. This document tells you how to use L^{A}TEX on platform and describes the local installation. We assume that you are familiar with the activation of your TEX system. L^{A}TEX itself is described in the manual—L^{A}TEX: A Document Preparation System (2nd edition). Another useful book is The L^{A}TEX Companion (both published by Addison Wesley). A full reference of these and a list of other related publications is given in the bibliography on page 21.

Hints to other system-specific manuals, especially to the installation manual.

What You Get

The L^{A}TEX you receive with this delivery is the L^{A}TEX 2ε standard release. When we speak of L^{A}TEX in the following, we mean L^{A}TEX 2ε. Up to

Date until L^{A}TEX 2.09 was delivered

L^{A}TEX version 2.09 was distributed. L^{A}TEX 2ε is fully upward compatible to the old version. Features only found in L^{A}TEX 2ε are a high-level concept of classes and packages to structure your document, and an integration of the New Font Selection Scheme (NFSS).

You can process documents in the languages

List all languages for which hyphenation patterns are installed.

For texts in other languages, this L^{A}TEX installation doesn’t know how to hyphenate them.

How does babel integrate in L^{A}TEX 2ε?

If a package abstract for babel exists, here is a good place for a crossref.

If you think that you have discovered an error in L^{A}TEX, i. e., if L^{A}TEX has an other way of acting than it is described in the documentation, inform your local L^{A}TEX guru or your distributor. He should be aware of any possible L^{A}TEX bugs or undocumented anomalies. If you are on your own, have a look at section 7.

Where do I introduce CTAN? I need it in the module section, here might be a good place for a reference; the real introduction might be done in the help section.

In any case, remember:

If all else fails, read the documentation!

How Things are Organized

If the operating system does not support file hierarchies the complete following paragraph must be deleted and all filenames must be checked.

This description assumes that your L^{A}TEX files will not all reside in one directory, but will be grouped in specific directories according to their function.

Describe in which main directory the specific directories reside (or if they are at different places). Fill in site specific locations, i. e., look for all \dir tags in this file and adapt them.

user relevant files All files which are needed for the day-to-day usage are found in

inputs.

class and package sources Some classes and packages are documented with the doc system. It allows to extract from one source file (dtx) the class (cls), package (sty), or class option (clo) files and also—together with a corresponding docstrip batch file (ins)—to create a doc driver file (drv). This is a L^{A}TEX source that creates a documented, formatted version of the source. This information is of interest for you since the sources may contain a user manual. It is also important if you want to program your own classes or packages, here you find the documentation of internal interfaces needed to adapt L^{A}TEX to your needs.

Provide recommendation to install them somewhere!

user manuals Some classes or packages will come with a separate user manual. Sometimes, only a DVI file will be available. They reside in a directory latex/doc. Here you will also find the file features.tex which describes the differences between L^{A}TEX 2.09 and L^{A}TEX 2ε.

2 Let’s Start

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. To process the sample file first make your own copy of the file example.tex that resides in the directory latex/doc. This copy should be now in your current directory; you can edit it just like any other file. If you destroy or mess up your copy, get yourself a fresh one.

Next, run L^{A}TEX on the file example.tex.

Describe how to call L^{A}TEX.

When L^{A}TEX has finished, it will have produced the file example.dvi. You can now view or print this file.

Describe how to call local previewer and/or printer driver. For sentimental reasons, you may want to include a hint to the printer near Jane’s desk.

After it has been printed, you can delete the LOG and DVI files to save your disk space.

2.2 Creating Own Documents

You must use a text editor to prepare an input file for L^{A}TEX. The easiest way to start learning about L^{A}TEX is by examining the file example.tex with your text editor. It is best to obtain your own copy of this file in your working directory.

After you have prepared your input file, whose name should have the extension tex, you must run it through L^{A}TEX and print the output. Follow the instructions of section 2.1, except use

with menu systems: select

the name of your own input file instead of example.tex.

List local (or good usable) editors. Explain how these editors might create characters which will produce the error message “! Text line contains an invalid character”.

Furthermore we would like to remind you that not all special characters of your computer can be used in your L^{A}TEX documents.

List all special characters that can be used.

Please note that documents which contain an extended input character set may not necessarily be exchangeable with other sites. If you are planning to exchange documents, especially via electronic mail, it is wise to restrict yourself to the default character set and write special characters as TEX tags.

2.3 What’s Special with L^{A}TEX on platform ?

One of the most important features of L^{A}TEX is its portability. If you write a document you can be sure that you can work with it on any other platform where TEX runs. So it’s a matter of course that all features described in the L^{A}TEX book are provided by the implementation on platform as well.

Are the invisible fonts for the slides class available?

What about BibTEX and MakeIndex?

Nevertheless each computer platforms has its peculiarities, this section will present you the most important specialities that concern L^{A}TEX.

The following paragraph may be deleted with operating systems that have file versions. Probably it must be described instead that the new version of the auxiliary files which was produced by the erroneous run must be deleted.

While using L^{A}TEX problems can arise with the cross references. This is because a previous version of a file is destroyed if a file with the same name shall be created. Thus, if an error forces you to stop L^{A}TEX prematurely—by typing x after an error at the prompt ? or by interrupting it

Describe how to interrupt a program; the next parenthesis might be usable.

(i. e., by typing Control-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 crossreferencing tags, 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 incorrect the next time L^{A}TEX is run on the same input file. It can even happen that reading this auxiliary files causes a lot of error messages. At least you will have to run L^{A}TEX a second time to get them right. So, if you have interrupted your L^{A}TEX program, the best way is to delete all those auxiliary files, i. e., all files with an extension other than tex, log, or dvi. 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.

The second problem in using L^{A}TEX concerns the files that L^{A}TEX reads. The file which L^{A}TEX is called with 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. In the file system TEX must know not only the names of these files but also in which directories they are. You will have no problem finding the correct files if you follow the simple rule:

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

If you follow this rule, you never have to type a path specifier when using L^{A}TEX. If you break this rule by specifying a file from another directory in an \input or \include command, you must use a full path name.

Describe by which environment variables, logicals, etc. the file search is configured. Mention if there are syntax changes for pathnames, e. g. ‘/’ instead of ‘\’.

List more special things, e. g.

– usage of extended character set,

– LOG file has an other extension as log,

– special sizes of circles and disks for the picture environment.

2.4 Helpful tex Files

Are these still available/functionable?

In the directory inputs, where the class and package files are located, four more input files can be found which help you to deal with your documents and your installation.

If the users have to select input files in a menu system or if the files in inputs are not found automatically, delete the following sentence.

You don’t have to copy these files, just call L^{A}TEX with their name.

idx.tex The index entries in an idx file are printed by running L^{A}TEX on the file idx.tex. L^{A}TEX will ask for the name of the document, which must be given without an extension.

lablst.tex A list of the labels (produced by \label) and citations (produced by \cite) in a document is printed by running L^{A}TEX on the input file lablst.tex. L^{A}TEX will then ask for the name of the document file, which should be typed without the extension tex, and for the name of the document class (e. g. article), used by that file. testpage.tex The output of this input file is an exact representation of the margins

L^{A}TEX and your printer driver produces. You can use this as a test how accurate your output device can produce the dimensions available in L^{A}TEX.

tryfonts.tex This input file produces several pages on which the fonts of a document class are used. With that you can detect errors in your font files or with the way a font is handled. L^{A}TEX asks for the document class the font test should be done for. In every case a page is produced with the Roman fonts in the sizes \tiny upto \huge. Afterwards you are asked for size changing commands which you have to enter without the backslash (‘\’). For every size changing command examples in different type faces (math mode, too) are generated. The input stop ends the font test.

3 Available Document Classes and Packages

With L^{A}TEX you may write your document (almost) independent of the layout to get a satisfactory output with a few tags that describe the structure of your document. You can choose the category of your document with the L^{A}TEX tag \documentclass at the start of your root file. You get a default layout with each class. Packages provide more tags or change the layout in certain respects.

The features provided by document classes and by packages can be varied with options. Options supplied at the \documentclass tag apply for the class and for all packages. Options supplied at a \usepackage tag apply for this package only.

I will give you an overview on the installed classes, packages, and their options in this section. Usually, this will not be a complete description for usage, rather it’s an abstract and provides a reference to the user manual for you. All on-line user manuals are located in the directory latex/doc. If the name of the respective file has the extension tex it is a L^{A}TEX input file and should be run through L^{A}TEX to get a formatted output.

For every class or package the files are named that are needed for its usage. You don’t need this information if everything is installed correctly, but it might help you in times of trouble, then you can look for missing or damaged files. Document classes are defined in files with the extension cls. Sometimes other files are utilized to implement the class options, usually these files have the extension clo. Packages are defined in files with the extension sty. In the file names the wildcard character ‘*’ is used to denote an arbitrary number of characters in the name, i. e., a group of files. All these files reside in the directory inputs.

If you used L^{A}TEX 2.09 before, you might still have documents with the old markup; namely, files with the \documentstyle tag at the start to declare the document’s category. This documents may still be processed by the current L^{A}TEX. The document styles are mapped to the new document classes, previous style options are either realized internally or mapped to packages.

Add local styles.

Attention: Sorted alphabetically in each subsection!

Another subsection with 2.09 document styles? They will have been installed and will be used, after all. And the transition time will be long, if one faces the reality …

Another subsection with commonly available class options? Where are those of the standard classes codified? In the L^{A}TEX Companion?

3.1 Document Classes

All document classes support the pagestyles plain and empty.

3.1.1 The article Document Class

The article document class is a suitable category for articles, technical reports, and similar documents. Often it’s used as a catch-all class when no category-specific is available. It is described in the L^{A}TEX book.

The following options are supported by this class: a4paper, a5paper, b5paper, letterpaper, legalpaper, executivepaper, landscape, 10pt, 11pt, 12pt, oneside, twoside, draft, final, titlepage, notitlepage, onecolumn, twocolumn, makeidx, makeindex, leqno, fleqn, and openbib. It supports the pagestyles headings and myheadings.

The class uses the files article.cls and size*.clo.

3.1.2 The book Document Class

The book document class may be used as a starting point for the creation of a book. It is described in the L^{A}TEX book. Actually, most books will (or should) use a specifically designed document class that builds upon book.

The following options are supported by this class: a4paper, a5paper, b5paper, letterpaper, legalpaper, executivepaper, landscape, 10pt, 11pt, 12pt, oneside, twoside, draft, final, titlepage, notitlepage, onecolumn, twocolumn, makeidx, makeindex, leqno, fleqn, and openbib. It supports the pagestyles headings and myheadings.

The class uses the files book.cls and bk*.clo.

3.1.3 The letter Document Class

The letter document class can be used for the creation of letters.

Maybe there should some hint about the US bias of this style. Or does it not exist any more?

It is described in the L^{A}TEX book.

The following options are supported by this class: a4paper, a5paper, b5paper, letterpaper, legalpaper, executivepaper, landscape, 10pt, 11pt, 12pt, draft, final, onecolumn, twocolumn, leqno, and fleqn. It does not accept the option twoside. It supports the pagestyles headings and firstpage.

The class uses the files letter.cls and size*.clo.

3.1.4 The ltxdoc Document Class

The ltxdoc document class is used for the documentation of the L^{A}TEX code. It builds upon the article class (see section 3.1.1) and the doc package (see section 3.2.1) and enables a kind of restricted literate programming for L^{A}TEX macro files.

Almost all options of the article class are also supported by this class. The only exception is the a5paper option which is not accepted. It supports all pagestyles of the article class.

The class uses the files ltxdoc.cls, the files from the article class, and the files from the doc package. In addition, it may be configured by the file ltxdoc.cfg.

3.1.5 The report Document Class

The report document class is a suitable category for larger reports, maybe even collection of articles. It is described in the L^{A}TEX book.

The following options are supported by this class: a4paper, a5paper, b5paper, letterpaper, legalpaper, executivepaper, landscape, 10pt, 11pt, 12pt, oneside, twoside, draft, final, titlepage, notitlepage, onecolumn, twocolumn, makeidx, makeindex, leqno, fleqn, and openbib. It supports the pagestyles headings and myheadings.

The class uses the files report.cls and size*.clo.

3.1.6 The slides Document Class

The slides document class supports the creation of slides. It replaces SliTEX and is described in the L^{A}TEX book.

The following options are supported by this class: a4paper, a5paper, b5paper, letterpaper, legalpaper, executivepaper, landscape, twoside, draft, final, titlepage, notitlepage, onecolumn, twocolumn, makeidx, makeindex, leqno, and fleqn. It supports the pagestyles headings, slide, overlay, and note.

   The class uses the files slides.cls, slides.ltx, OT1lcmss.fd, OT1lcmtt.fd,
OMLlcmm.fd, OMSlcmsy.fd, OMXlcmex.fd, and Ullasy.fd. The used fonts may be

configured by sfontdef.cfg or sfontdef.ltx; one of these two files must be available.

3.2 Packages

3.2.1 The doc Package

The doc package supports the documentation of TEX macro files with L^{A}TEX. It allows to intermix typeset documentation parts with macro code. This enables the author to create an appropriate explanation of the code parts, he or she can follow the old advice of all technical writing courses: “Say it twice!” This way the doc package brings (part of) the power of the Literate Programming paradigm to TEX programming: A method of structured documentation is provided. (No refinements are available, ’though.)

You can create an index of all macros used in your code if MakeIndex is installed (see also section 6.2). The TEX program docstrip.tex allows to strip the documentation part from the macro file. In addition, it can extract code parts to different files.

A user manual is available as part of the distribution. During the installation the file doc.drv was created. Edit this file and remove the percent in front of \OnlyDescription. Then L^{A}TEX this file until the labels do not change any more. The resulting DVI file is the user manual.

No options are supported by this package.

The package uses the files doc.sty. docstrip.tex is part of the L^{A}TEX distribution, but is not installed by default.

3.2.2 The eufrak Package

The eufrak package supports the usage of the Euler

“frak”? Why not “Fraktur”?

Isn’t there a TUGboat article on these fonts?

frak symbols in math mode. These fonts are part of the AMS font package. You can get it from the CTAN, directly from the AMS, or from TEX user groups.

A user manual is available as part of the distribution. During the installation the file eufrak.drv was created. Edit this file and remove the percent in front of \OnlyDescription. Then L^{A}TEX this file until the labels do not change any more. The resulting DVI file is the user manual.

No options are supported by this package.

The package uses the file eufrak.sty.

3.2.3 The euscript Package

The euscript package supports the usage of the Euler script symbols in math mode. These fonts are part of the AMS font package. You can get it from the CTAN, directly from the AMS, or from TEX user groups.

A user manual is available as part of the distribution. During the installation the file euscript.drv was created. Edit this file and remove the percent in front of \OnlyDescription. Then L^{A}TEX this file until the labels do not change any more. The resulting DVI file is the user manual.

No options are supported by this package.

The package uses the file euscript.sty.

3.2.4 The exscale Package

The exscale package is suitable if you use a larger base font size and you want the extensible characters come out with the right size. (The extensible characters are the large parenthesis, the braces, the root sign, etc.)

If you use this package you should be aware that you loose a certain amount of quality in the placement of elements within math formulas. That’s because the used fonts are not specifically designed, but simply scaled. Nevertheless you need three additional fonts, which are part of the AMS font package. For more information refer to the user manual.

A user manual is available as part of the distribution. During the installation the file exscale.drv was created. Edit this file and remove the percent in front of \OnlyDescription. Then L^{A}TEX this file until the labels do not change any more. The resulting DVI file is the user manual.

No options are supported by this package.

The package uses the file exscale.sty.

3.2.5 The ifthen Package

The ifthen package provides two programming language features that are useful only for people who already know how to program. It defines a conditional control construct \ifthenelse and the loop construct \whiledo. Infix notation may be used in the tests of these constructs. In addition, an abstraction for boolean variables is supplied.

A user manual is available as part of the distribution. During the installation the file ifthen.drv was created. L^{A}TEX this file until the labels do not change any more. The resulting DVI file is the user manual.

No options are supported by this package.

The package uses the file ifthen.sty.

3.2.6 The latexsym Package

The latexsym package enables the usage of some additional mathematical characters (those of the lasy fonts). You need it only if you don’t use AMS-L^{A}TEX. Then the packages amsfonts or amssymb are better choices.

No options are supported by this package.

The package uses the files latexsym.sty and Ulasy.fd.

3.2.7 The newlfont Package

You use the newlfont package if you have documents written with NFSS1 that you want to convert to L^{A}TEX 2ε, but where you don’t want to change all font declarations. It declares tags like \rm or \it to behave like they did in NFSS1 with the newlfont style option.

No options are supported by this package.

The package uses the files newlfont.sty and all files from the latexsym package (see section 3.2.6).

3.2.8 The oldgerm Package

The oldgerm package supports the usage of the broken (aka old) German typefaces created by Yannis Haralambous. These typefaces deliver Fraktur, Schwabacher, and Gothic fonts to you. You can get them from the CTAN or from TEX user groups.

A description of this work was published in the article

Y. Haralambous: Typesetting Old German: Fraktur, Schwabacher, Gotisch and Initials. In TEX90 Conference Proceedings. Cork, Ireland, Sept. 1990, pages 129–138. Published as TUGboat Vol. 12, No 1 (Mar. 1992).

A user manual is available as part of the distribution. During the installation the file oldgerm.drv was created.

\OnlyDescription does not appear in the driver file. But this seems to be an error, the dtx file has a \StopEventually tag.

Edit this file and remove the percent in front of \OnlyDescription. Then L^{A}TEX this file until the labels do not change any more. The resulting DVI file is the user manual.

No options are supported by this package.

   The package uses the files oldgerm.sty, Uyfrak.fd, Uygoth.fd, Uyswab.fd, and
Uyinit.fd.

3.2.9 The oldlfont Package

You might have documents written with standard L^{A}TEX 2.09 or with NFSS1 and the oldlfont style option. If you want to convert such a document to L^{A}TEX 2ε, but you don’t want to change all font declarations, then you simply use the oldlfont package. It declares tags like \rm or \it to behave like they did in NFSS1 with the oldlfont style option.

No options are supported by this package.

The package uses the files oldlfont.sty and all files from the latexsym and the tracefnt package (see sections 3.2.6 and 3.2.11).

3.2.10 The pandora Package

The pandora package supports the usage of the pandora fonts created by Nazeen N. Billawala. You can get them from the CTAN or from TEX user groups. A description of these fonts can be found in the article

N[eenie] Billawala: Opening Pandora’s Box. In Proceedings of the Tenth Annual TEX Users Group Meeting. Stanford, CA, August 1989, pages 481–489. Published as TUGboat Vol. 10, No 4 (Dec. 1989).

The user manual of pandora.dtx is next to unreadable. If one does not know about the inner workings of NFSS, one does not understand a bit. Either this must be fixed or the paragraph below must be deleted. Then there must be an hint that one has to read the code to detect how to use it.

A user manual is available as part of the distribution. During the installation the file pandora.drv was created. Edit this file and remove the percent in front of \OnlyDescription. Then L^{A}TEX this file until the labels do not change any more. The resulting DVI file is the user manual.

No options are supported by this package.

   The package uses the files pandora.sty, OT1panr.fd, and OT1pss.fd.

3.2.11 The tracefnt Package

The tracefnt package allows you to choose different message levels for all L^{A}TEX activities concerning fonts.

Where is documentation for this package? tracefnt.dtx was not part of the first L^{A}TEX 2ε test distribution.

The following options are supported by this package: errorshow, warningshow, infoshow, loading, debugshow, and pausing.

The package uses the file tracefnt.sty.

3.2.12 The varioref Package

The varioref package supports the creation of cross-references that include the page of the referenced place. The hint to the page is only done if it’s not on the same page, and special clauses are used for the previous and next page.

A user manual is available as part of the distribution. During the installation the file varioref.drv was created. L^{A}TEX this file until the labels do not change any more. The resulting DVI file is the user manual.

The following options are supported by this package: american, austrian, brazil, catalan, croatian, czech, danish, dutch, english, esperanto, finnish, french, galician, german, italian, magyar, norsk, nynorsk, polish, portuges, romanian, russian, slovak, slovene, spanish, swedish, turkish, francais, and germanb. These options select clauses in the respective languages.

The package uses the file varioref.sty.

4 Carrying On

The following chapter provides information about the L^{A}TEX system that is installed at your site. Usually this information is not needed by you; it will be of interest if you want to get an “inner knowledge” of your L^{A}TEX version.

4.1 Where the Files Are

Table 1 describes the location of all files belonging to L^{A}TEX in a suggested installation.

Explain in which main directory(ies) this subtree resides.

To use L^{A}TEX, only the files in inputs are needed.

Files  Directory

latex.tex           initex/latex
lfonts.tex          initex/latex
lplain.tex          initex/latex
slitex.tex          initex/latex
sfonts.tex          initex/latex
splain.tex          initex/latex
hyphen.tex          initex

hyphenation patterns initex/hyphens/*

(own directory for each language)

lang*.tex           initex
local.tex           initex
codes.tex           initex
*.sty               latex
idx.tex             latex
lablst.tex          latex
testpage.tex        latex
tryfonts.tex        latex
*.tex               latex/doc

(documentation, L^{A}TEXable)

*.*                 latex/doc

(documentation, not L^{A}TEXable)

*.bst               bibtex
*.*                 bibtex/doc

(new BibTEX documentation)

Table 1: Files which are needed for L^{A}TEX

Table information was not updated to L^{A}TEX 2ε. do we need this section at all? cf Introduction — INITEX stuff is no longer needed.

4.2 Fonts

Almost all characters which are in the fonts may be yield with usual L^{A}TEX tags. But there are some type sizes you may not produce with the size changing possibilities of L^{A}TEX. Please contact your local TEXpert who will explain you how to make these fonts accessible via NFSS. (If you are the local expert and you do not know it either, read the documentation on NFSS,

dedicated sections in L^{A}TEX Companion?

and maybe you should also buy yourself a TEXbook and read the chapters 4 and 9, and the appendix F.)

size  default (10pt) 11pt option 12pt option
\tiny  5pt  6pt  6pt

\scriptsize  7pt  8pt  8pt
\footnotesize  8pt  9pt  10pt

\small  9pt  10pt  11pt
\normalsize  10pt  11pt  12pt
\large  12pt  12pt  14pt
\Large  14pt  14pt  17pt
\LARGE  17pt  17pt  20pt
\huge  20pt  20pt  25pt
\Huge  25pt  25pt  25pt

Table 2: Type sizes for L^{A}TEX size-changing features

      \it  \bf  \sl  \sf  \sc  \tt

5 pt  U  D  U  U  U  U
6 pt  U  D  U  U  U  U
7 pt  P  D  U  U  U  U
8 pt  P  D  D  D  D  D
9 pt  P  P  D  D  D  P
10 pt P  P  P  P  D  P
11 pt P  P  P  P  D  P
12 pt P  P  P  P  D  P
14 pt D  P  D  D  D  D
17 pt D  P  D  D  D  D
20 pt D  D  D  D  D  D
25 pt U  D  U  U  U  U

Table 3: Font classes: P = preloaded, D = loaded on demand, U = unavailable.

Table 2 tells you what size of type is used for each L^{A}TEX type-size tag in the various document class options. For example, with the 12pt option, the \large declaration causes L^{A}TEX to use 14pt type.

Preloaded/on demand makes not much sense any more, but “unavailable” still does! Have to fix the table. Basically, the table shall explain the state if one uses the distribution, i. e., without fontdef.cfg and preload.cfg.

Table 3 tells, for every type size, to which class of fonts each type style belongs, i. e., if it is preloaded, if it will be loaded on demand, or if it is unavailable. The TFM files for those fonts which are loaded on demand are needed at run time.

Which names should be used best? \rmfamily etc.? Or should I use the real font names?

Roman (\rm) and math italic (\mit) fonts are all preloaded; the \em declaration uses either italic (\it) or roman.

check this with NFSS – how about reduced fonts?

Please note that the entry “unavailable” in the table does not mean that these fonts do not exist—they just are not used by L^{A}TEX. In fact there exists a realization of L^{A}TEX which does not know any “unavailable fonts.” If this version should be used all fonts which do not exist in reality (as TEX fonts) must be generated as scaled ones.

If you use the 11 pt or 12 pt as the basic font sizes for your document, not all mathematical symbols will be set in their correct sizes. The so-called “extensible” symbols (parenthesis, braces, root sign, etc.) are not adapted to this size. The package exscale (see section 3.2.4) provides a work-around, you might want to check its documentation.

Describe which font sets are available and provide crossrefs to packages that enable the usage, e. g. to

• special local fonts (with logos etc.)

• logo fonts, manfnt etc.

• DC fonts

• the adaption to “true-size” fonts by Sauter.

• a version for the support of PostScript-fonts (who has one that really works? psnfss?)

• what else? …

If a font manual exists its usual location should be noted here.

4.3 Errors in the L^{A}TEX book

Will that remain?

IMO it’s better than including it here.

The errors in the L^{A}TEX book which have been known at errata date and additions of L. Lamport are described in the document ‘Errata and Additions to the Manual.’ This document consists of the two files errata.tex and addendum.tex which are located in the directory latex/doc. You must run errata.tex through L^{A}TEX to get a formatted output.

5 Bugs? No, Features!

Are these still occuring?

Yes, at least the first — quite in this document, as of 01 Feb 94, Revision 1.7.

There are a few known bugs in L^{A}TEX that occur very seldom and cause the user little trouble, but would be very difficult to fix. Moreover, given the nature of complex systems, it is not unlikely that the corrections would lead to even worse problems. Therefore, these bugs will probably not be fixed.

The bugs and ways to get around them are listed below. Do not worry about any of them until you are preparing the final version of your document. These bugs are all concerned with the position of the producing control sequence on the page and it is very likely that changes to the text will cause them to disappear (and perhaps to reappear at other places).

• In rare instances, a figure or table will be printed on the page preceding the text where the figure or table environment appears. This can be fixed by moving the environment further towards the end of the document.

• A footnote can be broken across two pages when it should fit on a single page. This happens when there are one or more figures or tables on the page. The problem is corrected by moving, towards the end of the file, the last figure or table environment that produces a figure or table on the page where the footnote starts.

• A marginal note at the top of a page may appear in the wrong margin. This can be fixed by inserting a redundant \pagebreak tag to force a page break exactly where L^{A}TEX started the new page anyway.

bug.l2e mentions *.bug as the file(s) for history of bugs. Are these more than one file now? (Currently there is none.)

The file latex.bug in the directory latex/doc contains a history of the known bugs of L^{A}TEX. latex.bug is no TEX input file.

6 Utilities

6.1 BibTEX

Do we need a switch ifInstalledBibTeX?

BibTEX is a program for compiling a reference list for a document from a bibliographic database. To do this it reads the auxiliary file with the extension aux that L^{A}TEX produces.

Describe activation and parameters

To produce a reference list you have to run your document through L^{A}TEX (then the AUX file will be produced), only afterwards you can call BibTEX. On the next L^{A}TEX run you will find the reference list in your document, but a second run is needed to get the citations into the text.

All citations are listed in the aux file so that the corresponding references from a bibliographic database (usually a file with the extension bib) can be extracted into a

[figure: TEX; BIB; BBL; DVI; AUX_{2}; L^{A}TEX; BibTEX; L^{A}TEX; L^{A}TEX; AUX_{1}]

Figure 1: Interaction of BibTEX and L^{A}TEX

AUX_{1}: AUX file with information for BibTEX AUX_{2}: AUX file with citation cross references Not all files read or written are shown. Dashed arrows denotes that this file is read, but not really relevant at this stage.

file with the extension bbl which is read from L^{A}TEX. All messages from BibTEX are written into a file with the extension blg (see also Figure 1). More information about the usage of BibTEX can be found in the document btxdoc which consists of the two files btxdoc.tex and btxdoc.bib (a BibTEX database). These two files can be found in the directory bibtex/doc. You have to do the above-mentioned procedure (L^{A}TEX, BibTEX, L^{A}TEX, L^{A}TEX) for this document.

Hint: btxdoc is a newer and more complete description of BibTEX than the appendix B of the L^{A}TEX book.

Is this obsolete with the 2nd edition?

The layout of the reference list is determined by the bibliography style, which is defined in files with the extension bst. All bst files are located in the directory bibtex/bst. The document btxhak in the directory bibtex/doc is for those of you who want to create own bibliography styles. The document file btxhak.tex uses

btxdoc.bib, too.

List all installed bibliography styles. Perhaps one needs a paragraph below as well, if the bibstyle does not implement a specific journal format.

The list below explains which bst files are available on your installation.

abbrv sorted; numbered citation references; abbreviated person, month, and journal names

acmcs ACM Computing Surveys
acta Acta Informatica
cacm Communications of the ACM
ibmjrd IBM Journal of Research and Development
ibmsj IBM Systems Journal
ieeese IEEE Transactions on Software Engineering
ieeetc IEEE Transactions on Computers
ieeetcad IEEE Transactions on Computer-Aided Design of Integrated Circuits
ipl Information Processing Letters
jacm Journal of the ACM
jcss Journal of Computer and System Sciences
scp Science of Computer Programming
sicomp SIAM Journal on Computing
tocs ACM Transactions on Computer Systems
tods ACM Transactions on Database Systems
tog ACM Transactions on Graphics
toms ACM Transactions on Mathematical Software
toois ACM Transactions on Office Information Systems
toplas ACM Transactions on Programming Languages and Systems
tcs Theoretical Computer Science

Table 4: Additional abbreviations for journal names in the standard bibliography styles

alpha sorted; citation references are created from the abbreviated author names

and the publication year plain sorted; numbered citation references unsrt numbered citation references ieeetr format of IEEE transactions siam format of SIAM journals

In addition to the usual three-letter abbreviations for the months, the following standard bibliography styles define additional abbreviations for journal names. They are listed in table 4.

Here it must be specified where BibTEX will look for the aux file and the BibTEX specific input files (bib and bst files) and how the user may control this search (environment variables,

   logicals—BIBINPUTS, TeXINPUTS!)

6.2 MakeIndex

MakeIndex is a program for creating a sorted index in a L^{A}TEX document. There is a manual available that explains the usage of this tool.

Tell also if/where DVI version is installed.

You’ll find the L^{A}TEX source of the manual in the file makeindx.tex in the directory

latex/doc.

If you want to create an index, you have to specify the option makeindex at the \documentclass tag, and you must specify the tag \makeindex in the document preamble. Then L^{A}TEX will produce a raw index file. This file has the extension idx.

Describe program activation, especially if a TEX shell is used.

You must pass the name of this file as an argument to the makeindex command. MakeIndex produces a file that contains the sorted and unified index within a theindex environment. This file has the extension ind. You can insert the sorted index into your document at a point that is tagged with \printindex.

Hint: You may want to process your index only if the text of your document is sufficiently fixed.

MakeIndex is freely distributable. You have a right to obtain the source code from the same origin you have got the program from.

Mention if/where source is available.

7 Getting Help

how to proceed in case of problems. hints to ‘gurus’, mailing lists, newsgroups, user groups, distributors, latex-bugs mailid (at last).

Bibliography

Why is the thebibliography change I sent to Rainer not in L^{A}TEX 2ε? Grmbbl.

The following list of TEX-related literature may be helpful for you:

Add bibliography. Some references might be missing. Make references a standalone bib database. Make references a standalone bib database. Use the tschichold bibstyle?

Revision Log for genguide.tex

Revision 1.9 (created at February 1, 1994 by Joachim Schrod)

Used tag \hint to introduce hints for authors.

Made all type switches conform to the new L^{A}TEX 2ε PC way of doing it.

Substituted a few remaining ‘i.e.’ to \ie{}.

Revision 1.8 (created at February 1, 1994 by Joachim Schrod) Merged section “Differences from the Manual” into “L^{A}TEX on platform,” now named “What’s Special with L^{A}TEX on platform?” Added an introduction where I explain that L^{A}TEX is the best thing since sliced bread.

Renamed section “Layout Definitions” to “Available Document Classes and Packages.” This promotes structural markup better.

Substituted the text that mentioned the scaled extension symbols with a hint to exscale. That was a relict from IL^{A}TEX anyhow.

The new BibTEX figure is incorporated and explained. Not only the additional bibliography styles are listed, but all installed ones.

No todo boxes before front matter. The explanation of fixme and todo environments is moved between front matter and text. Actually, that place is now marked by a structure tag instead of \eject. The explanations are inserted automatically if at least one respective enviroment is in the document.

As long as any todo material is still in the document, the title shows that this is the GLG. The front matter info part now names the GLG revision.

Minor details: The bibliography has no section number. The journal alias table is now a float.

Revision 1.7 (created at January 31, 1994 by Joachim Schrod) L^{A}TEX 2ε, as of December 21, 1993, is described. (The date was not updated.) Did also minor fixes of language and spelling. Rewrote the section on MakeIndex.

Document class renamed to locguide, is now implemented as a real class, not only a mockup. I had to change a few tags because of this.

Updated copyright, meta remarks, and my address at the document start. Checked document title and editorial comments on the second page. The version history is now printed at the very end, as long as at least one todo environment is in the document.

Revision 1.6 (created at January 29, 1994 by Christine Detig) Now this is a L^{A}TEX 2ε document. We fixed the contents so that all points still open are tagged as fixme’s. All ifreduced sections were omitted. Extensions are now called so and are properly tagged. todo and fixme are now environments.

Revision 1.5 (created at January 27, 1994 by Christine Detig) Major update for L^{A}TEX 2ε. Describes the actual installation structure as far as this is defined, mentions babel, refers to NFSS, actualizes BibTEX and MakeIndex information, etc. Several points still have to be fixed.

Revision 1.4 (created at January 27, 1994 by Joachim Schrod) Rewrote the chapter on layout definitions. We have to present classes and packages, not styles. I don’t know if we still must present options or old styles, this might be added in the future.

Revision 1.3 (created at January 26, 1994 by Christine Detig)

Corrected some typos that prevented formatting. Revision 1.2 (created at January 17, 1994 by Christine Detig)

Updated english version to generic local guide for L^{A}TEX 2.09, both in text and file structure. Some parts (which will be subject to major changes with L^{A}TEX 2ε) were left untouched, though. Some style descriptions are still to be written, their relevance must be checked, anyhow.

Revision 1.1.1.1 (created at January 17, 1994 by Christine Detig)

English Generic Local Guide, IL^{A}TEX version as of 90–04–19. Revision 0.0 (created at April 19, 1990 by Joachim Schrod)

Version History before CVS usage

%
% DATUM    PERSON BEMERKUNG
% 90-04-19 js     cleaned up for distribution with ILaTeX

% 88-08    js     first version

23