miktex-tex — text formatting and typesetting
miktex-tex [option...] [[file] | [\command...]]
This man page is an adaption of the corresponding TeX Live man page.
Run the TeX typesetter on file,
usually creating
. If the file
argument has no extension, file.dvi.tex will be appended
to it. Instead of a filename, a set of TeX commands can be given,
the first of which must start with a backslash. With a
&format argument TeX uses a different set of
precompiled commands, contained in
; it is
usually better to use the
format.fmt-undump= option
instead.format
TeX formats the interspersed text and commands contained in the named files and outputs a typesetter independent file (called DVI, which is short for DeVice Independent). TeX's capabilities and language are described in The TeXbook. TeX is normally used with a large body of precompiled macros, and there are several specific formatting systems, such as LaTeX, which require the support of several macro files.
This version of TeX looks at its command-line to see what name
it was called under. Both initex and virtex are links to the
miktex-tex executable. When called as initex (or when the
-initialize option is given) it can be used to
precompile macros into a .fmt file. When called
as virtex it will use the plain format. When called under any other
name, TeX will use that name as the name of the format to use. For
example, when called as miktex-tex the tex
format is used, which is identical to the plain format. The commands
defined by the plain format are documented in The
TeXbook. Other formats that are often available include
latex and amstex.
The non-option command line argiments to the TeX program are
passed to it as the first input line. (But it is often easier to type
extended arguments as the first input line, since shells tend to
gobble up or misinterpret TeX's favorite symbols, like backslashes,
unless you quote them.) As described in The
TeXbook, that first line should begin with a file name,
a \controlsequence, or a
&formatname.
The normal usage is to say miktex-tex
paper to start processing paper.tex.
The name paper will be the
“jobname”, and is used in forming output file names. If
TeX doesn't get a file name in the first line, the job name is
texput. When looking for a file, TeX looks for
the name with and without the default extension
(.tex) appended, unless the name already contains
that extension. If paper is the “jobname”, a log of
error messages, with rather more detail than normally appears on the
screen, will appear in paper.log, and the output
file will be in paper.dvi.
This version of TeX will look in the first line of the file
paper.tex to see if it begins with the magic
sequence %&. If the first line begins with
%&format --translate-file tcxname, then
TeX will use the named format and transation table
tcxname to process the source file. Either
the format name or the --translate-file specification
may be omitted, but not both. This overrides the format selection
based on the name by which the program is invoked. The
-parse-first-line option or the parse_first_line configuration value
controls whether this behaviour is enabled.
The e response to TeX's error-recovery
prompt causes the default editor to start up at the current line of
the current file. The configuration value [Core]Editor can be used to change the
editor used. It may contain a string with %f
indicating where the file name goes and %l
indicating where the decimal line number (if any) goes. For example,
an [Core]Editor string for
emacs can be set with the command
>initexmf --set-config-value="[Core]Editor=emacs +%l %f"
A convenient file is null.tex, containing
nothing. When TeX can't find a file it thinks you want to input, it
keeps asking you for another file name; responding
null gets you out of the loop if you don't want
to input anything. You can also type your EOF
character (usually Control+Z).
--alias=namePretend to be program name,
i.e., set program (and memory dump) name to
name.
This may affect the search paths and other values used. Using this
option is equivalent to copying the program file to
and invoking
name.name
--aux-directory=dirSet dir as the directory to
which
auxiliary files are written. Also look for input files in
dir first, before along the normal search
path.
--buf-size=nSet the the maximum number of characters simultaneously present in current lines of open files and in control sequences between \csname and \endcsname. TeX uses the buffer to contain input lines, but macro expansion works by writing material into the buffer and reparsing the line. As a consequence, certain constructs require the buffer to be very large, even though most documents can be handled with a small value.
--c-style-errorsChange the way, error messages are printed. The alternate style looks like error messages from many compilers and is easier to parse for some editors.
--disable-8bit-charsMake only 7-bit characters printable.
--disable-installerDisable automatic installation of packages. Specifying this option overrules settings in the MiKTeX configuration data store.
--disable-pipes--disable-write18Disable the \write18{command}
construct.
--dont-parse-first-lineDisable checking whether the first line of the main input file starts with %&.
--enable-8bit-charsMake all characters printable.
--enable-enctexEnable encTeX extensions such as \mubyte.
--enable-installerEnable automatic installation of packages. Specifying this option overrules settings in the MiKTeX configuration data store.
--enable-mltexEnable MLTeX extensions such as \charsubdef.
--enable-pipes--enable-write18Fully enable the \write18{command}
construct. It is only partially enabled by default to avoid security
problems. When fully enabled, the command (which undergoes the usual
TeX expansions) is passed to the command interpreter. The output of
the command is not diverted anywhere, so it will not appear in the log
file. The command execution either happens at \output time or right away, according to the
absence or presence of the \immediate
prefix.
--error-line=n--extra-mem-bot=nSet the extra size (in memory words) for large data structures like boxes, glue, breakpoints, et al. Relevant only after the memory dump file has been read.
--extra-mem-top=nSet the extra size (in memory words) for chars, tokens, et al. Relevant only after the memory dump file has been read.
--font-max=n--font-mem-size=n--half-error-line=nSet the width of first lines of contexts in terminal error messages.
--halt-on-error--hash-extra=nSet the extra space for the hash table of control sequences (which allows 10K names as distributed).
--helpGive help and exit.
--hhelpThis option is only available on Windows systems: show the manual page in an HTML Help window and exit when the window is closed.
--include-directory=dirAdd the directory dir to the
head of the list of directories to be searched for input
files.
--initialize--interaction=modeSet the interaction mode.
Must be one of batchmode,
nonstopmode, scrollmode and
errorstopmode. The meaning of these modes is the
same as the corresponding commands.
--job-name=nameSet the name of the job (\jobname). This has an affect on the output file names.
--job-time=fileSet the time-stamp of all output files equal to
file's time-stamp.
--main-memory=nChange the total size (in memory words) of the main memory array. Relevant only while creating memory dump files.
--max-in-open=nSet the maximum number of input files and error insertions that can be going on simultaneously.
--max-print-line=nSet the
width of longest text lines output; should be at least
60.
--max-strings=n--nest-size=nSet the maximum number of semantic levels simultaneously active.
--no-c-style-errors--output-directory=dirWrite output files in dir.
instead of the current directory. Look up input files in
dir first, then along the normal search
path.
--param-size=nSet the the maximum number of simultaneous macro parameters.
--parse-first-lineCheck whether the first line of the main input file starts with %&, and parse if it does. This can be used to specify extra command-line options.
--pool-free=n--pool-size=nSet the maximum number of characters in strings, including all error messages and help texts, and the names of all fonts and control sequences.
--quietSuppress all output, except errors.
--record-package-usages=file--recorderEnable the file name recorder. This leaves a trace of the files
opened for input and output in a file
with the extension .fls.
--restrict-write18Partially enable the \write18{command}
construct.
--save-size=nSet the the amount of space for saving values outside of current group.
--src-specialsEmbed source file information (source specials) in the DVI file.
--stack-size=n--string-vacancies=nSet the minimum
number of characters that should be available for the user's control
sequences and font names, after the compiler's own error messages are
stored. Must be at least 25000 less than
pool_size, but doesn't need to be nearly that
large.
--tcx=tcxnameUse the tcxname translation table to
set the mapping of input characters and re-mapping of output
characters.
--time-statistics--trace[=tracestreams]Enable trace messages.
The tracestreams argument, if specified, is
a comma-separated list of trace stream names (Chapter 9, Trace Streams).
--trie-size=n--undump=nameUse name as the name of the format to
be used, instead of the name by which the program was called or a
%&
line.
--versionShow version information and exit.
MIKTEX_EDITORThe editor to use when selecting e in the error prompt menu.
The value can contain these placesholder:
%fThe name of the file, which contains the erroneous line of TeX code.
%lThe line number.
MIKTEX_TRACEComma-separated list of trace stream names (see Chapter 9, Trace Streams). If this variable is set, then MiKTeX programs will write trace messages into the configured log sink.
TEXINPUTSExtra paths to locate TeX \input and \openin files.
TFMFONTSExtra paths to locate TeX font metric files
This version of TeX implements a number of optional extensions. In fact, many of these extensions conflict to a greater or lesser extent with the definition of TeX. This version of TeX fails to trap arithmetic overflow when dimensions are added or subtracted. Cases where this occurs are rare, but when it does the generated DVI file will be invalid.