otp2ocp
Configuration Settings
ps2pk
Configuratio Settings
Copyright (C) 1996-1999 Christian Schenk
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.
Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by the Free Software Foundation.
MiKTeX is a free TeX distribution for Windows (9x/NT).
html:
) specials
src:
) specials
The MiKTeX consists of the following applications:
You can download the MiKTeX distribution from the CTAN(1) directory
systems/win32/miktex/
Here is a list of other packages you should take into consideration:
psmerge
) are Perl scripts. Therefore you will need Perl
if you want to use these utilities.
Visit the MiKTeX Project Page for information about new releases, patches and so on.
Claus Ekstroem from Denmark has created a discussion list for MiKTeX. To join this list, send an e-mail to <miktex-request@dsts.dk> which contains the word subscribe as the first line in the message body.
This list is archived at www.egroups.com.
The MiKTeX Manual (which you are reading right now) concentrates on documenting MiKTeX specific details.
The `doc' directory hierarchy contains user manuals for various applications.
The source archives (source*.zip
) were removed from the normal
distribution. They are now in the CTAN directory
systems/win32/miktex/source
.
c:\texmf
.
This directory receives the files of the MiKTeX distribution.
c:\localtexmf
.
Benefits that a local tree provides include the following:
e:
,
then it is possible to include e:\texmf
in the MiKTeX search path.
setupwiz.exe
).
The Setup Wizard does not change the PATH
variable, i.e. you have to
add something like
set PATH=%PATH%;c:\texmf\miktex\bin
to your autoexec.bat
.
There is no uninstall option (yet), so you must do it by hand if you decide to delete MiKTeX:
c:\texmf
)
includaing sub folders.
c:\localtexmf
)
including sub folders.
regedit
HKEY_LOCAL_MACHINE\SOFTWARE
and delete the
MiK
subkey.
HKEY_CURRENT_USER\Software
and delete the MiK
subkey.
PATH
.
The setup program creates a TDS-compliant directory hierarchy. Normally this hierarchy is distributed over two physical directory trees:
It's possible to redefine theses two directories anytime. See section Defining TEXMF Root Directories, for more information.
The Installation Directory (usually c:\texmf
) is the root of a
TDS-compliant directory hierarchy. If you have installed the complete
distribution, then the Installation Directory contains the following
sub-directories:
bibtex
, dvips
, makeindex
, ...
doc
fonts
miktex
miktex
directory is reserved for MiKTeX related files:
miktex\bin
miktex\config
miktex.ini
and the MiKTeX
font mapping file miktex.map
. The MiKTeX Setup Wizard installs
its own log file here.
miktex\base
mf.pool
.
miktex\fmt
etex.pool
, pdftex.pool
,
omega.pool
, tex.pool
.
miktex\mem
mp.pool
.
The Local Directory (usually c:\texmf
receives files that are
generated on-the-fly. For example, if the TeX compiler needs a TeX
Font Metric (TFM) file that is not available yet, then it creates that
file (if possible) and installs it in an appropriate sub-directory of
the Local Directory.
Typically the Local Directory contains the following sub-directories:
fonts
miktex\config
MiKTeX configuration parameters are stored in two configuration files:
miktex.ini
. It is located in the directory
miktex\config
relative to the installation root directory
(usually c:\texmf
).
initexmf
(see section Personal Configuration Files).
Personal configuration settings override global settings.
Search paths are used by MiKTeX to find special files (such as TeX input files) within a comprehensive directory hierarchy.
A search path is a semicolon-separated list of directory paths. This list is traversed from left to right, i.e. the first directory is searched first.
In a directory path, the following character seqeuences have a special meaning:
%R
//
Assuming that c:\texmf;\\myserver\texmf
is the list of TEXMF
root directories, the search path .;%R\tex\latex//;%R\tex\generic//
causes LaTeX to search its input files in the following locations:
.
).
c:\texmf\tex\latex
and in all directories below it.
\\myserver\texmf\tex\latex
and in all
directories below it.
c:\texmf\tex\generic
and in all directories below it
\\myserver\texmf\tex\generic
and in all
directories below it.
You can use the configuration utility initexmf
to test whether
an input file can be found via the current search path.
For example, the command
initexmf --find-latex-input a4.sty
searches for the LaTeX input file a4.sty
.
The full pathname is printed if the file was found.
A MiKTeX configuration file is divided into several named sections. Each section contains configuration settings for a specific application or feature.
The section [BibTeX]
contains BibTeX related configuration
settings.
Input Dirs
min_crossrefs
cite_list
inclusion.
The section [Dvips]
contains Dvips related configuration
settings.
CONFIGPath
config.ps
).
ENCPath
.enc
files.
GraphicsPath
.eps
files.
MAPPath
.map
files.
PSPath
The section [Graphics]
contains graphics conversion rules.
Each rule has the syntax
.fromext.toext=commandline
fromext is the filename extension of the source file. toext is the filename extension of the destination file. commandline is the command-line which does the conversion. The command-line may include the following placeholders:
%i
%o
The standard MiKTeX configuration file contains the following rules:
.gif.bmp=giftopnm %i | ppmtobmp -windows > %o .pcx.bmp=pcxtoppm %i | ppmtobmp -windows > %o .png.bmp=pngtopnm %i | ppmtobmp -windows > %o .tga.bmp=tgatoppm %i | ppmtobmp -windows > %o .tif.bmp=tifftopnm %i | ppmtobmp -windows > %o .tiff.bmp=tifftopnm %i | ppmtobmp -windows > %o
The section [Magic]
contains memory related configuration settings.
The values are used by TeX, pdfTeX and Omega for the dynamic
allocation of certain data structures.
The following parameters can be changed at run time to extend or reduce
TeX's capacity. They may have different values in INITEX
and
in production versions of TeX.
mem_min
mem
array; must be 0 or more;
must be equal to mem_bot
in INITEX
, otherwise <=mem_bot
.
mem_max
mem
array; must be strictly
less than 1073741823.
buf_size
\csname
and \endcsname
; must not exceed 1073741823.
error_line
half_error_line
error_line
- 15).
max_print_line
stack_size
max_in_open
font_max
font_mem_size
font_info
for all fonts.
param_size
nest_size
max_strings
string_vacancies
pool_size
string_vacancies
by the total
length of TeX's own strings, which is currently about 23000.
save_size
trie_size
INITEX
than it is in production versions of TeX.
trie_op_size
Like the preceding parameters, the following quantities can be changed
at run time to extend or reduce TeX's capacity. But if they are
changed, it is necessary to rerun the initialization program
INITEX
to generate new tables for the production TeX program.
One can't simply make helter-skelter changes to the following constants,
since certain rather complex initialization numbers are computed from
them.
mem_bot
INITEX
;
must not be less than mem_min
.
mem_top
INITEX
; must be substantially
larger than 0 and not greater than mem_max
.
The section [MakeIndex]
contains MakeIndex related configuration
settings.
INDEXSTYLE
The section [MakePK]
contains configuration settings that are
related to the auto-creation of packed raster fonts.
DestDir
%m
%d
%s
public
).
%t
cm
).
typeface.map
.
DestDir
.tfm
files are to be installed.
The specifiation may contain special character sequences which are
replaced at search-time:
%s
public
).
%t
cm
).
The section [METAFONT]
contains METAFONT related configuration
settings.
Input Dirs
The section [MetaPost]
contains MetaPost related configuration
settings.
Input Dirs
The section [MiKTeX]
contains general configuration settings
and search path specifications.
Trace
notrace
fndb
filesearch
access
process
tcx
error
TraceFile
AFMPath
*.afm
).
BASEPath
*.base
).
ENCPath
*.enc
files.
EXEPath
FMTPath
.fmt
). Also used to
locate e-TeX dump files (.efmt
).
GraphicsPath
*.eps;*.bmp;...
).
MAPPath
*.map
).
MEMPath
.mem
).
OFMPath
*.ofm
).
OVFPath
*.ovf
).
PKPath
*.pk
).
PSPath
*.enc;*.map
);
TCXPath
.tcx
).
TFMPath
*.tfm
).
TTFPath
*.ttc;*.ttf
).
Type1Path
*.pfa;*.pfb
).
VFPath
*.vf
).
The section [Omega]
contains Omega related configuration settings:
Input Dirs
OCPPath
otp2ocp
Configuration SettingsInput Dirs
otp2ocp
to locate OTP files (.otp
).
The section [pdfTeX]
contains pdfTeX related configuration settings.
Input Dirs
PSPath
ps2pk
Configuratio Settings
The section [ps2pk]
contains configuration settings for the
ps2pk
utility:
PSResPath
ps2pk
searches for PS resource files.
The section [TeX]
contains TeX-related configuration settings.
Editor
e
in the error menu.
You can use the following placeholders:
%f
%h
%l
%m
%t
winedt %f
-G(1,%l,0) -S(12,+1,0)
.
For NT Emacs, set Editor
to gnulientw -F +%l %f
.
Input Dirs
Input Dirs
*.dvi
).
initexmf.exe
is the MiKTeX configuration utility.
You can use it to
plain.fmt
and friends)
The standard setup procedure creates two TEXMF root directories:
c:\texmf
: the installation directory (see section Installation Directory).
c:\localtexmf
: the local directory (see section Local Directory).
You can redefine the TEXMF root directories by using the command-line switches
--root-directories
and --local-root
:
--root-directories=dirlist
--local-root=dir
It is necessary to refresh the filename-database whenever you redefine the TEXMF root directories (see section Maintaining the filename database).
To speed up file search, MiKTeX makes use of a list of known file names. This list is called the filename database (fndb). The fndb is spread over several fndb files, one for each TEXMF root directory.
The fndb file for the first TEXMF tree is called texmf0.fndb
.
For the second tree it is called texmf1.fndb
.
And so on.
It is strongly recommended that you update the fndb whenever files are added to or removed from one of the TEXMF trees.
You update all fndb files by invoking initexmf.exe
with
the command line switch --update-fndb
:
initexmf --update-fndb
You can update a certain fndb file by specifying the TEXMF root. For example,
initexmf --update-fndb=c:\texmf
will update the fndb file for the tree rooted at c:\texmf
.
The PostScript resource database (PSres) is used by some utilities in order to locate PostScript resources (font outlines/metrics/encodings).
The database is located in the MiKTeX config directory (usually `c:\texmf\miktex\config'). The name of the database file is `dpres.dpr'. It is a text file, so you can view it with a text editor (e.g. wordpad).
It is strongly recommended that you update the database whenever PostScript resources (`*.pfb;*.afm;*.enc') are added to or removed from one of the TEXMF trees.
You update the database files by invoking initexmf.exe
with
the command line switch --mkpsres
:
initexmf --mkpsres
It is possible to add non-MiKTeX font directories to the resource database.
The --mkpsres
switch accepts as an optional argument the name of
an external font directory.
You can use several --mkpsres
switches with on invocation of
initexmf
.
By specifying the command line flag --search
, you can cause
initexmf
to automatically search your workstation for third party
PS resource files (e.g. Acrobat Reader Fonts):
initexmf --mkpsres --search
Some programs initialize itself by reading parts of the memory from an external file. For the TeX family of programs, such a file is called a Dump File.
The MiKTeX configuration file has built-in rules for standard dump files.
Non-standard dump files (i.e. dump files not mentioned in this
section) must be created with the ini-version of the program.
For example, you would say `initex texinfo @dump' to produce
a Texinfo dump file (texinfo.fmt
).
You create standard dump files by invoking initexmf
with the command
line switch --dump
. This switch takes an optional argument,
which is the name of the program for which a new dump file is to be
created:
initexmf --dump[=program]
If program is ommited, then all standard dump files will be rebuilt. Otherwise, program must be one of the following names:
elatex
plain.efmt
which is used by elatex.exe
.
etex
plain.efmt
which is used by etex.exe
.
lambda
lambda.fmt
which is used by
lambda.exe
.
latex
latex.fmt
which is used by
latex.exe
.
tex
plain.fmt
which is used by tex.exe
.
metafont
plain.base
which is used by
mf.exe
(METAFONT).
metapost
plain.mem
which is used by
mpost.exe
(MetaPost).
omega
omega.fmt
which is used by
omega.exe
.
pdflatex
pdflatex.fmt
which is used by
pdflatex.exe
.
pdftex
pdftex.fmt
which is used by
pdftex.exe
.
You can control the loading of hyphenation patterns by modifying the
file language.dat
(say `initexmf --find-tex language.dat' to
find out the absolute path).
As distributed with MiKTeX, language.dat
has the following
contents:
% File : language.dat % Purpose : specify which hypenation patterns to load % while running iniTeX english ushyphen.tex %ukenglish ukhyphen.tex german ghyph31.tex %italian ithyph.tex %dutch nehyph2.tex %finnish fihyph.tex %norwegian nohyph.tex %french f8hyph.tex
Lines starting with %
are comments.
The only uncommented lines in the example are english ushyphen.tex
and german ghyph31.tex
.
That is, only hyphenation patterns for U.S. English and German
will be loaded by TeX.
To load other hyphenation patterns, you have to uncomment the
corresponding lines.
After modifying language.dat
, you have to create new LaTeX dump files
(see section Making Standard Dump Files).
You can cause MiKTeX to read a personal configuration file (in
addition to the global one) by using the command line switch
--personal
:
initexmf --personal[=FILENAME]
If specified, FILENAME must be the name of an existing configuration file. If FILENAME is ommitted, then MiKTeX will not use a personal configuration file.
Values read from FILENAME will override those values that were read from the global configuration file.
For example, consider the case that you have some private LaTeX style
files in you home directory (say c:\users\me
).
You could write a private configuration file (say miktex.ini
) and
place it in your home directory.
The configuration file should look like this:
[LaTeX] Input Dirs=.;c:\users\me//;%R\tex\latex//;%R\tex\generic//
Then you had to announce the configuration file this way:
initexmf --personal=c:\users\me\miktex.ini
As distributed with MiKTeX, Dvips is configured as follows:
ljfour
(HP
Laserjet 4).
You probably have to change some of theses settings for your site. To
do so, open the Dvips configuration file config.ps
with your
favourite text editor.
The line starting with M
specifies the METAFONT mode which Dvips
uses for the generation of new raster fonts.
Enter a suitable mode here.
If you don't know the mode for your output device, then take a
look at metafont\misc\modes.mf
.
This file contains an annotated list of METAFONT modes.
The line starting with D
specifies the resolution.
Enter a value that matches your printer.
See the Dvips manual, for more information about configuring Dvips.
The following command-line switches are commonly supported by the TeX compilers, i.e. by TeX, Omega, pdfTeX and e-TeX:
--buf-size=n
buf_size
to n. buf_size
is the
maximum number of characters simultaneously present in current lines of
open files and in control sequences between \csname
and
\endcsname
; must not exceed 1073741823.
--c-style-errors
\scrollmode
.
--error-line=n
error_line
to n. error_line
us the
width of context lines on terminal error messages.
--half-error-line=n
half_error_line
to n.
half_error_line
is the width of first lines of contexts in
terminal error messages; should be between 30 and (error_line
-
15).
--halt-on-error
--initialize
\dump
ed to a
dump file.
--job-name=name
--job-time=filename
--help
--max-in-open=n
max_in_open
to n. max_in_open
is
the maximum number of input files and error insertions that can be going
on simultaneously.
--max-print-line=n
max-print-line
to n.
max-print-line
is the width of longest text lines output; should
be at least 60.
--max-strings=n
max_strings
to n. max_strings
is
the maximum number of strings; must not exceed 1073741823.
--mem-bot=n
mem_bot
to n. mem_bot
is the
smallest index in the code
array dumped by INITEX
(INIOMEGA
, INIPDFTEX
); must not be less than
mem_min
.
--mem-max=n
mem_max
to n. mem_max
is the
greatest index in the internal mem
array; must be strictly less
than 1073741823.
--mem-min=n
mem_min
to n. mem_min
is the
smallest index in the internal mem
array; must be 0 or more; must
be equal to mem_bot
in INITEX
(INIOMEGA
,
INIPDFTEX
), otherwise <= mem_bot
.
--mem-top=n
mem_top
to n. mem_top
is the
largest index in the mem
array dumped by INITEX
(INIOMEGA
, INIPDFTEX
); must be substantially larger than 0
and not greater than mem_max
.
--nest-size=n
nest_size
to n. nest_size
is the
maximum number of semantic levels simultaneously active.
--param-size=n
param_size
to n. param_size
is the
maximum number of simultaneous macro parameters.
--pool-size=n
pool-size
to n. pool_size
is the
maximum number of characters in strings, including all error messages
and help texts, and the names of all fonts and control sequences; must
exceed string_vacancies
by the total length of the program's own
strings, which is currently about 30000.
--save-size=n
save_size
to n. save_size
is the
amount of space for saving values outside of current group; must be at
most 1073741823.
--src-specials
--stack-size=n
stack_size
to n. stack_size
is the
maximum number of simultaneous input sources.
--string-vacancies=n
string_vacancies
to n.
string_vacancies
is the minimum number of characters that should
be available for the user's control sequences and font names, after the
program's own error messages are stored.
--tcx=name
--terminal=oem
--trace=traceflags
--trie-size=n
trie_size
to n. trie_size
is the
amount of space for hyphenation patterns; should be larger for
INITEX
(INIOMEGA
, INIPDFTEX
) than it is in
production versions of the program.
--trie-op-size=n
trie_op_size
to n. trie_op_size
is
the amount of space for "opcodes" in the hyphenation patterns.
--try-gz
.tex.gz
if file.tex
cannot be found.
--undump=name
--version
initexmf
initexmf
is the MiKTeX Configuration Utility.
--dump
*.base
;*.efmt
;*.fmt
;*.mem
).
--dump=program
elatex
,
etex
,
lambda
,
latex
,
metafont
,
metapost
,
omega
,
pdflatex
,
pdftex
,
tex
.
--find-elatex-input FILE
--find-etex-input FILE
--find-lambda-input FILE
--find-latex-input FILE
--find-metafont-input FILE
--find-metapost-input FILE
--find-omega-input FILE
--find-pdflatex-input FILE
--find-pdftex-input FILE
--find-tex-input FILE
--list-modes
--local-root root
--mkpsres
--search
(see below).
--mkpsres=`dir'
--personal
-p
--personal=FILENAME
-pFILENAME
--print-only
-n
--reconfigure
--report
--root-directories dirlist
-r dirlist
--search
--mkpsres
).
--update-fndb
-u
--update-fndb=root
-uroot
--verbose
-v
--version
-V
mp
mp
is the MetaPost compiler. The general command-line syntax is
mp [switches...] [filename]
--c-style-errors
\scrollmode
.
--initialize
--help
--tex=texprogram
tex
when compiling text labels.
This flag overrides the environment variable TEX
.
--version
inimp
mp --ini
.
TEX
omega
Omega is an 16-bit enhanced version of TeX.
The general command-line syntax is
omega [switches] [firstinputline]
firstinputline, if supplied, specifies the first input line. This is usually the name of an input file.
For example, the command
omega hello.tex
causes Omega to produce the DVI file hello.dvi
from the input
file hello.tex
.
You can specify the input file without the .tex
extension:
omega hello
You must specify the .tex
extension if the filename contains more
than one dot (.
). For example, it does not work to say
omega foo.bar
You have to say
omega foo.bar.tex.
instead.
Please note: you cannot specify file names that contain space characters, even if the file system allows such names.
Omega supports the common compiler options (see section Common Compiler Options).
iniomega
omega --ini
.
viromega
omega
.
lambda
omega "&lambda"
.
pdftex
pdfTeX is a special version of TeX that outputs PDF.
The usual way to start pdfTeX is as follows:
pdftex [options] [firstinputline]
firstinputline, if supplied, specifies the first input line. This is usually the name of an input file.
For example, the command
pdftex hello.tex
causes pdfTeX to produce the PDF file hello.pdf
from the input
file hello.tex
.
You can specify the input file without the .tex
extension:
pdftex hello
You must specify the .tex
extension if the filename contains more
than one dot (.
). For example, it does not work to say
pdftex foo.bar
You have to say
pdftex foo.bar.tex.
instead.
Please note: you cannot specify file names that contain space characters, even if the file system allows such names.
Besides the common switches (see section Common Compiler Options), pdfTeX supports these command-line switches:
--font-max=n
font_max
to n. font_max
is the
maximum internal font number; must not exceed 5000.
inipdftex
pdftex --ini
.
virpdftex
pdftex
.
pdflatex
pdftex "&pdflatex"
.
tex
The usual way to start TeX is as follows:
tex options firstinputline
firstinputline, if supplied, specifies the first input line. This is usually the name of an input file.
For example, the command
tex hello.tex
causes TeX to produce the DVI file hello.dvi
from the input
file hello.tex
.
You can specify the input file without the .tex
extension:
tex hello
You must specify the .tex
extension if the filename contains more
than one dot (.
). For example, it does not work to say
tex foo.bar
You have to say
tex foo.bar.tex.
instead.
Please note: you cannot specify file names that contain space characters, even if the file system allows such names.
Besides the common switches (see section Common Compiler Options), TeX supports the following command-line switches:
--font-max=n
font_max
to n. font_max
is the
maximum internal font number; must not exceed 5000.
latex
tex "&latex"
.
initex
tex --ini
.
Jump to: % - \ - a - b - c - d - e - f - g - h - i - l - m - n - o - p - r - s - t - u - v - w
CTAN: Comprehensive TeX Archive Network
This document was generated on 13 April 1999 using texi2html 1.56k.