MIKTEX-LUATEX(1)
π MIKTEX-LUATEX π
okay bestie, buckle up β this is miktex-luatex from the User Commands corner of the MiKTeX manual, and it's genuinely iconic. This page is an adaption of the corresponding TeX Live man page, so credit where credit's due π«Ά
β¨ SYNOPSIS β¨
miktex-luatex [option...] [[command...] | [file]]
πΈ DESCRIPTION πΈ
So basically: run the LuaTeX typesetter on file, and it usually creates file.pdf. Any commands left over after that get processed as LuaTeX input, right after file is read. slay.
Alternatively β plot twist β if the first non-option argument starts with a backslash, then all the non-option arguments get interpreted as a single line of LuaTeX input. no cap.
Alternatively again π¦ if the first non-option argument starts with a &, the next word is taken as the format to read, and it overrides everything else. Any remaining arguments are processed the same way as above.
And if you give it no arguments and no options at all? It just prompts you for input. main character energy tbh.
If it's called as miktex-texlua, it acts as a Lua interpreter. If it's called as miktex-texluac, it acts as a Lua bytecode compiler. shapeshifter behavior π
LuaTeX is an extended version of pdfTeX with Unicode and OpenType font support, an embeded Lua scripting language, the eTeX and Omega extensions, plus an integrated MetaPost engine β and it can create PDF files as well as DVI files. For more info about LuaTeX, see http://www.luatex.org, and you can read the LuaTeX manual using the MiKTeX Help Utility (mthelp luatex). obsessed.
All LuaTeX text input and output is considered to be Unicode text. periodt.
In DVI mode, LuaTeX can be used as a complete replacement for the TeX engine. π
In PDF mode, LuaTeX can natively handle the PDF, JPG, JBIG2, and PNG graphics formats. But β and this is important, bestie π β LuaTeX cannot include PostScript or Encapsulated PostScript (EPS) graphics files; first convert them to PDF using miktex-epstopdf(1).
π heads up: EPS in, nothing out. convert first, thank me later.
π OPTIONS π
When the LuaTeX executable starts up, it looks for the --lua commandline option. If there's no --lua option, the commandline is interpreted in a similar fashion as in traditional pdfTeX. But if that option is there, LuaTeX enters an alternative mode of commandline parsing compared to the standard MiKTeX programs. And here's the tea: the presence of --lua makes most of the other options unreliable, because the Lua initialization file can disable path searching and/or hook functions into various callbacks. π
--lua=fileβ Load and execute a initialization script.
The following two options alter the executable behaviour:
--luaonlyβ Start LuaTeX as a Lua interpreter. In this mode, it will set Lua'sarg[0]to the found script name, pushing preceding options in negative values and the rest of the commandline in the positive values, just like the Lua interpreter. LuaTeX will exit immediately after executing the specified Lua script.--luaconlyβ Start LuaTeX as a Lua byte compiler. In this mode, LuaTeX is exactly likeluacfrom the standalone Lua distribution, except that it does not have theβlswitch, and that it accepts (but ignores) theββluaconlyswitch.
Then the regular options:
--alias=nameβ Pretend 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 name and invoking name.--aux-directory=dirβ Set dir as the directory to which auxiliary files are written. Also look for input files in dir first, before along the normal search path.--c-style-errorsβ Change the way error messages are printed. The alternate style looks like error messages from many compilers and is easier to parse for some editors.--creditsβ Display credits and exit.--debug-formatβ Enable format debugging.--disable-installerβ Disable automatic installation of packages. Specifying this option overrules settings in the MiKTeX configuration data store.--disable-write18β Disable the\write18{command}construct.--draftmodeβ Switch on draft mode. luaTeX; doesn't write a PDF and doesn't read any included images, thus speeding up execution. β‘--enable-installerβ Enable automatic installation of packages. Specifying this option overrules settings in the MiKTeX configuration data store.--enable-write18β Fully 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\outputtime or right away, according to the absence or presence of the\immediateprefix.--halt-on-errorβ Quit after the first error.--helpβ Give help and exit.--include-directory=dirβ Add the directory dir to the head of the list of directories to be searched for input files.--initializeβ Become the INI variant of the program.--interaction=modeβ Set the interaction mode. Must be one ofbatchmode,scrollmodeanderrorstopmode. The meaning of these modes is the same as the corresponding commands.--job-name=nameβ Set the name of the job (\jobname). This has an affect on the output file names.--mktex=fmtβ Enable fmt generation, where fmt must be eithertexortfm.--no-c-style-errorsβ Don't change the way error messages are printed.--no-mktex=fmtβ Disable fmt generation, where fmt must be eithertexortfm.--nosocketβ Disable the Lua socket library.--output-comment=stringβ Use string for DVI file comment instead of date.--output-directory=dirβ Write output files in dir instead of the current directory. Look up input files in dir first, then along the normal search path.--output-format=formatβ Use format for job output (one of:dvi,pdf).--recorderβ Enable the file name recorder. This leaves a trace of the files opened for input and output in a file with the extension.fls.--restrict-write18β Partially enable the\write18{command}construct.--saferβ Disable easily exploitable Lua commands.--synctex=nβ Generate SyncTeX data for previewers. If n is zero, no.synctexfile is created. If n is negative, the.synctexfile is a text file. If n is positive, the.synctexfile is compressed with gzip and the.gzfile name extension is added. Furthermore, n is interpreted as a bit field:- Bit 1 (n AND 2) β Don't add the
.gzfile name extension. - Bit 2 (n AND 4) β Activate form support.
- Bit 3 (n AND 8) β Activate better compression.
- Bit 1 (n AND 2) β Don't add the
--undump=nameβ Use name as the name of the format to be used, instead of the name by which the program was called or a
%&
line.
--utcβ Init time to UTC.--versionβ Show version information and exit.
The following options are ignored: ββ8bit, ββetex, ββparseβfirstβline, ββnoβparseβfirstβline
These are always on: ββdefaultβtranslateβfile=tcxname, ββtranslateβfile=tcxname
These are always off.
π¦ ENVIRONMENT π¦
MIKTEX_EDITORβ The editor to use when selectingein the error prompt menu. The value can contain these placesholder:%fβ The name of the file, which contains the erroneous line of TeX code.%lβ The line number.
MIKTEX_TRACEβ Comma-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.
π SEE ALSO π
miktex-epstopdf(1), miktex-pdftex(1)
β¨ that's the whole vibe, bestie β¨ this glorious page is brought to you by MiKTeX 25.12, dated December 29, 2025 β go forth and typeset, you absolute icon π ππ«Ά
π¦ where this page comes from
- nixos 26.05: miktex 25.12
- nixpkgs unstable: miktex 25.12
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms