Search the FAQ Archives

3 - A - B - C - D - E - F - G - H - I - J - K - L - M
N - O - P - Q - R - S - T - U - V - W - X - Y - Z
faqs.org - Internet FAQ Archives

TeX, LaTeX, etc.: Frequently Asked Questions with Answers [Monthly]


[ Usenet FAQs | Web FAQs | Documents | RFC Index | Airports ]
Archive-name: tex-faq

See reader questions & answers on this topic! - Help others by sharing your knowledge
Comp.text.tex is a forum for the discussion of TeX, LaTeX and other
related things. TeX is a software system written by Donald Knuth to
typeset text, especially text containing mathematics. LaTeX is a set
of macros written in TeX, designed to simplify the the typesetting of
a document by allowing the user to concentrate on the content and
structure of the document rather than the exact appearance of the
finished product. METAFONT, also discussed here, is a program which
allows the user to design their own fonts. The definitive reference
for TeX is _The TeXbook_, by Donald Knuth (Addison Wesley, 1984, ISBN
0-201-13447-0, paperback 0-201-13448-9). For LaTeX, see _LaTeX, a
Document Preparation System_ by Leslie Lamport (Addison Wesley, 1986,
ISBN 0-201-15790-X); the second edition of this book covers LaTeX2e.
Full documentation for LaTeX2e can be found in _The LaTeX Companion_
by Michael Goossens, Frank Mittelbach, and Alexander Samarin (Addison
Wesley, 1994, ISBN 0-201-54199-8). For METAFONT, see _The
METAFONTbook_ by Donald Knuth (Addison Wesley, 1984, ISBN
0-201-13445-4). The American Mathematical Society has two macro
packages which are also popular, called AMS-TeX and AMS-LaTeX.

This article contains answers to some frequently asked questions on
comp.text.tex. Please don't ask these questions again, as they've been
answered many times before.

Malencontreusement, je n'ai ni le temps ni la comp\'etence pour
traduire cet article en fran\c{c}ais. Je prie donc, le lecteur
interess\'e par fr.comp.text.tex d'avoir l'indulgence d'accepter la
version anglaise.

This is version 1.53 for February, last changed 2/8/96.

This article includes answers to:

  1) How can I get a copy of this article?
  2) Where can I get a DVI to PostScript conversion program?
  3) How can I include a PostScript figure in LaTeX?
  4) Where can I find a DVI previewer for machine Y running Q?
  5) Where can I get the manual for PiCTeX?
  6) In LaTeX, I put some definitions in my document, but I get the error
     ``Use of \@ doesn't match its definition'' or ``You can't use 
     \spacefactor in vertical (or math) mode.'' What's wrong?
  7) What is OzTeX and where can I get it (TeX for the Mac)?
  8) What is Fig and where can I get it?
  9) How do I get WEB for C, FORTRAN, or some other language?
  10) How can I typeset music in TeX?
  11) What is TUG and TUGboat?
  12) How do I convert Adobe's afm files to tfm format?
  13) In LaTeX, how do I get a double-spaced document?
  14) In LaTeX, how do I include a file in the verbatim environment?
  15) In LaTeX, how do I do Y?
  16) Where can I find a TeX macro or LaTeX style file for doing Y?
  17) How do I generate an index in TeX/LaTeX?
  18) How do I get METAFONT to do what I want it to do?
  19) Where do I get TeX/LaTeX for machine Y running Q?
  20) Where can I get a thesis style for LaTeX?
  21) How do I get symbols for ``the real numbers'', ``the complex numbers'',
      and so on?
  22) What repositories of TeX material are available, and how can I
      access them?
  23) How do I use PostScript fonts with LaTeX?
  24) How can I convert from format Y to TeX or LaTeX, and vice-versa?
  25) How do I get a file into the major style repositories?
  26) Where can I get font Y?
  27) Where can I get a dvi driver for the HP LaserJet?
  28) TeX and LaTeX are hyphenating words weirdly. What can I do?
  29) How can I convert a TeX or LaTeX file into a plain ASCII file,
      with all the formatting intact, a la nroff?
  30) How do I enlarge TeX? I keep getting ``memory capacity exceeded''
      errors.
  31) In LaTeX, I used \pagestyle{empty}, but the first page is still 
      numbered. What do I do?
  32) Where do I find documentation about BibTeX?
  33) How do I use BibTeX with plain TeX?
  34) How do I draw Feynman diagrams in LaTeX?
  35) What is the New Font Selection Scheme (NFSS)?
  36) In LaTeX, my cross-references for floats (figures and tables) are
      incorrect. What's wrong?
  37) I want to change the margins in LaTeX. What can I do?
  38) How do I find the width of a letter, word, or phrase in TeX?
  39) In LaTeX, is there a comment or ``ignore'' environment with which
      I can exclude blocks of text from the .dvi file?
  40) Where can I find a spelling checker for my TeX file?
  41) What is LaTeX2e?
  42) In LaTeX, how can I define a new log-like function?
  43) In LaTeX, how do I put a \sqrt in my \caption statement?
  44) In LaTeX, how do I get thin and thick \hlines in a table?
  45) In LaTeX, how do I number the bibliography using Arabic numbers without
      square brackets or using superscripts?
  46) In LaTeX, why are my cites all numbered zero?
  47) In LaTeX, my figures get put on a page by themselves with too much
      whitespace, but when I tried \begin{figure}[t] they get printed at
      the end. Why?
  48) In LaTeX, how do I make a line break in a section title?
  49) In LaTeX, how do I number equations by section?
  50) What is the fontinst package?

If you are looking, for instance, for the answer to question 17, and wish
to skip everything else, you can search ahead for the regular expression
``^17)''.

These are all legitimate questions, but they seem to appear too 
frequently for long-time readers of the list. 

Many of the answers below tell you that you can obtain something
through anonymous ftp. ``Ftp'' stands for file transfer protocol, and
is also the name of a program implementing the protocol. The program
allows users to transfer files to and from remote sites, if the sites
are connected via a network such as the Internet. ``Anonymous ftp'' 
indicates a user may connect to a remote site as the user 
``anonymous'' with a password consisting of their email address, and
thus be able to retrieve files from that site. Remember, anonymous
ftp is a privilege and the system administrators for these sites 
have made these files available out of their own generosity. Therefore
please restrict your ftp'ing to non-prime hours at the various sites.

I would like to acknowledge Don Hosek, Ken Yap, Tomas Rokicki, Micah
Beck, David Carlisle, and Donald Arseneau who provided many of the
answers.  Joe Weening, Hal Perkins, Walter Carlip, Max Hailpern, Tad
Guy, Raymond Chen, Henning Schulzrinne, Sebastian Rahtz, Mark James,
Peter Galko, Mike Ernst, Rainer Sch\"opf, Oren Patashnik, Philippe
Louarn, Rafal Zbikowski, Anita Marie Hoover, David Rhead, Darrell
McCauley, Cameron Smith, Emma Pease, Patrick McPhee, Karl Berry, Robin
Fairbairns, Joohee Jeong, Sam Steingold, J\"org Knappen, Barbara
Beeton, Norman Ramsay, Richard Mathar, and Juergen Schlegelmilch
provided additional material and criticisms. The format of this
document is based on the Frequently Asked Questions written by Steve
Hayman which formerly appeared in comp.unix.wizards. Any mistakes are
mine. Send corrections, suggestions, and additions to
bobby@hot.caltech.edu.

1) How can I get a copy of this article?

   You're reading it aren't you? SAVE it :-). This article is posted
   monthly to comp.text.tex and cross-posted to news.answers. It is
   therefore archived at any site that archives news.answers.
   News.answers is archived on rtfm.mit.edu, and this article is
   available there via anonymous ftp in the directory
   ./pub/usenet/news.answers/tex-faq. If you do not have anonymous
   ftp, send an e-mail message containing the lines ``SENDME FAQ.'' to
   fileserv@shsu.edu (fileserv@shsu.bitnet).  Another way to retrieve
   it via email is through the mailserver at rtfm: send a message
   containing the lines ``help'' and ``index'' to
   mail-server@rtfm.mit.edu for information on how to obtain it.
 
   Other news.answers/FAQ archives are: cnam.cnam.fr (163.173.128.6)
   in the anonymous ftp directory /pub/FAQ; ftp.uu.net (192.48.96.2)
   in the anonymous ftp directory /pub/usenet (also available via mail
   server requests to netlib@uunet.uu.net, or via uunet's 1-900
   anonymous UUCP phone number); and ftp.cs.ruu.nl (131.211.80.17) in
   the anonymous ftp directory NEWS.ANSWERS (also accessible via mail
   server requests to mail-server@cs.ruu.nl). Many of the archives
   mentioned in question 22 also maintain current versions of this
   document.

   The UK TeX Users Group wrote an expanded version of this article
   for their annals, Baskerville (vol. 4, no. 6, Dec. 1994). It is
   available as a very nice Web page from the URL
   http://www.cogs.susx.ac.uk/cgi-bin/texfaq2html?introduction=yes.

2) Where can I get a DVI to PostScript conversion program?

   Two good DVI to PostScript conversion programs that run under
   Unix are:
     dvips - by Tomas Rokicki. This driver is very nice and has the
       ability to deal with virtual fonts. Available via anonymous ftp
       from labrea.stanford.edu (36.8.0.112) in ./pub. Dvips is
       written in C and ports easily to other operating systems.  It
       is available for VMS via anonymous ftp from any CTAN site (see
       question 22) and also through the DECUS library (see question
       22). A precompiled version for MSDOS is available from
       monu1.cc.monash.edu.au (130.194.1.101) in ./pub/dvips54.zip,
       from shape.mps.ohio-state.edu (128.146.110.30) in
       ./pub/msdos/dvips/dvips54.zip, or from any CTAN site (see
       question 22) in ./systems/msdos/drivers/dvips.  If you wish to
       use postscript fonts, get dvipslib.zip as well.  Documentation
       is available in dvips.ps.Z. Karl Berry has a version of dvips
       called dvipsk which has a configure script and path searching
       code similar to that in his other programs (e.g., web2c).  It
       is available via anonymous ftp from ftp.cs.umb.edu
       (158.121.104.33) in ./pub/tex/.

     dvitops - by James Clark. Available via anonymous ftp from any CTAN site
       (see question 22, e.g., pip.shsu.edu (192.92.115.10)), in 
       ./tex-archive/dviware/dvitops. Dvitops is written in C and will 
       compile under Unix, MSDOS, VMS, and Primos.

3) How can I include a PostScript figure in LaTeX?

   LaTeX has a standard package providing graphics inclusion, scaling,
   rotation, and color, the graphics package. Keith Reckdahl has
   written a primer for using this package which describes the
   inclusion of Encapsulate PostScript (EPS) files, and covers such
   additional issues as converting PostScript to EPS, figures and
   subfigures, using compressed or non-EPS files (TIFF, GIF, etc.),
   and putting LaTeX text or equations into EPS graphics using
   PSfrag. This document is available from any CTAN site (see question
   22) in ./tex-archive/info/epslatex.ps.

   Anil K. Goel has written a long document describing in detail how
   to include figures, pictures, and images in LaTeX 2.09
   documents. It is available via anonymous ftp from math.uwaterloo.ca
   (129.97.140.144) in ./pub/figsInLatex.ps.Z. A dvi file with the
   included PostScript files is also available.

   Also, one can use the older the epsfig macros written by Sebastian
   Rahtz based on the psfig macros of Trevor Darrell used in LaTeX
   2.09.  They are available via anonymous ftp from any CTAN site (see
   question 22) in graphics/psfig. You will also need a dvi to
   PostScript conversion program that supports \specials. The ones
   mentioned in question 2 do, and come with a version of psfig ready
   to use with them. The psfig macros work best with EPS Files. In
   particular, psfig will need the file to have a BoundingBox (see
   Appendix C of the _PostScript Language Reference Manual_). If you
   don't have an EPS file, life can be difficult.

   To allow resizing by dvips (see question 2) with PostScript files
   that are not EPS files, add the one line 
   %%BoundingBox: llx lly urx ury
   prior to any non-comment line in the PostScript
   file. The four ``lower left'' and ``upper right'' arguments must be
   numbers to indicate the lower left and upper right corner in units
   of 1/72 of an inch. Otherwise, dvips assumes the PostScript file
   fills a whole page.

   One further note about including PostScript figures is that they
   are not part of the dvi file, but are included when you use a dvi
   to PostScript conversion program. As a result, most dvi previewers
   will simply show the blank space TeX has reserved for your figure,
   not the figure itself.

4) Where can I find a DVI previewer for machine Y running Q?

   This briefly lists some previewers available via anonymous ftp. All
   are available from any CTAN site (see question 22) in addition to the
   sites listed below:
      dvipage - For SunView. This was published in volume 15 of 
        comp.sources.unix and is available at sites that archive
        this. One such source is archive.cis.ohio-state.edu 
        (128.146.8.52).
      xtex - For the X Window System. Available via anonymous ftp 
        from ftp.cs.colorado.edu (128.138.243.151) in 
        ./pub/cs/misc/SeeTeX/SeeTeX/SeeTeX-*.tar.Z.
      dviapollo- for Apollo Domain. Available via anonymous ftp from
        labrea.stanford.edu (36.8.0.112) in ./pub/dviapollo.tar.Z.
      dvidis - For VAXstation VWS. Available via anonymous ftp from
        src.doc.ic.ac.uk (146.169.2.1) in /packages/tex/dviware/dvidis.
      xdvi - Also for the X Window System. Available via anonymous ftp
        from ftp.x.org (192.112.44.100) in ./contrib/xdvi.tar.Z. Karl
        Berry has a version of called xdvik with features analogous
        to his dvipsk (see question 2) available via anonymous ftp from
        ftp.cs.umb.edu (158.121.104.33) in ./pub/tex.
      dvitovdu - for Tektronix 4010 and other terminals under Unix.
        Available via anonymous ftp from any CTAN site (see question 22)
        in the directory ./dviware/dvitovdu.
      dvi2tty - A dvi to ASCII conversion program, for normal terminals.
        Available from ftp.cs.ruu.nl (131.211.80.17) in 
        ./pub/TEX/DVI/dvi2tty.shar. A VMS version is available from
        fileserv@shsu.edu (see question 22).
      texsgi - For SGI under Irix. Available via anonymous ftp from 
        ftp.brl.mil (128.63.16.158) in ./info-iris/tex. Both a binary 
        and source are available, but be sure to get the fonts as well.
   
5) Where can I get the manual for PiCTeX?

   The PiCTeX manual is not free. It is available for $30 ($35 with the
   disk) from the TeX Users Group:
                     TeX Users Group
                     P. O. Box 869
                     Santa Barbara, CA 93102-0869 (USA)
                     805-963-1338
                     FAX: 805-963-8358
                     tug@tug.org

   The proceeds from this sale go to Michael Wichura, the author of PiCTeX,
   and TUG.

6) In LaTeX, I put some definitions in my document, but I get the error
   ``Use of \@ doesn't match its definition'' or ``You can't use 
   \spacefactor in vertical (or math) mode.'' What's wrong?

   Definitions should be be in a style file, and if you move them there,
   you should have no problem.

   If you don't want to do that, you need to include \makeatletter
   before the definitions to allow the ``internal'' LaTeX commands to
   be accessed.  These commands are normally protected from change by
   having @ in them.  Since @ is not a letter, it is normally not
   allowed as part of a multi-letter command name. To access internal
   commands you need to tell LaTeX to pretend that @ is a letter.
   This happens automatically when LaTeX reads a style file, but in
   your main document you need to surround the offending commands with
   \makeatletter ... \makeatother.

7) What is OzTeX and where can I get it (TeX for the Mac)?

   OzTeX is a version of TeX for the Macintosh. An older version of
   OzTeX (1.42) is public domain, but newer versions are shareware. A
   DVI Previewer and PostScript driver are also included. It should
   run on any Macintosh Plus, SE, II, or newer model, but will not
   work on a 128K or 512K Mac. It was written by Andrew Trevorrow, and
   is available via anonymous ftp from from midway.uchicago.edu
   (128.135.12.73) in ./pub/OzTeX, which contains other public domain
   TeX-related software for the Mac as well, or on a floppy disk from
   TUG (see question 11).  Questions about OzTeX may be directed to
   oztex@midway.uchicago.edu.
   
8) What is Fig and where can I get it?

   Fig is a menu driven tool similar to MacDraw that allows you to
   draw objects on the screen of a Sun Workstation running SunView.
   TransFig is a set of tools which translate the code fig produces to
   other graphics languages including PostScript and the LaTeX picture
   environment. Both are available via anonymous ftp from any CTAN
   archive (see question 22) or from ftp.cs.cornell.edu
   (128.84.218.75) in ./pub/fig.  Fig is supported by Micah Beck
   (beck@cs.cornell.edu) and Transfig is maintained by Brian Smith
   (bvsmith@lbl.gov). Another tool for fig conversion is fig2MF which
   generates METAFONT code from fig input, also available from CTAN

   XFig is essentially the same program except it runs under the X
   Window System. It is available via anonymous ftp from ftp.x.org
   (192.112.44.100) in ./contrib/applications/drawing_tools/xfig. It
   was written by Brian Smith.

9) How do I get WEB for C, FORTRAN, or some other language?

   TeX is written in the programming language WEB; WEB is a tool to
   implement the concept of ``literate programming.'' For more information
   on literate programming, see the newsgroup comp.programming.literate.

   There is a version of WEB for C called CWEB written by Silvio Levy. It
   is available via anonymous ftp from princeton.edu (128.112.128.1) in 
   the directory ./pub/cweb.

   There is a version of WEB called Spidery WEB which supports many 
   languages including ADA, awk, and C. It was written by Norman Ramsey 
   and, while not in the public domain, is usable free. It is available 
   via anonymous ftp from pip.shsu.edu (192.92.115.10) in 
   tex-archive/web/spiderweb.

   FWEB is a version of WEB for Fortran, Ratfor, and C written by John
   Krommes (krommes@lyman.pppl.gov). Version 1.13 is available via
   anonymous ftp from ftp.pppl.gov (192.55.106.129) in ./pub/fweb.

   SchemeWEB is a Unix filter that translates SchemeWEB into LaTeX source
   or Scheme source. It was written by John Ramsdell and is available from
   sun.soe.clarkson.edu (128.153.12.3) in ./pub/tex/tex-programs/schemeweb.

   APLWEB is a version of WEB for APL and is available from
   watserv1.waterloo.edu (129.97.129.140) in ./languages/apl.

   There are three flavors of WEB that are language-independent and
   have substantial user communities: funnelweb, noweb, and nuweb.
   NoWeb and NuWeb both emphasize simplicity; NoWeb is a bit simpler
   and more flexible, but NuWeb is more portable and easier to
   install.  FunnelWeb is more complex, but is routinely used on a
   wide variety of machines.  All three systems are available from any
   CTAN site (see question 22) in directory
   /tex-archive/web/{funnelweb,noweb,nuweb}.  An introduction to NoWeb
   appeared in the September 1994 IEEE Software, page 97.  Funnelweb
   also appeared in comp.sources.unix volume 26 issue 121, posted 11
   April 1993.

   Most of the above are also available from your nearest CTAN site
   (see question 22).

10) How can I typeset music in TeX?

    A package called MuTeX, written by Andrea Steinbach and Angelika
    Schofer, aids in doing this. It is available via anonymous ftp
    from ftp.cs.ruu.nl (131.211.80.17) in pub/TEX/MuTeX.tar.Z.  This
    package allows you to typeset single-staff music and lyrics.

    A more powerful package which allows the typesetting of orchestral
    and polyphonic music is MusicTeX, written by Daniel Taupin 
    (taupin@frups51.bitnet). It is available via anonymous ftp from
    rsovax.ups.circe.fr (130.84.128.100) [.musictex]. It should also
    be available from the archive sites detailed in question 22.

    There is a mailing list for discussion of typesetting music in TeX.
    To subscribe, send a request to mutex-request@stolaf.edu.

11) What is TUG and TUGboat?

    TUG is the TeX Users Group. TUGboat is their newsletter, containing
    useful articles about TeX and METAFONT. TUG also distributes
    TeX-related microcomputer software on disks. Inquiries should be 
    directed to:
                     TeX Users Group
                     P. O. Box 869
                     Santa Barbara, CA 93102-0869 (USA)
                     805-963-1338
                     FAX: 805-963-8358
                     tug@tug.org

    TUGboat is not archived electronically, although some authors choose
    to make their articles available through CTAN (see question 22). The
    TUG newsletter, TeX and TUG News, is archived electronically on CTAN
    sites in ./tex-archive/digests/ttn. TUG does offer a duplication 
    service.

12) How do I convert Adobe's afm files to tfm format?

    An afm2tfm program is distributed with dvips, available via
    anonymous ftp from labrea.stanford.edu (36.8.0.112) in ./pub. Alan
    Jeffrey's fontinst package is an afm2tfm converter written in TeX 
    and will be used to support the PostScript tfm files for LaTeX2e
    (see question 41). It is available from any CTAN site (see question
    22).

    For the Macintosh, there is a program called EdMetrics which does
    the job (and more). It is available free from:
              Blue Sky Research
              534 Southwest Third Avenue
              Portland, Oregon 97204 (USA)
              800-622-8398 or 503-222-9571

13) In LaTeX, how do I get a double-spaced document?

    Are you producing a thesis, and trying to obey regulations that were
    drafted in the typewriter era?  LaTeX is a typesetting system, so the
    appropriate design conventions are for ``real books''.  Find whoever
    is responsible for the regulations, and try to get the wording changed
    to cater for typeset theses (e.g., to say ``if using a typesetting 
    system, aim to make your thesis look like a well-designed book'').

    If you fail to convince your officials, or want some inter-line 
    space for copy-editing:
     - In LaTeX2e, use \linespread. For double-spaced output, use
       \linespread{1.6}.
     - Try changing \baselinestretch: \renewcommand{\baselinestretch}{1.2}
       may be enough to give officials the impression you've kept
       to their regulations.  Don't try changing \baselineskip: its
       value is reset at any size-changing command.
     - Alternatively, get doublespace.sty from any CTAN site (see question 22,
       e.g., pip.shsu.edu (192.92.115.10)) in 
       ./tex-archive/macros/latex/contrib/misc. There's also a setspace.sty
       in the same directory which is more flexible, and consistent with the
       latest release of LaTeX.

    It's not worth going to a lot of trouble.  (If officials won't allow
    standard typographic conventions, you won't be able to produce an
    aesthetically pleasing document anyway!)

14) In LaTeX, how do I include a file in the verbatim environment?

    A good way to do this is to use Rainer Sch\"opf's verbatim.sty,
    which provides the command \verbatiminput that takes a file
    as an argument. This package is available from any CTAN site (see 
    question 22) in ./tex-archive/macros/latex/distribs. Several
    files are needed.

    Another way to do this is to use the alltt environment defined in
    the style file alltt.sty available from the CTAN archives in 
    ./tex-archive/macros/latex/contrib/misc/alltt.sty.

15) In LaTeX, how do I do Y?

    If you can't figure out how to do something in LaTeX after you
    have read the manual very carefully, asked your local LaTeX
    guru, and thought about it, there is a LaTeX help service 
    available. Please note that the way to accomplish something 
    in LaTeX is often by using an appropriate style file, so please
    check this also (see question 16). If none of this works, send mail 
    in English describing your problem to latex-help@cs.stanford.edu. 
    If you haven't gotten a reply to your problem within about a week, 
    send mail to latex-help-coordinator@cs.stanford.edu.

16) Where can I find a TeX macro or LaTeX style file for doing Y?

    Before you ask for a TeX macro or LaTeX style file to do something, 
    please search the TeX macro index written by David M. Jones
    (dmjones@theory.lcs.mit.edu) and available via anonymous ftp
    from theory.lcs.mit.edu (18.52.0.92) in ./pub/tex/TeX-index. Those 
    without access to anonymous ftp can send a message containing the
    line ``send tex TeX-index'' to archive-server@theory.lcs.mit.edu.
    The index is an excellent reference document with plenty of 
    cross-references. Unfortunately, it is also very dated. For packages
    listed in _The LaTeX Companion_, consult the file ./info/companion.ctan
    on any CTAN site (see question 22).

    Another possibility is to use the searching features of the CTAN
    archives. Once you have an anonymous ftp connection established to
    a CTAN site, you can type the command `quote site index <term>'
    and it will provide a list of files with the string <term> in
    their names.

17) How do I generate an index in TeX/LaTeX?

    Making an index is not trivial. There are several indexing programs
    which aid in doing this. The following are available from any CTAN
    site (see question 22):
      makeindex - for LaTeX under Unix (but runs under other OS's
         without changes). A version for the Macintosh is available from
         Johnny Tolliver at tolliver%atf.mfenet@nmfecc.llnl.gov. The 
         Makeindex documentation is a good source of information on how 
         to create your own index. Makeindex can be used with some TeX macro
         packages other than LaTeX, such as Eplain.
      idxtex - for LaTeX under VMS.
      texix - for TeX on CMS and Macintosh machines.
      texindex - for LaTeX under Unix. Available from
         comp.sources.misc archives in Volume 23.

18) How do I get METAFONT to do what I want it to do?

    METAFONT allows you to create your own fonts, and ordinary TeX users
    will never need to use it. METAFONT, unlike TeX, requires some 
    customization. Each output device for which you will be generating 
    fonts needs a mode associated with it. Modes are defined using the 
    mode_def convention described on page 94 of _The METAFONTbook_. So 
    first create a file, which we will call local.mf, containing all the 
    mode_defs you will be using. The file modes.mf by Karl Berry,
    available via anonymous ftp from ftp.cs.umb.edu (158.121.104.33) in
    ./pub/tex is a good starting point for this. Listings of settings for 
    various output devices are also published periodically in TUGboat 
    (see question 11). Now create a plain base file using inimf, plain.mf, 
    and local.mf:
       % inimf
       This is METAFONT....
       **plain                 # you type plain
       (output)
       *input local            # you type this
       (output)
       *dump                   # you type this
       Beginning to dump on file plain....
       (output)
       %
    This should create a base file named plain.base (or something close)
    and should be moved to the directory containing the base files on
    your system.
 
    Now you need to make sure METAFONT loads this base when it starts
    up. If METAFONT loads the plain base by default on your system, then
    you're ready to go. Under Unix, we might, for instance define a 
    command mf which executes ``virmf &plain,'' loading the plain base
    file.
 
    The usual way to create a font with plain METAFONT is to then start 
    it with the line
       \mode=<mode name>; mag=<magnification>; input <font file name>
    in response to the * prompt or on the METAFONT command line. If 
    <mode name> is unknown or omitted, then the mode defaults to proof 
    mode. If this has happened METAFONT will produce an output file
    called <font file name>.2602gf. The <magnification> is a floating 
    point number or magstep (magsteps are defined in _The METAFONTbook_ 
    and _The TeXbook_). If mag=<magnification> is omitted, then the 
    default is 1. For example, to generate cmr10 at 12pt for an epson 
    printer you would type
       mf \mode=epson; mag=1.2; input cmr10
    Note that under Unix the '\' and ';' characters must usually be 
    escaped, so this would typically look something like
       mf \\mode=epson\; mag=1.2\; input cmr10
 
    If you don't have inimf or need a special mode that isn't in the
    base, you can put its commands in a file (e.g., ln03.mf) and invoke
    it on the fly with the \smode command. For example, to create 
    ln03.300gf for an LN03 printer, using the file
	% This is ln03.mf as of 2/27/90
	% mode_def courtesy of John Sauter
	proofing:=0;
	fontmaking:=1;
	tracingtitles:=0;
	pixels_per_inch:=300;
	blacker:=0.65;
	fillin:=-0.1;
	o_correction:=.5;
    (note the absence of the mode_def and enddef commands), you would type
       mf \smode="ln03"; input cmr10
    
19) Where do I get TeX/LaTeX for machine Y running Q?

    Unix - The Unix TeX distribution is available via anonymous ftp from any 
       CTAN archive (see question 22). The Northwest Computing Support Center
       was ordered closed by the University of Washington, thus Unix TeX
       can no longer be ordered.

       Instructions for retrieving TeX via anonymous ftp are available
       in the document FTP.nwc, itself available via anonymous ftp from
       ftp.cs.umb.edu (158.21.104.33) in ./pub/tex.

       Note: The Unix version of TeX allows your ``macros'' or ``inputs''
       and ``fonts'' directories to be hierarchically organized with
       further subdirectories, rather than dumping everything into one
       directory. This can cause TeX to start very slowly. The cure
       for this problem is to insure each subdirectory contains either
       only directories or only files.

    AIX - TeX for the IBM RS6000 running AIX can be found on
       ftp.dante.de (129.206.100.192) in ./tex-archive/systems/unix/aix3.2.

    PC - A TeX package for the PC, including LaTeX, BibTeX, previewers,
       and drivers is available via anonymous ftp from 
       vax.eedsp.gatech.edu (130.207.226.24) in ./pub/TeX. The variety here
       is sbtex version 30 by Wayne Sullivan. EmTeX, another TeX package 
       for the PC by Eberhard Mattes, is available via anonymous ftp from 
       ftp.dante.de (129.206.100.192) in 
       ./tex-archive/systems/msdos/emtex and also from niord.shsu.edu
       (192.92.115.8) in [.emtex]. This package includes LaTeX, METAFONT,
       BibTeX, etc., as well. Documentation is available in both German 
       and English. The EmTeX user's mailing list is 
       emtex-user@methan.chemie.fu-berlin.de.

    Mac - see question 7 for a public domain version (OzTeX). Another version
       is CMacTeX, which has TeX 3.14, METAFONT 2.7, a screen previewer,
       dvips, a PostScript printing utility for the LaserWriter, and some font
       managing utilities. It is available from the CTAN archives discussed
       in question 22. 

    TOPS-20 - TeX was originally written on a DEC-10 under WAITS, and so
       was easily ported to TOPS-20. A Distribution that runs on TOPS-20 
       is available via anonymous ftp from ftp.math.utah.edu 
       (128.110.198.34) in ./pub/tex/pub/web.

    VAX/VMS - TeX for VMS is available from any CTAN site (see question 22)
       in the directory ./systems/vms. Standard tape distribution is 
       through DECUS.

    Atari - TeX is available for the Atari ST from atari.archive.umich.edu
       (141.211.165.41) in ./atari/tex. If anonymous ftp is not available
       to you, send a message containing the line ``help'' to
       atari@atari.archive.umich.edu. The mail server can uuencode
       binary files. Another version can be obtained via anonymous
       ftp from ifi.informatik.uni-stuttgart.de (129.69.211.1) in
       ./pub/atari.st/tex. There is also lots of TeX stuff for the
       Atari on the CTAN and ftp.cs.ruu.nl archives mentioned in
       question 22.

    Amiga - A full implementation of TeX 3.1 call PasTeX and METAFONT 2.7
        are available via anonymous ftp from merlin.etsu.edu (192.43.199.20)
        in ./ab20/AMIGA. It is also available via anonymous ftp from
        forwiss.uni-passau.de (132.231.20.10) in ./pub/amiga/tex. 
        You can also order a CDROM containing this and other amiga software
        from Walnut Creek CDROM, (510) 947-5997.

    Tandy 6000 - If you are interested in building TeX on this machine
        contact Ken Yap (ken@syd.dit.csiro.au), and he'll help you.

20) Where can I get a thesis style for LaTeX?

    Thesis styles are usually very specific to your University, so it's
    usually not profitable to ask the whole newsgroup for one. If you
    want to write your own, a good place to start is the ucthesis style
    available from any CTAN archive in macros/latex/contrib/ucthesis
    (see question 22).

21) How do I get symbols for ``the real numbers'', ``the complex numbers'',
    and so on?

    These symbols are known as ``blackboard bold'' and are available
    in the AMS fonts ``msam'' (e.g., ``msam10'' for 10pt) and
    ``msbm''.  They replace the older ``msxm'' and ``msym''. The fonts
    have a large number of mathematical symbols to supplement the ones
    provided by TeX. The fonts are available via anonymous ftp from
    e-math.ams.org (130.44.1.100) in the directory ./ams/amsfonts.
    Two files which load the fonts and define the symbols are
    provided, and both work with either TeX or LaTeX. Questions or
    suggestions regarding these fonts should be directed to
    tech-support@math.ams.org.

    A geometric sans serif blackboard bold font by Alan Jeffrey is
    available from any CTAN archive (see question 22) in
    ./tex-archive/fonts/bbold.  Another set of blackboard bold fonts
    which may fit better with computer modern fonts are the BBM* fonts
    available from any CTAN site (see question 22) in
    ./tex-archive/fonts/cm/bbm.

    A set of LaTeX macros for a ``lazy person's'' blackboard bold are:
       \newcommand{\R}{{\sf R\hspace*{-0.9ex}\rule{0.15ex}%
       {1.5ex}\hspace*{0.9ex}}}
       \newcommand{\N}{{\sf N\hspace*{-1.0ex}\rule{0.15ex}%
       {1.3ex}\hspace*{1.0ex}}}
       \newcommand{\Q}{{\sf Q\hspace*{-1.1ex}\rule{0.15ex}%
       {1.5ex}\hspace*{1.1ex}}}
       \newcommand{\C}{{\sf C\hspace*{-0.9ex}\rule{0.15ex}%
       {1.3ex}\hspace*{0.9ex}}}

22) What repositories of TeX material are available, and how can I access
    them?
 
    To aid the archiving and retrieval of of TeX-related files, a TUG
    working group developed the Comprehensive TeX Archive Network
    (CTAN).  Each CTAN site has identical material, and maintains
    authoritative versions of its material.  These collections are
    extensive; in particular, almost everything mentioned in this
    document is archived at the CTAN sites, even if not explicitly
    stated.

    The CTAN sites are currently ftp.dante.de (129.206.100.192)
    ftp.tex.ac.uk (128.232.1.87), and pip.shsu.edu (192.92.115.10). 
    The organization of TeX files on all these sites is identical and
    starts at ./tex-archive. To reduce network load, please use the
    CTAN site or mirror closest to you. A complete and current list
    of CTAN sites and mirrors can be obtained by using the finger
    utility to finger ctan_us@ftp.SHSU.edu.

    To find software at a CTAN site, use anonymous ftp to the host,
    and then execute the command `quote site index <search-term>'.

    An extremely nice interface to CTAN is provided by the CTAN-Web Home
    Page maintained by Norman Walsh (norm@ora.com). It is found at
    http://jasper.ora.com/ctan.html. If your network connection to this
    host is fast enough, it should be the method of choice for accessing
    the archive.

    The mail servers of the CTAN sites are not yet identical, but this is
    planned. Here are the current methods of access via electronic mail:
      - For the UK site, send a message to texserver@tex.ac.uk. The
        first non-blank line of the message must contain a valid
        TeXserver command (help, directory, files, whereis, search,
        or path). The program will then mail you a response notifying
        you that your request has been received. If you fail to get a
        response from the TeXserver, you may need to use the ``path''
        command to help the program out. For Internet users the
        return address is of the form name%site@nsfnet-relay, while
        for Bitnet and EARN it is name%site@earn-relay (i.e., include
        a line that says ``path name%site@nsfnet-relay'' along with a
        line containing ``help''). 
      - For ftp.dante.de, send a message containing the line
        ``help'' to mail-server@ftp.dante.de.
      - For the SHSU site, send a message with the line "help" to
        ftpmail@ftp.shsu.edu. This provides an ftp-like interface
        through mail.

    There are several other repositories of TeX material available:
      - ftp.cs.ruu.nl (131.211.80.17) also contains a substantial TeX
        archive with ftp access. To use it via email, send a message
        containing the line ``help'' to mail-server@cs.ruu.nl. This mail 
        server can send binary files in a variety of different formats.
      - There are LISTSERV facilities for TeX at LISTSERV@DHDURZ1.BITNET. 
        Send a message containing the line ``help'' to this address.
      - For users on BITNET, access to anonymous ftp for some files can
        be obtained indirectly by sending mail to BITFTP@PUCC.BITNET.
        Send a message containing the line ``help'' to this address for
        more information.
     
    There is also the DECUS TeX collection, a collection of TeX material
    for VMS, Unix, MS-DOS, and the Macintosh. It is available via 
    anonymous ftp from wuarchive.wustl.edu (128.252.135.4) in ./decus/tex.
    It can also be obtained from the DECUS Library (reference number 
    VS0058) in the US, or through your DECUS office outside of the US. To 
    contact the DECUS Library, send mail or call:
                 The DECUS Program Library
                 334 South Street SHR3-1/T25
                 Shrewsbury, MA 01545-4195
                 (800)332-3755
    The last update to this collection was in February 1991, so it is old.
     
    Another good source of information is NETWORK SOURCES OF TeX WARE by
    Peter Flynn which appeared in TeXhax, volume 90, issues 45-47 (in
    May 1990).      

23) How do I use PostScript fonts with LaTeX?

    The best way to do this is to install LaTeX2e (see question 41)
    and use the PSNFSS2e package written by Sebastian Rahtz. It is
    available from all the major archives mentioned in question
    22. Some vendors who supply particular PostScript fonts may have
    packages which simplify this even further. Note that you will
    need tfm files for the PostScript fonts. They can be found on any
    CTAN archive (see question 22) or they can be generated from afm
    files using afm2tfm (see question 12).

    Alan Jeffrey's fontinst package allows you to handle PostScript
    fonts in ways not dealt with by PSNFSS. See question 50 for more
    details.

24) How can I convert from format Y to TeX or LaTeX, and vice-versa?

    troff - troff-to-latex is available from any CTAN site (see
      question 22) in the directory ./support/troff-to-latex. This
      program, written by Kamal Al-Yahya at Stanford, assists in the
      translation of a troff document into LaTeX format. It recognizes
      most -ms and -man macros, plus most eqn and some tbl
      preprocessor commands. Anything fancier needs to be done by
      hand. Two style files are provided. There is also a man page
      (which converts very well to LaTeX :-). The program is
      copyrighted but free. An enhanced version of this program,
      tr2latex, is available from ftp.informatik.rwth-aachen.de
      (137.226.112.172) in ./pub/TeX.  The DECUS TeX distribution (see
      question 22) also contains a program which converts troff to
      TeX. If you are interested in obtaining a copy of this program
      without getting the entire DECUS TeX distribution, send the
      command: SENDME TROFFTOTEX in the body of a mail message to
      FILESERV@SHSU.BITNET (FILESERV@SHSU.edu), or use anonymous ftp
      to the directory [.TROFFTOTEX] on Niord.SHSU.edu (192.92.115.8).
      The GNU version of troff, groff, can also convert to a .dvi file.

    scribe - Mark James has a copy of scribe2latex he has been
      unable to test but which he will let anyone interested have.
      Send email to jamesm@procor.dialogic.com. The program was written
      by Van Jacobson of Lawrence Berkeley Laboratory.

    wordperfect -  wp2latex is available on wuarchive.wustl.edu
      (128.252.135.4) in the directory ./mirrors/msdos/tex and from
      any CTAN site (see question 22) in ./support/wp2latex. This is
      a PC program written in Turbo Pascal by R. C. Houtepen at the
      Eindhoven University in the Netherlands. It converts
      WordPerfect 5.0 documents to LaTeX. Pascal source is included.
      Users find it ``helpful'' and ``decent'' in spite of some
      limitations. It gets high marks for handling font changes.
      Limitations include no indices, table of contents, margins or
      graphics.  It also won't handle the new features of WordPerfect
      5.1, in particular the equation formatter. The program is
      copyrighted but free.

      Glenn Geers of the University of Sydney(glenn@qed.physics.su.oz.au)
      is translating wp2latex into C and adding some WordPerfect 5.1
      features, in particular its equation handling. This is an
      ongoing project; the most recent version can be retrieved via
      anonymous ftp from suphys.physics.su.oz.au (129.78.129.1) in
      ./wp2latex. It was posted to alt.sources on 8 August 1990.

      Commercial packages are available for DOS which convert from
      WordPerfect to LaTeX, and from TeX and LaTeX to WordPerfect, but
      I am unaware of any free products which do this.

    PC-Write - pcwritex.arc is available on wuarchive.wustl.edu
      (128.252.135.4) in directory mirrors/msdos/tex and in zoo format
      from any CTAN site (see question 22) in ./support/pcwritex.
      This is a print driver for PC-Write that ``prints'' a PC-Write
      V2.71 document to a TeX-compatible disk file. It was written by
      Peter Flynn at University College, Cork, Ireland. It is public
      domain.

    runoff - Peter Vanroose (vanroose@esat.kuleuven.ac.be) has 
      written a RUNOFF-to-TeX conversion program in VMS Pascal.  It is 
      available from comp.text archives (they do exist, don't they?  The 
      program was submitted in December 1987) or from the author 
      (peter@dit.lth.se) or from Mark James (jamesm@procor.dialogic.com).

    refer/Tib - There are a few programs for converting bibliographic data 
      between BibTeX and refer/Tib formats. Up to date information is 
      contained on the web page 
      http://www.ecst.csuchico.edu/~jacobsd/bib/tools/index.html. Some
      tools are also available via anonymous ftp from ftp.ai.mit.edu
      (128.52.32.11) in the directory ./pub/refer-to-bibtex.  In spite
      of the directory name, it also contains a shell script to
      convert BibTeX to REFER as well. Unfortunately, this collection
      is not maintained, and was last updated in 1990.

    RTF - A program for converting Microsoft's Rich Text Format to TeX
      is available via anonymous ftp from astro.princeton.edu
      (128.112.128.131) in ./pub/rtf2TeX.tar.Z. It was written and is
      maintained by Robert Lupton (rhl@astro.princeton.edu). There is
      also an rtf2LateX written by Erwin Wechtl available from 
      ftp.vmars.tuwien.ac.at (128.130.39.16) in ./pub/misc.

    Microsoft Word - A rudimentary program for converting MS-Word
      to LaTeX is wd2latex, for MS-DOS, available via anonymous ftp
      from any CTAN site (see question 22). A better idea, however, 
      is to convert the document to RTF format and use the RTF 
      converter mentioned above.
    
    In addition, a group at Ohio State University is working on a common
    document format based on SGML.  In theory any format could be
    translated to or from this one.  Also, Framemaker supposedly has
    ``import filters'' to aid in the translation from alien formats
    (presumably including TeX) to Framemaker; perhaps other desktop
    publishing programs have similar things.
      
25) How do I get a file into the major style repositories?
    
    Use anonymous ftp to any CTAN archive (see question 22) and
    retrieve the file README.uploads in the root directory. It contains
    instructions for uploading files and notifying the appropriate
    people for that site.

    If you cannot use ftp, mail your contribution to sty-mgr@shsu.edu
    and it will be passed along. You will make everyone's life easier
    if you choose a descriptive and unique name for your submission, so
    it's probably good idea to browse through some of the styles
    already available to insure your style file's name is not already
    in use.

26) Where can I get font Y?

    A comprehensive list of METAFONT fonts is posted to Comp.fonts
    about once every six weeks by Lee Quin (lee@sq.sq.com). It contains
    both commercial fonts and fonts available via anonymous ftp. Most
    of the fonts available via anonymous ftp are available from
    the CTAN archives (see question 22). Also, the file wujastyk.txh
    ./tex-archive/digests/texhax/txh/wujastyk.txh is a copy of
    Dominik Wujastyk's font article, and contains information on
    METAFONT fonts as well.

27) Where can I get a dvi driver for the HP LaserJet?

    PC - The emtex package mentioned in question 19 contains a driver for
       the LaserJet, dvihplj. 

    Version 2.10 of the Beebe drivers support the LaserJet. These drivers
    will compile under Unix, VMS, and on the Atari ST and DEC-20's. They
    are available from ftp.math.utah.edu (128.110.198.34) in ./pub/tex/dvi.

28) TeX and LaTeX are hyphenating words weirdly. What can I do?

    You have a version mismatch problem. The hyphenation algorithm changed
    between version 2.9 and 3.0. If you are using TeX version 3.0 or
    later, make sure you have plain.tex and lplain.tex files with a
    version number of at least 3.0.

    For those of you curious about the change, here's what happened:
    in versions of TeX before 3.0 the hyphenation algorithm would not
    break a word if the part before the break was not at least two
    characters long, and the part after the break at least three 
    characters long. Starting with version 3.0 two integer parameters,
    \lefthyphenmin and \righthyphenmin, control the length of these
    fragments. These are set to 2 and 3, respectively, in the new
    plain and lplain formats. They can be set to any value, of course,
    but if \lefthyphenmin + \righthyphenmin is greater than 62, all
    hyphenation is suppressed.

29) How can I convert a TeX or LaTeX file into a plain ASCII file,
    with all the formatting intact, a la nroff?

    Ralph Droms (droms@bucknell.edu) has a style file and a C program
    that provide the LaTeX equivalent of nroff. Although it doesn't do
    a good job with tables and math, it's the best way to convert that
    I've seen. The software is available for anonymous ftp from
    sol.cs.bucknell.edu (134.82.1.8) in ./droms/txt-dist.tar. This is a
    modification of the dvi2tty program; the original often does an
    acceptable job and can be gotten from any CTAN site (see question 22).

    Another possibility is to use screen.sty, available from all the
    major archives. However you need a program called crudetype to
    process the resulting dvi file. It is available from any CTAN site
    in ./tex-archive/dviware/crudetype and from 
    ftp.uni-stuttgart.de (129.69.8.13) in
    ./tex-archive/dviware/screenview. Another possibility is to use
    the LaTeX-to-ASCII conversion program, l2a, available from
    comp.sources.misc archives (one archive site is ftp.uu.net
    (192.48.96.9)), although this is really more of a de-TeXing
    program. If you are running under Unix and have C++ and perl, you
    might try Jonathan Monsarrat's LameTeX package (which actually
    does much more than this), available from wilma.cs.brown.edu
    (128.148.33.66) in ./pub/lametex.tar.Z.

30) How do I enlarge TeX? I keep getting `memory capacity exceeded'
    errors.

    Most of the time, a ``memory capacity exceeded'' error can be fixed
    without enlarging TeX.  The most common causes are unmatched braces,
    extra-long lines, and poorly-written macros.  Extra-long lines
    are often introduced when files are transferred incorrectly between
    operating systems.  (The tell-tale sign of an extra-long line error
    is when the complaint is that the `buf_size' has overflowed.)

    If you really need to extend your TeX's capacity, the proper method
    varies depending on your installation.  In the purest form, you
    change the parameters in module 11 (``The following parameters can
    be changed...'')  In less pure forms, you might need to modify a
    change file, or perhaps change some environment variables.  Consult
    the documentation that came with your particular implementation.

31) In LaTeX, I used \pagestyle{empty}, but the first page is still 
    numbered. What do I do?

    If you see this, you are using the \maketitle command too. This is
    not a bug but a feature! The standard LaTeX styles are written so
    that initial pages (pages containing a \maketitle, \part, or \chapter)
    have a different page style than the rest of the document. Hence, the
    above commands internally issue a \thispagestyle{plain}. This is
    usually not acceptable behavior if the page style is `empty'.

    Possible workarounds include:   
     - Put \thispagestyle{empty} immediately after the \maketitle command, 
       with no blank line between them.
     - Use fancyheadings.sty, available from any CTAN (see question 22).
       In this style, the style for initial pages can be customized as well.

32) Where do I find documentation about BibTeX?

    BibTeX, a program originally designed to produce bibliographies in
    conjunction with LaTeX, is explained in Section 4.3 and Appendix B 
    of Leslie Lamport's LaTeX manual.  The ``BibTeXing'' document, 
    contained in the file btxdoc.tex, gives a more complete description.
    _The LaTeX Companion_ also has information on BibTeX and writing 
    BibTeX style files.

    The ``Designing BibTeX Styles'' document, contained in the file 
    btxhak.tex, explains the postfix stack-based language used to
    write BibTeX styles (.bst files).  The file btxbst.doc is the template
    file for the four standard styles (plain, abbrv, alpha, unsrt). It
    also contains the documentation for them.

    The current Unix-BibTeX man page, contained in the file
    bibtex.1, was updated in January 1992 and is about one page long.
    There's an old and obsolete version floating around, written in 1985
    before ``BibTeXing'' and ``Designing BibTeX Styles'' appeared, that is
    several pages long.  You should ignore it (or throw it away), since it
    describes BibTeX version 0.98, style files of which are incompatible 
    with the current version, 0.99 (to be precise, 0.99c).

    All files mentioned in this answer are available via anonymous ftp
    from labrea.stanford.edu (36.8.0.112) in the BibTeX ftp area, 
    tex/bibtex. All the non-Unix files should be available on any system 
    that runs BibTeX; if they're not on your system, please complain to 
    your BibTeX installer or to your distribution source.

33) How do I use BibTeX with plain TeX?

    The file btxmac.tex contains TeX macros and documentation for using
    BibTeX with plain TeX, either directly or with Karl Berry's Eplain
    package. It is available via anonymous ftp from labrea.stanford.edu
    (36.8.0.112) in tex/bibtex (see question 32 for more information 
    about BibTeX).

34) How do I draw Feynman diagrams in LaTeX?

    Michael Levine's macro package for drawing Feynman diagrams in LaTeX
    is available via mail-server from physics.utoronto.ca. Send a message
    containing the line ``send INDEX'' to mail-server@physics.utoronto.ca
    for information on how to retrieve it. It is also available from any
    CTAN site or mirror (see question 22).

    Jos Vermaseren's ``axodraw'' package, uses PostScript \specials
    and is thus slightly less portable but much more powerful. Also,
    there is Thorsten Ohl's ``feynmf'' package for LaTeX2e which uses
    METAFONT (or MetaPost) to combine flexibility and portability.
    Both are available from any CTAN site (see question 22).

35) What is the New Font Selection Scheme (NFSS)?

    NFSS is an extension to LaTeX written by Frank Mittelbach and Rainer
    Sch\"opf. It is described in TUGboat, volume 10 (1989), No. 2.
    In traditional typesetting, fonts are described by four parameters:
    the family (e.g., computer modern), the series (i.e., the weight and
    width of the font, like light or bold), the shape (e.g., italic), and
    the size. NFSS is a mechanism allowing the user to change any of these
    independently. NFSS makes it relatively easy to use nonstandard fonts
    such as the PostScript ones with LaTeX, and easy to change math fonts.
    It also allows dynamic loading of fonts at runtime (not when the
    format file is created).

    NFSS is no longer supported for LaTeX version 2.09, but is standard
    with LaTeX2e (see question 41).

    There is one caveat that applies to LaTeX documents written for
    the OLD scheme: some of them use special styles for special fonts
    which will not work under the NFSS.

36) In LaTeX, my cross-references for floats (figures and tables) are
    incorrect. What's wrong?

    The \label command must come after the \caption command, or
    be part of it. For example,
       \begin{figure}               \begin{figure}
       \caption{A Figure}    or     \caption{A Figure\label{fig}}
       \label{fig}                  \end{figure}
       \end{figure}
    The \label command should in fact come immediately after the \caption
    command, as closing an environment will also cause problems:
          WON'T WORK                  WILL WORK
        \begin{figure}              \begin{figure}
        \begin{center}              \begin{center}
        \caption{A Figure}          \end{center}
        \end{center}                \caption{A Figure}
        \label{fig}                 \label{fig}
        \end{figure}                \end{figure}

37) I want to change the margins in LaTeX. What can I do?

    This answer first helps you change the margins throughout a
    document, then tells you how to change the margins in a portion
    of the document.

    Perhaps the easiest way to get more out of a page in LaTeX is to
    get fullpage.sty, available from all the major archive servers
    mentioned in question 22. This sets the margins of the page identical
    to those of Plain TeX, i.e., 1-inch margins at all four sides of the
    paper. It also contains an adjustment for A4 paper.

    Here is a brief explanation of what's going on with the page
    parameters in LaTeX. They are explained in section C.5.3 of the
    LaTeX manual (pp. 181--182). A more complete explanation can be
    found Chapter 4 of _The LaTeX Companion_.  The margin parameters
    represent measurements made to the DVI file. The origin in DVI
    coordinates is one inch from the top of the paper and one inch
    from the left side. This explains the ``one inch less than''
    terminology used in the LaTeX manual. In DVI coordinates, positive
    horizontal measurements extend right across the page, and positive
    vertical measurements extend down the page. Thus, for margins
    closer to the left and top edges of the page than 1 inch, the
    corresponding parameters, e.g., \evensidemargin, \oddsidemargin,
    \topmargin, can be set to negative values.

    Finally, to change the margins of a document within the document,
    modifying the parameters listed in Figure C.3 will not work. They
    can only be changed in the preamble of the document, i.e, before
    the \begin{document} statement. To adjust the margins within a
    document we define an environment which does it:
      \newenvironment{changemargin}[2]{\begin{list}{}{
         \setlength{\topsep}{0pt}\setlength{\leftmargin}{0pt}
         \setlength{\rightmargin}{0pt}
         \setlength{\listparindent}{\parindent}
         \setlength{\itemindent}{\parindent}
         \setlength{\parsep}{0pt plus 1pt}
         \addtolength{\leftmargin}{#1}\addtolength{\rightmargin}{#2}
         }\item }{\end{list}}
    This environment takes two arguments, and will indent the left
    and right margins by their values, respectively. Negative values
    will cause the margins to be widened, so
    \begin{changemargin}{-1cm}{-1cm} widens the left and right margins
    by 1cm.

38) How do I find the width of a letter, word, or phrase in TeX?

    Put the word in a box, and measure the width of the box. For example,
        \setbox0=\hbox{hi}
        width=\wd0
    Note that if the quantity in the hbox is a phrase, the actual 
    measurement only approximates this width, since the interword glue
    can be adjusted in paragraph mode.

    In LaTeX, the following works (taken from the manual):
        \newlength{\gnat}
        \settowidth{\gnat}{\em small}
    This sets the value of the length command \gnat to the width of ``small''
    in emphasized text.

39) In LaTeX, is there a comment or ``ignore'' environment with which
    I can exclude blocks of text from the .dvi file?

    Rainer Sch\"opf's verbatim.sty provides a comment environment which
    excludes everything between \begin{comment} and \end{comment}. It is
    available via anonymous ftp from any CTAN site (see question 22) in
    ./tex-archive/macros/latex/distribs. Several files are needed to
    install the package. A more general environment for doing this is
    comment.sty, also available from the CTAN sites in
    ./tex-archive/macros/latex/contrib/misc.

40) Where can I find a spelling checker for my TeX file?

    For Unix, ispell is probably the program of choice. It is available
    from any CTAN site (see question 22) in ./systems/gnu/ispell*.

    For DOS, jspell is an extended version of ispell, and is available via
    anonymous ftp from any CTAN site.

    For VMS, a spell checker can be found via anonymous ftp from ftp.spc.edu
    in  [.MACRO32.SAVESETS]. Retrieve SPELL.ZIP and SPELL_DICTIONARY.ZIP. 

    For the Macintosh, a very nice spell checker called Excalibur is
    available from any CTAN site (see question 22) in
    ./tex-archive/support/mac/excalibur.

41) What is LaTeX2e?

    LaTeX2e is the new standard version of LaTeX, prepared and
    supported by the LaTeX3 project team. It is the current version of
    LaTeX and is available from any CTAN site (see question 22) in
    ./tex-archive/macros/latex. LaTeX 2.09 is no longer supported.

    LaTeX2e is upwardly compatible with LaTeX 2.09, but supports many new
    features, including:
     - NFSS (see question 35) is now standard.
     - SliTeX is consolidated into it, and there is no longer a need for
       a separate program.
     - The output routine gives better control of floating environments,
       such as figures.
     - There is a documented interface to style files.
     - Enhanced box commands, e.g., options to specify the height of a 
       minipage.
     - \ref is now robust and can be used in \caption.
     - \newcommand can define commands with optional arguments.
     - A standard package for color and graphics inclusion.

    Since LaTeX2e is supported, you can report bugs or problems with it by
    typing `latex latexbug' and sending the report it generates to 
    latex-bugs@rus.uni-stuttgart.de.

42) In LaTeX, how can I define a new log-like function?

    Use the \mathop command, as in:
         \newcommand{\diag}{\mathop{\mathrm{diag}}}

    Subscripts and superscripts to \diag will be done identically to \lim.
    If you want your subscripts and superscripts placed to the right, do:
         \newcommand{\diag}{\mathop{\mathrm{diag}}\nolimits}

    Older versions of LaTeX may not define \mathrm; alternatively, use
    {\rm diag}.

43) In LaTeX, how do I put a \sqrt in my \caption statement?

    \sqrt is a fragile command and the argument to \caption is ordinarily
    a moving argument. Therefore \sqrt needs to be preceded with a \protect
    command.

44) In LaTeX, how do I get thin and thick \hlines in a table?

    In the preamble, do: 
         \setlength{\doublerulesep}{\arrayrulewidth}.
    Then in a table or array, do:
         <stuff in the table>  \\\hline         %thin hline
         <more stuff in table> \\\hline\hline   %thick hline

45) In LaTeX, how do I number the bibliography using Arabic numbers without
    square brackets or using superscripts?

    In a style file (or between \makeatletter ... \makeatother, see
    question 6), put:
         \renewcommand\@biblabel[1]{#1.}     % Arabic numbers, no brackets
         \renewcommand\@biblabel[1]{$^{#1}$} % Superscripts

46) In LaTeX, why are my cites all numbered zero?

    Your document style and your version of LaTeX are incompatible.
    Since this may reflect an incomplete update done at some point,
    you should probably get the complete distribution (see question
    22).

    This problem usually occurs using an old university style file
    which is not maintained. If you are going to correct the style
    file, the definition of \thebibliography needs to be updated from
    article.cls (or article.sty).

47) In LaTeX, my figures get put on a page by themselves with too much
    whitespace, but when I tried \begin{figure}[t] they get printed at
    the end. Why?

    Your figures are bigger than \floatpagefraction, but you are
    willing to accept pages with less text than the default.  Use:
         \renewcommand\floatpagefraction{.9}
         \renewcommand\topfraction{.9}
         \renewcommand\bottomfraction{.9}
         \renewcommand\textfraction{.1}

    You can adjust the cut-off value if you like, but it makes no
    sense to go higher than .95 (LaTeX's default value is only .5).
    Also, the first 3 values should be equal, and the last should be
    1 - \floatpagefraction.  Otherwise, you are likely to get floats
    flushed to the end.

48) In LaTeX, how do I make a line break in a section title?

    It is better to try to prevent bad breaks by using ~ than to force
    good breaks. Unfortunately, LaTeX's default styles make titles with
    flush margins and most other styles have followed, so this may not
    work in many cases. You should definitely avoid hyphenation in titles.

    To force line breaks in a title, but not in the table of contents,
    use the optional argument for \section:
         \section[This is the Title]{This is\\ the Title}

    One benefit of this is that \\ is safe and no \protect is needed.

49) In LaTeX, how do I number equations by section?

    In a style file (or between \makeatletter ... \makeatother, see
    question 6), put:
         \renewcommand\theequation{\thesection.\arabic{equation}}
         \@addtoreset{equation}{section}

    If you have chapters with a preamble that comes before the first
    section, you should not put equations there, as you will get funny
    numbers like 3.0.1. There are also two style files available from
    any CTAN site called seceqn.sty and apeqnum.sty. The first numbers
    equations by section, and the second gives individual equation
    numbers to equations in the appendix.

50) What is the fontinst package?

    Fontinst is a package written and supported by Alan Jeffrey. It
    makes the inclusion of PostScript fonts in LaTeX very easy by
    providing a set TeX macros which allows users to install virtual
    fonts. It can convert fonts from Adobe Font Metric (afm) or TeX
    Property List (pl) format into Virtual Property List (vpl)
    format. These Virtual Fonts (vfs) can then be used by your
    favorite device driver, such as dvips. Fontinst is available from
    any CTAN archive (see question 22) in ./fonts/utilities/fontinst.
    
    The package is written in TeX, for maximum portability at the cost
    of speed. It supports the OT1 (Computer Modern) and T1 (Cork)
    encodings, and allows fonts to be generated in an arbitrary
    encoding, with arbitrary `fake' characters---for example the `ij'
    character can be faked if necessary by putting an `i' next to a
    `j'. In addition, it can be customized by the user to deal with
    arbitrary font encodings.
    
    The package allows kerning to be shared between characters, for
    example `ij' can be kerned on the left as if it were an `i' and on
    the right as if it were a `j'. This is useful, since many
    PostScript fonts only include kerning information for characters
    without diacriticals.  Fontinst allows more than one PostScript
    font to contribute to a TeX font, for example the `ffi' ligatures
    for a font can be taken from the Expert encoding, if you have it,
    and it automatically generates an fd file for use with LaTeX. You
    can generate math fonts with nextlarger, varchar, and arbitrary
    font dimensions. Caps and small caps fonts can be generated with
    letter spacing and kerning.
     
    You use fontinst by writing a short LaTeX source file describing
    which fonts you want to combine, which transformations are
    necessary and what fonts you want to have finally. There are many
    contributions that can serve as a base for you to get started with
    fontinst. Running LaTeX on this source file will then produce the
    desired font definition and property files.

-- 
Bobby Bodenheimer				@hot.caltech.edu
// ARPA  : bobby@hot.caltech.edu                |
// BITNET: bobby@caltech.bitnet                 | Woof!
// UUCP  : {amdahl,ames!elroy}!cit-vax!bobby    | 

User Contributions:

Comment about this article, ask questions, or add new information about this topic:


[ Usenet FAQs | Web FAQs | Documents | RFC Index ]

Send corrections/additions to the FAQ Maintainer:
bobby@hot.caltech.edu





Last Update March 27 2014 @ 02:12 PM