home *** CD-ROM | disk | FTP | other *** search
/ Atari FTP / ATARI_FTP_0693.zip / ATARI_FTP_0693 / Tex / Tex31 / manpages.lzh / MF.1 < prev    next >
Text File  |  1990-12-03  |  10KB  |  331 lines

  1.  
  2.  
  3.  
  4.      MF(1)            UNIX 5.3 (9/25/90)             MF(1)
  5.  
  6.  
  7.  
  8.      NAME
  9.       mf, inimf  - Metafont, a language for    alphabet design
  10.  
  11.      SYNOPSIS
  12.       mf [ first line ]
  13.  
  14.       inimf    [ first    line ]
  15.  
  16.       virmf    [ first    line ]
  17.  
  18.      DESCRIPTION
  19.       METAFONT reads the program in    the specified files and
  20.       outputs font rasters (in gf format) and font metrics (in tfm
  21.       format).  METAFONT capabilities and language are described
  22.       in The METAFONTbook by Donald    E. Knuth, published by
  23.       Addison-Wesley.
  24.  
  25.       Like TeX , METAFONT is normally used with a large body of
  26.       precompiled macros, and font generation in particular
  27.       requires the support of several macro    files.    The basic
  28.       program as compiled is called    inimf; it can be used to
  29.       precompile macros into a .base file.    The virmf variant is
  30.       used to reload the .base files quickly.  Typically, virmf
  31.       has links to it by the names of the various base files.  For
  32.       example, if you link foo to virmf and    then execute the
  33.       program foo, you get the base    file foo.base.    You can    load a
  34.       different base by saying, e.g., virmf&mybase.
  35.  
  36.       As described in The METAFONTbook, the    command    line (or first
  37.       input    line) should otherwise begin with a file name or a
  38.       \controlsequence.  The normal    usage is to say
  39.  
  40.            mf  '\mode=<printengine>; [mag=magstep(n);]' input
  41.            font
  42.  
  43.       to start processing font.mf.    The single quotes are the best
  44.       way of keeping your shell from misinterpreting the
  45.       semicolons and from removing the \ character,    which is
  46.       needed here to keep METAFONT from thinking that you want to
  47.       produce a font called    ``mode''. (Or you can just say mf and
  48.       give the other stuff on the next line, without quotes.)
  49.       Other    control    sequences, such    as batchmode (for silent
  50.       operation) can also appear. The name ``font''    will be    the
  51.       ``jobname'', and is used in forming output file names.  If
  52.       METAFONT doesn't get a file name in the first    line, the
  53.       jobname is ``mfput''.     The default extension,    .mf, can be
  54.       overridden by    specifying an extension    explicitly.
  55.  
  56.       A log    of error messages goes into the    file jobname.log.  The
  57.       output files are jobname.tfm and jobname.<number>gf, where
  58.       <number> depends on the resolution and magnification of the
  59.       font.     The ``mode'' in this example is shown generically as
  60.  
  61.  
  62.  
  63.      Page 1                         (printed 12/3/90)
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.      MF(1)            UNIX 5.3 (9/25/90)             MF(1)
  71.  
  72.  
  73.  
  74.       <printengine>, a symbolic term for which the name of an
  75.       actual device    or the name ``localfont'' (see below) must be
  76.       substituted. If the mode is not specified or is not valid
  77.       for your site, METAFONT will default to ``proof'' mode which
  78.       produces large character images for use in font design and
  79.       refinement.  Proof mode can be recognized by the suffix
  80.       .2602gf after    the jobname.  Examples of proof    mode output
  81.       can be found in ComputerModernTypefaces, (Volume E of
  82.       ComputersandTypesetting), by Donald Knuth.  The system of
  83.       magsteps is identical    to the system used by TeX , with
  84.       values generally in the range    0.5, 1.0, 2.0, 3.0, 4.0    and
  85.       5.0.    A listing of gf    numbers    for 118-dpi, 240-dpi and 300-
  86.       dpi fonts is shown below.
  87.              MAGSTEP        118    dpi   240 dpi    300 dpi
  88.          mag=magstep(0)          118    240      300
  89.          mag=magstep(0.5)     129    263      329
  90.          mag=magstep(1)          142    288      360
  91.          mag=magstep(2)          170    346      432
  92.          mag=magstep(3)          204    415      518
  93.          mag=magstep(4)          245    498      622
  94.          mag=magstep(5)          294    597      746
  95.  
  96.       Magnification    can also be specified not as a magstep but as
  97.       an arbitrary value, such as 1.315, to    create special
  98.       character sizes.
  99.  
  100.       Before font production can begin, it is necessary to set up
  101.       the appropriate base files.  The minimum set of components
  102.       for font production for a given print-engine is the plain.mf
  103.       macro    file and the local `mode_def' file.  The macros    in
  104.       plain.mf can be studied in an    appendix to the    METAFONTbook;
  105.       they were developed by Donald    Knuth, and this    file should
  106.       never    be altered except when it is officially    upgraded. Each
  107.       mode_def specification helps adapt fonts to a    particular
  108.       print-engine.     There is a regular discussion of mode_defs in
  109.       the journal of the TeX Users Group, TUGboat; the local ones
  110.       in use on this computer should be somewhere in the directory
  111.       /usr/local/lib/mf/macros.  With only plain.mf    and the
  112.       ``modes'' file loaded    it is possible to create fonts of
  113.       simple characters, such as those used    for the    METAFONT logo,
  114.       and those used for the LaTeX    line and circle    fonts, but the
  115.       production of    Computer Modern    fonts would be facilitated by
  116.       making a cmmf.base file (which includes the macros in
  117.       cmbase.mf as well as those in    plain.mf).
  118.  
  119.       Several environment variables    can be used to set up
  120.       directory paths to search when METAFONT opens    a file for
  121.       input.  For example, the csh command
  122.           setenv MFINPUTS .:/usr/me/mylib:/usr/local/lib/mf/macros
  123.       or the sh command sequence
  124.           MFINPUTS=.:/usr/me/mylib:/usr/local/lib/mf/macros
  125.           export MFINPUTS
  126.  
  127.  
  128.  
  129.      Page 2                         (printed 12/3/90)
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.      MF(1)            UNIX 5.3 (9/25/90)             MF(1)
  137.  
  138.  
  139.  
  140.       would    cause all invocations of METAFONT and its derivatives
  141.       to look for \input files first in the    current    directory,
  142.       then in a hypothetical user's    ``mylib'', and finally in the
  143.       system library.  Normally, the user will place the command
  144.       sequence which sets up the MFINPUTS environment variable in
  145.       his or her .login or .profile    file.
  146.  
  147.       The e    response to METAFONT's error-recovery mode invokes the
  148.       system default editor    at the erroneous line of the source
  149.       file.     There is an environment variable, MFEDIT, that
  150.       overrides the    default    editor.    It should contain a string
  151.       with "%s" indicating where the filename goes and "%d"
  152.       indicating where the decimal linenumber (if any) goes.  For
  153.       example, an MFEDIT string for    the vi editor can be set with
  154.       the csh command
  155.           setenv MFEDIT    "/usr/ucb/vi +%d %s"
  156.  
  157.       The environment variables section below lists    the relevant
  158.       environment variables, and their defaults.
  159.  
  160.       A convenient file in the library is null.mf, containing
  161.       nothing.  When mf can't find the file    it thinks you want to
  162.       input, it keeps asking you for another file name;
  163.       responding `null' gets you out of the    loop if    you don't want
  164.       to input anything.
  165.  
  166.      ENVIRONMENT VARIABLES
  167.       The default values for all environment variables are set at
  168.       the time of compilation in a file site.h.  See tex(1)    for
  169.       the details of the searching.     If the    environment variable
  170.       TEXMFOUTPUT is set, METAFONT attempts    to put its output
  171.       files    in it, if they cannot be put in    the current directory.
  172.       Again, see tex(1).
  173.  
  174.       MFINPUTS
  175.            Search path for input and openin    files.    It should be
  176.            colon-separated,    and start with ``.''.  Default:
  177.            .:/usr/local/lib/mf/macros.
  178.  
  179.       MFINPUTS_SUBDIR
  180.            Search path for directories with    subdirectories of
  181.            input files.  Default: @MFINPUTS_SUBDIR@
  182.  
  183.       MFBASES
  184.            Search path for base files.  Default:
  185.            /usr/local/lib/mf/bases.
  186.  
  187.       MFPOOL
  188.            Search path for METAFONT    internal strings.  Default:
  189.            /usr/local/lib/mf.
  190.  
  191.       MFEDIT
  192.  
  193.  
  194.  
  195.      Page 3                         (printed 12/3/90)
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.      MF(1)            UNIX 5.3 (9/25/90)             MF(1)
  203.  
  204.  
  205.  
  206.            Command template    for switching to editor.  Default:
  207.            /usr/bin/vi+%d%s.
  208.  
  209.      FONT UTILITIES
  210.       A number of utility programs are available. The following is
  211.       a partial list of available utilities    and their purpose.
  212.       Consult your local METAFONT guru for details.
  213.  
  214.       gftopk    Takes a GF file and    produces a more    tightly    packed
  215.             PK font file.
  216.  
  217.       gftodvi   Produces proof sheets for fonts.
  218.  
  219.       gftype    Displays the contents of a GF file in mnemonics
  220.             and/or images.
  221.  
  222.       pktype    Mnemonically displays the contents of a PK file.
  223.  
  224.       mft        Formats a source file as shown in Computer Modern
  225.             Typefaces.
  226.  
  227.      FILES
  228.       /usr/local/lib/mf   METAFONT's library areas
  229.  
  230.       /usr/local/lib/mf/mf.pool
  231.                   Encoded text of METAFONT's messages
  232.  
  233.       /usr/local/lib/mf/bases/*.base
  234.                   METAFONT base files
  235.  
  236.       /usr/local/lib/mf/macros/plain.mf
  237.                   The ``standard'' macro package
  238.  
  239.       /usr/local/lib/mf/macros/(something).mf
  240.                   The file of ``mode_def''s    for your
  241.                   site's various printers
  242.  
  243.       /src/TeX+MF/typefaces/cm/mf
  244.                   METAFONT sources for Computer Modern
  245.  
  246.      SUGGESTED READING
  247.       Donald E. Knuth, The METAFONTbook (Volume C of  Computers
  248.       and Typesetting)
  249.       Donald E. Knuth, METAFONT: The Program (Volume D of
  250.       Computers and    Typesetting)
  251.       Donald E. Knuth, Computer Modern Typefaces (Volume E of
  252.       Computers and    Typesetting)
  253.       TUGboat (the publication of the TeX  Users Group)
  254.  
  255.      COMMENTS
  256.       Warning: ``Type design can be    hazardous to your other
  257.       interests. Once you get hooked, you will develop intense
  258.  
  259.  
  260.  
  261.      Page 4                         (printed 12/3/90)
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.      MF(1)            UNIX 5.3 (9/25/90)             MF(1)
  269.  
  270.  
  271.  
  272.       feelings about letterforms; the medium will intrude on the
  273.       messages that    you read.  And you will    perpetually be
  274.       thinking of improvements to the fonts    that you see
  275.       everywhere, especially those of your own design.''
  276.  
  277.      SEE ALSO
  278.       gftopk(1), gftodvi(1), gftype(1), mft(1), pltotf(1),
  279.       tftopl(1)
  280.  
  281.      BUGS
  282.       On January 4,    1986 the ``final'' bug in METAFONT was
  283.       discovered and removed. If an    error still lurks in the code,
  284.       D.E. Knuth promises to pay a finders fee which doubles every
  285.       year to the first person who finds it. Happy hunting.
  286.  
  287.      AUTHORS
  288.       METAFONT was designed    by Donald E. Knuth, who    implemented it
  289.       using    his WEB    system for Pascal programs.  It    was originally
  290.       ported to Unix by Paul Richards at the University of
  291.       Illinois at Urbana-Champaign.     This page written by Pierre
  292.       MacKay (mostly).
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.      Page 5                         (printed 12/3/90)
  328.  
  329.  
  330.  
  331.