Producing Beautiful Documents With TEX and L^{A}TEX

An Extremely Brief Introduction

Lawrence Hubert University of Illinois

Introductory Comments

The topic of our session today is: producing beautiful documents with TEX and L^{A}TEX. But before we proceed with this directly, I will begin with a small story.

I have lived in various places over the years, with one being California (Santa Barbara, in particular, from 1977 to 1987). For some reason, California seems to have a lot of people who come to your door and want to tell you something, sell you something, or do whatever to you.

One day in the 1980’s, I was home working when the doorbell rang. On the porch were two very elderly couples, all clutching their large Bibles. One said: we have good news, neighbor, and would like to share it with you. I was not feeling particularly social at that point, so I merely shut the door gently, and said: Oh, no, you don’t!

So, I’m feeling a bit like these elderly couples right now. I’m about to say: I have good news — I would like to share TEX and L^{A}TEX with you. And what is your response? Oh, no, you don’t! And then what is my comeback? Hear me now and believe me later! Extra Credit: where does this come from?

Franz Quotation

Ya, Ya, girly-man. Hear me now and believe me later — but don’t think about it ever, because, if you try to think, you might cause a flabulance.

What is TEX and L^{A}TEX?

TEX is a very mathematically savvy typesetting engine produced in the 1980’s by Donald Knuth from Stanford. It is open-source (which means it is free, and freely available); implemented for every conceivable operating system; it is currently in Version 3.141592, so it is, in effect, now “fixed” forever. Extra Credit: can you tell why it is essentially “fixed”? And what will be the version number when Knuth dies?

L^{A}TEX is a set of macros sitting on top of TEX that makes our task easier. It was produced by Leslie Lamport in the middle 1980’s; it is also open-source and delivered conjointly with any TEX system. The current version is L^{A}TEX2e and is under constant development and extension. TEX and L^{A}TEX work together, with L^{A}TEX helping produce what is called the document mark-up, and TEX then being called upon to do the actual typesetting.

Features and Advantages

Why you should use TEX and L^{A}TEX — In contrast to word-processing methods such as Word, you do not worry about the visual formatting of your document. You are concerned only about the content. In other words, you separate content from layout. The file you produce is ascii, the simplest you can have with no special symbols; it includes general commands for what you wish to do in the document.

The subtext: you don’t need to support the evil empire in Redmond Washington, use their proprietary file formats, and make Bill Gates even richer than he already is.

I handed out as a hard-copy item, the piece by Allin Cottrell, Word Processors: Stupid and Inefficient. Read and enjoy, and then use L^{A}TEX.

Many places of publication (and now universally in any source that has even the slightest quantitative tinge), ask for manuscripts to be submitted as a L^{A}TEX ascii file (usually, along with a corresponding typeset .pdf file, i.e., one in portable document format). This might include the use of what is called a “class file” that specifies and controls the unique appearance of the document for the intended publication source.

Class files all have the extension .cls (so be sure to turn on the “show file types” option if you are using windows; it is off by default), and, in effect, drive the formatting of a document and provide special commands to use, whenever necessary, for the document at hand. Class files are typically provided to you, or more likely, you will need to download these from some provided web site.

Although the quantitative journals in psychology typically have their own class files now (e.g., Psychometrika, Journal of Mathematical Psychology), we will mention several which may be germane to all of you. These, we might note, are in addition to the standard L^{A}TEX classes:

article.cls; report.cls; book.cls;
slides.cls; letter.cls

apa.cls (guess what this class is for?) uiucthesis.cls (let’s hope some of you get to use this one)

beamer.cls (this replaces prosper.cls,

which is the class I’m using to produce these slides) letter.cls (although a standard L^{A}TEX class, I still use this for my letters of recommendation; I change the address to whom the letter is going, and typeset again)

You can get anything TEX and L^{A}TEX related (for free) from the CTAN archive: The Comprehensive TEX Archive Network:

http://www.ctan.org/tex-archive

For example, the apa stuff is at:

/macros/latex/contrib/apa

for the UI thesis class, see:

/macros/latex/contrib/uiucthesis

for the newer beamer class:

/macros/latex/contrib/beamer

If you have any reasonable mathematics in way of formulae to put into a manuscript; or if you have tables that you would like to include and manage well; or if you would like to easily “repurpose” your prose for other uses at times (a nice word, don’t you think); or if you would like to see your document in many forms easily (e.g., double-spaced rough draft; two-column final look, and so on); or if you have some simple graphics that you would like to include by way of text itself using the picture environment (as opposed to including a .eps or .pdf figure, which you can also do); you are a fool (hear me, a fool) if you don’t consider using TEX and L^{A}TEX.

There is a very nice integration with all the modern file formats. The ascii markup file has traditionally used the extension .tex, and when typeset produces a .dvi (device independent) file, which could then be printed or viewed. The situation is true to the present, but we now have a route to going from .tex to .pdf directly (or to .ps and then to .pdf; or first to .dvi and then

.ps or .pdf).

Because I like to use .eps for my included graphics, I generally go from .tex to .div to .pdf (this is easy to do and has no glitches; but many other paths are possible). There are html file options (.htm) as well; much of this is now being replaced by the direct use of .pdf There are very nice tools for long projects: automated indexing (including multiple indices such as Subject and Author — I’ve done these using the

package multind.sty);

automatic construction and inclusion of Tables of Contents, Tables of Figures, and Tables of Tables; easier preparation of Proceedings Volumes and Journals where the “chapters” are actually separate manuscripts; if you really get into this, you can use BibTeX, which generates bibliographies from a master file (a .bib file) where you maintain all your references (from birth). You can have bibliographies generated automatically by referencing according to a label placed in your text; if the bibliography entries need to be in a particular form, you can generate the appropriate style using a bibliographic style file (one with a .bst extension); for example, Erik Meijer has produced the package apacite.sty and assorted items you need for APA citation practice:

/biblio/bibtex/contrib/apacite

When one does mathematics or statistics in any form, there is just no substitute for using TEX and L^{A}TEX. The quality of production is incredibly high, even for very complicated mathematical presentation. If you use apa.cls and put jou in the document class options, the resulting manuscript will typeset two-column (like APA) and look exactly like a printed reprint; in fact, it is so good, maybe we should just skip the submission/review/resubmission process. Many journals (including, for example, Psychometrika) now use L^{A}TEX markup to generate all the necessary files for printing the journal.

TEX considers the paragraph as the unit of typesetting, with the manner in which lines are set and broken, and how hyphenation is done, based on a very nice dynamic programming algorithm (one of my own research areas). The only Desktop Publishing Program that uses such a method is Adobe’s InDesign. If you wish, I could tell you my experiences with typesetting by hand in 8^{th} grade shop — we used what was called the “first-fit” method.

There are many add-on packages (all free, and with a file extension of .sty) that provide collections of new commands and environments for various purposes. Also, there is language/font support for literally hundreds of languages (see the babel packages):

/macros/latex/required/babel

A search on my MikTex distribution for .sty, gets over 3000 hits; these packages were automatically included during a full install.

Packages are continually under development and an installation such as Miktex has a mechanism for updating its distribution. Also, when you use a .sty file that may not be in the distribution as yet, MikTex is so smart that it goes out to the Web, gets the package, and installs it for you. This all says, by the way, that we need to be on high-speed internet access to function effectively. No more dirty-dialup.

Packages are included with the command \usepackage{}, placed in the preamble (the area

between \documentclass{} and
\begin{document};

the ones I routinely use are: curves.sty (this adds a few nice drawing capabilities to the picture environment); graphicx.sty (the standard for incorporating and manipulating all sorts of graphics into a manuscript); multind.sty (for creating both subject and author indices);

amsmath.sty, latexsym.sty, amsfonts.sty

(these add new symbols from the American Mathematical Society).

GNU (Gnu is not Unix, recursively) — The newest extension of the picture environment is loaded with pgf.sty and tikz.sty (portable graphics format). TikZ ist kein Zeichenprogram Just as beamer.cls is all the rage now for slides, TikZ/pgf has a similar appeal for drawing your diagrams and pictures. These are written by the same person (apparently, with a lot of time on his hands) — Till Tantau

Resources and Documentation

There are a few sources that we all should have available. The first costs money ($45.00): Leslie Lamport, L^{A}TEX: A document preparation system, 1994, Addison-Wesley. and three are free as .pdf: The not so short introduction to L^{A}TEX2e:

/info/lshort/english/lshort.pdf

A beginner’s introduction to typesetting with L^{A}TEX:

/info/beginlatex/beginlatex-3.6.pdf

The Comprehensive L^{A}TEX Symbol List

/info/symbols/comprehensive
/symbols-letter.pdf

Producing Beautiful Documents With TEX and LATEX – p. 30/40

Two other Addison-Wesley products are worth buying if you have the money: Frank Mittelbach and Michel Goosens, The L^{A}TEX companion (2nd Edition), 2004. Helmut Kopka and Patrick Daly, Guide to L^{A}TEX (4th Edition), 2003.

There is no better place for all things TEX and L^{A}TEX than the TeX Users Group (TUG):

http://www.tug.org

The group’s printed journal (TUGboat) and online source (PracTeX) are available for free, as well as all sorts of other information and items. I am a member for $75.00; students pay $45.00. You get a lot of stuff for this price (TexLive; Tugboat; CTAN snapshots; etc.).

I have put a few items up on my web site that you can access. We will use some in the demonstrations to follow:

cda.psych.uiuc.edu/latex_class_material
latex_presentation.tex (the source file for

the slides you are now looking at);

latex_presentation.pdf (the actual file I

am showing to you now); wp.html (Allin Cottrell’s piece on Stupid and Inefficient Word Processors)

An aside on file names — Make sure your titles are meaningful. We are no longer limited to less than or equal to eight characters in our file names. Always use the extensions. It will make things much easier to find (later as well as more immediately).

The underscore mark is very helpful in avoiding the use of spaces (which still can cause problems, so avoid them). Also, remember that names are generally case-sensitive, so I generally only use lower-case.

Files for the Demonstration

ED2007.cls (the class file for Edwin Diday’s Festschrift)

ED2007manuscripts.pdf (instructions on how

to use the class file)

ED2007manuscripts.tex (the source file)

diday_rev.pdf (the Hubert and Köhn paper for the Festschrift) diday_rev.tex (the source file)

AR_Monte_Carlo_box_plots_all.eps (the

included .eps file for the paper, with name violating my lower-case rule)

The Mechanics

An Editor and a Distribution For the Mac:

http://www.tug.org/mactex

Download the large image file, MacTex.dmg (702.7 MB) and install (easily by clicking). You are given Texshop as an editor and interface. For Windows: First download and do a complete install of the typesetting engine MikTex from:

http://miktex.org (Version 2.6 now)

For your (Zen-like, and chroma-coded) editor, use WinEdt and download from

http://winedt.com (Version 5.5 now)

After installed, call up the Registration box (under Help), and enter exactly as stated (including spaces and capitals): Name: UIUC Psychology (50-user Site License) Code: 7431692338750581620 This is good forever ... For Linux/Unix: You already know what to do and use.

Some Parting Comments

LyX is a free visual document processor (they call it WYSIWYM) that can export L^{A}TEX processable files and uses L^{A}TEX itself as a backend:

http://www.lyx.org

A (rather expensive) commercial version of a LyX-type system is Scientific Word from MacKichan Software:

http://www.mackichan.com

I have some Lucida fonts that I bought from PcTeX; I think these are just beautiful and will give an example later. You use them by putting a usepackage[]{} statement in your document (in the preamble), and then use the two options of lucidasmallscale and nofontinfo and the package name of lucimatx. The only problem for me is that I haven’t figured out (as yet) how to use them outside of PcTeX; I get an error message about not all fonts being located when I try within WinEdt, for example.

Once you know how to makeup a document in L^{A}TEX, you can write questions in simple email that might involve formulas using these same L^{A}TEX commands. (This is the nerd version of text messaging). Also, if you are adventuresome, you can use your knowledge of L^{A}TEX commands to ask for, among other things, dates: \dinner This is read “backslash dinner?” —