1LUATEX(1) General Commands Manual LUATEX(1)
2
3
4
6 luatex, dviluatex, luajittex, texlua, texluac - An extended version of
7 pdfTeX using Lua as an embedded scripting language
8
10 luatex [--lua=FILE] [OPTION]... [TEXNAME[.tex]] [COMMANDS]
11 luatex [--lua=FILE] [OPTION]... \FIRST-LINE
12 luatex [--lua=FILE] [OPTION]... &FMT [ARGS]
13
15 Run the luaTeX typesetter on TEXNAME, usually creating TEXNAME.pdf.
16 Any remaining COMMANDS are processed as luaTeX input, after TEXNAME is
17 read.
18
19 Alternatively, if the first non-option argument begins with a back‐
20 slash, interpret all non-option arguments as a line of luaTeX input.
21
22 Alternatively, if the first non-option argument begins with a &, the
23 next word is taken as the FMT to read, overriding all else. Any remain‐
24 ing arguments are processed as above.
25
26 If no arguments or options are specified, prompt for input.
27
28 If called as texlua it acts as lua interpreter. If called as texluac
29 it acts as lua bytecode compiler.
30
31 LuaTeX is an extended version of pdfTeX with Unicode and OpenType font
32 support, embedded Lua scripting language, the e-TeX and Omega exten‐
33 sions, as well as integrated MetaPost engine, that can create PDF files
34 as well as DVI files. For more information about luatex, see
35 http://www.luatex.org, you can read LuaTeX manual using texdoc utility
36 (texdoc luatex).
37
38 All LuaTeX text input and output is considered to be Unicode text.
39
40 In DVI mode, luaTeX can be used as a complete replacement for the TeX
41 engine.
42
43 In PDF mode, luaTeX can natively handle the PDF, JPG, JBIG2, and PNG
44 graphics formats. luaTeX cannot include PostScript or Encapsulated
45 PostScript (EPS) graphics files; first convert them to PDF using
46 epstopdf (1).
47
48
50 When the LuaTeX executable starts, it looks for the --lua command-line
51 option. If there is no --lua option, the command line is interpreted
52 in a similar fashion as in traditional pdfTeX and Aleph. But if the
53 option is present, LuaTeX will enter an alternative mode of command-
54 line parsing in comparison to the standard web2c programs. The presence
55 of --lua makes most of other options unreliable, because the lua ini‐
56 tialization file can disable kpathsea and/or hook functions into vari‐
57 ous callbacks.
58
59 --lua=FILE
60 The lua initialization file.
61
62 The following two options alter the executable behaviour:
63
64 --luaonly
65 Start LuaTeX as a Lua interpreter. In this mode, it will set
66 Lua's arg[0] to the found script name, pushing preceding options
67 in negative values and the rest of the command line in the posi‐
68 tive values, just like the Lua interpreter. LuaTeX will exit
69 immediately after executing the specified Lua script.
70
71 --luaconly
72 Start LuaTeX as a Lua byte compiler. In this mode, LuaTeX is
73 exactly like luac from the standalone Lua distribution, except
74 that it does not have the -l switch, and that it accepts (but
75 ignores) the --luaconly switch.
76
77 Then the regular web2c options:
78
79 --debug-format
80 Debug format loading.
81
82 --draftmode
83 Sets \pdfdraftmode so luaTeX doesn't write a PDF and doesn't
84 read any included images, thus speeding up execution.
85
86 --enable-write18
87 Synonym for --shell-escape.
88
89 --disable-write18
90 Synonym for --no-shell-escape.
91
92 --shell-escape
93 Enable the \write18{command} construct, and Lua functions
94 os.execute(), os.exec(), os.spawn(), and io.popen(). The com‐
95 mand can be any shell command. This construct is normally dis‐
96 allowed for security reasons.
97
98 --no-shell-escape
99 Disable the \write18{command} construct and the other Lua func‐
100 tions, even if it is enabled in the texmf.cnf file.
101
102 --shell-restricted
103 Enable restricted version of \write18, os.execute(), os.exec(),
104 os.spawn(), and io.popen(), only commands listed in texmf.cnf
105 file are allowed.
106
107 --file-line-error
108 Print error messages in the form file:line:error which is simi‐
109 lar to the way many compilers format them.
110
111 --no-file-line-error
112 Disable printing error messages in the file:line:error style.
113
114 --fmt=FORMAT
115 Use FORMAT as the name of the format to be used, instead of the
116 name by which luaTeX was called or a %& line.
117
118 --help Print help message and exit.
119
120 --ini Start in INI mode, which is used to dump formats. The INI mode
121 can be used for typesetting, but no format is preloaded, and
122 basic initializations like setting catcodes may be required.
123
124 --interaction=MODE
125 Sets the interaction mode. The MODE can be either batchmode,
126 nonstopmode, scrollmode, and errorstopmode. The meaning of
127 these modes is the same as that of the corresponding \commands.
128
129 --jobname=NAME
130 Use NAME for the job name, instead of deriving it from the name
131 of the input file.
132
133 --kpathsea-debug=BITMASK
134 Sets path searching debugging flags according to the BITMASK.
135 See the Kpathsea manual for details.
136
137 --mktex=FMT
138 Enable mktexFMT generation, where FMT must be either tex or tfm.
139
140 --nosocket
141 Disable the luasocket (network) library.
142
143
144 --output-comment=STRING
145 In DVI mode, use STRING for the DVI file comment instead
146 of the date. This option is ignored inPDF mode.
147
148 --output-directory=DIRECTORY
149 Write output files in DIRECTORY instead of the current
150 directory. Look up input files in DIRECTORY first, then
151 along the normal search path.
152
153 --output-format=FORMAT
154 Set the output format mode, where FORMAT must be either
155 pdf or dvi. This also influences the set of graphics
156 formats understood by luaTeX.
157
158 --progname=NAME
159 Pretend to be program NAME (only for kpathsea).
160
161 --recorder
162 Enable the filename recorder. This leaves a trace of the
163 files opened for input and output in a file with exten‐
164 sion .fls.
165
166 --safer
167 Disable some Lua commands that can easily be abused by a
168 malicious document.
169
170 --synctex=NUMBER
171 Enable/disable SyncTeX extension.
172
173 --version
174 Print version information and exit.
175
176 --credits
177 Print credits and version details.
178
179 The following options are ignored:
180
181 --8bit, --etex, --parse-first-line, --no-parse-first-line
182 These are always on.
183
184 --default-translate-file=TCXNAME, --translate-file=TCXNAME
185 These are always off.
186
187
189 pdftex(1), etex(1), aleph(1), lua(1).
190
192 The primary authors of LuaTeX are Taco Hoekwater, Hartmut
193 Henkel, Hans Hagen, and Luigi Scarso, with help from Martin
194 Schröder, Karel Skoupy, and Han The Thanh.
195
196 TeX was designed by Donald E. Knuth, who implemented it using
197 his Web system for Pascal programs. It was ported to Unix at
198 Stanford by Howard Trickey, and at Cornell by Pavel Curtis. The
199 version now offered with the Unix TeX distribution is that gen‐
200 erated by the Web to C system (web2c), originally written by
201 Tomas Rokicki and Tim Morgan.
202
203 The LuaTeX home page is http://luatex.org.
204
205
206
207Web2C 2019 27 May 2018 LUATEX(1)