1LUATEX(1) Web2C 2012 LUATEX(1)
2
3
4
6 luatex, texlua, texluac - An extended version of pdfTeX using Lua as an
7 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, embeded 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 commandline
51 option. If there is no --lua option, the commandline is interpreted in
52 a similar fashion as in traditional pdfTeX and Aleph. But if the option
53 is present, LuaTeX will enter an alternative mode of commandline pars‐
54 ing in comparison to the standard web2c programs. The presence of --lua
55 makes most of other options unreliable, because the lua initialization
56 file can disable kpathsea and/or hook functions into various callbacks.
57
58 --lua=FILE
59 The lua initialization file.
60
61 The following two options alter the executable behaviour:
62
63 --luaonly
64 Start LuaTeX as a Lua interpreter. In this mode, it will set
65 Lua's arg[0] to the found script name, pushing preceding options
66 in negative values and the rest of the commandline in the posi‐
67 tive values, just like the Lua interpreter. LuaTeX will exit
68 immediately after executing the specified Lua script.
69
70 --luaconly
71 Start LuaTeX as a Lua byte compiler. In this mode, LuaTeX is
72 exactly like luac from the standalone Lua distribution, except
73 that it does not have the -l switch, and that it accepts (but
74 ignores) the --luaconly switch.
75
76 Then the regular web2c options:
77
78 --debug-format
79 Debug format loading.
80
81 --draftmode
82 Sets \pdfdraftmode so luaTeX doesn't write a PDF and doesn't
83 read any included images, thus speeding up execution.
84
85 --enable-write18
86 Synonym for --shell-escape.
87
88 --disable-write18
89 Synonym for --no-shell-escape.
90
91 --shell-escape
92 Enable the \write18{command} construct, and Lua functions
93 os.execute(), os.exec(), os.spawn(), and io.popen(). The com‐
94 mand can be any shell command. This construct is normally dis‐
95 allowed for security reasons.
96
97 --no-shell-escape
98 Disable the \write18{command} construct and the other Lua func‐
99 tions, even if it is enabled in the texmf.cnf file.
100
101 --shell-restricted
102 Enable restricted version of \write18, os.execute(), os.exec(),
103 os.spawn(), and io.popen(), only commands listed in texmf.cnf
104 file are allowed.
105
106 --file-line-error
107 Print error messages in the form file:line:error which is simi‐
108 lar to the way many compilers format them.
109
110 --no-file-line-error
111 Disable printing error messages in the file:line:error style.
112
113 --fmt=FORMAT
114 Use FORMAT as the name of the format to be used, instead of the
115 name by which luaTeX was called or a %& line.
116
117 --help Print help message and exit.
118
119 --ini Start in INI mode, which is used to dump formats. The INI mode
120 can be used for typesetting, but no format is preloaded, and
121 basic initializations like setting catcodes may be required.
122
123 --interaction=MODE
124 Sets the interaction mode. The MODE can be either batchmode,
125 nonstopmode, scrollmode, and errorstopmode. The meaning of
126 these modes is the same as that of the corresponding \commands.
127
128 --jobname=NAME
129 Use NAME for the job name, instead of deriving it from the name
130 of the input file.
131
132 --kpathsea-debug=BITMASK
133 Sets path searching debugging flags according to the BITMASK.
134 See the Kpathsea manual for details.
135
136 --mktex=FMT
137 Enable mktexFMT generation, where FMT must be either tex or tfm.
138
139 --nosocket
140 Disable the luasocket (network) library.
141
142
143 --output-comment=STRING
144 In DVI mode, use STRING for the DVI file comment instead
145 of the date. This option is ignored inPDF mode.
146
147 --output-directory=DIRECTORY
148 Write output files in DIRECTORY instead of the current
149 directory. Look up input files in DIRECTORY first, then
150 along the normal search path.
151
152 --output-format=FORMAT
153 Set the output format mode, where FORMAT must be either
154 pdf or dvi. This also influences the set of graphics
155 formats understood by luaTeX.
156
157 --progname=NAME
158 Pretend to be program NAME (only for kpathsea).
159
160 --recorder
161 Enable the filename recorder. This leaves a trace of the
162 files opened for input and output in a file with exten‐
163 sion .fls.
164
165 --safer
166 Disable some Lua commands that can easily be abused by a
167 malicious document.
168
169 --synctex=NUMBER
170 Enable/disable SyncTeX extension.
171
172 --version
173 Print version information and exit.
174
175 --credits
176 Print credits and version details.
177
178 The following options are ignored:
179
180 --8bit, --etex, --parse-first-line, --no-parse-first-line
181 These are always on.
182
183 --default-translate-file=TCXNAME, --translate-file=TCXNAME
184 These are always off.
185
186
188 pdftex(1), etex(1), aleph(1), omega(1), lua(1).
189
191 The primary authors of LuaTeX are Hartmut Henkel, Taco Hoekwa‐
192 ter, and Hans Hagen, with help from Martin Schröder, Karel
193 Skoupy, and Han The Thanh.
194
195 TeX was designed by Donald E. Knuth, who implemented it using
196 his Web system for Pascal programs. It was ported to Unix at
197 Stanford by Howard Trickey, and at Cornell by Pavel Curtis. The
198 version now offered with the Unix TeX distribution is that gen‐
199 erated by the Web to C system (web2c), originally written by
200 Tomas Rokicki and Tim Morgan.
201
202
203
204luatex 0.70 12 April 2011 LUATEX(1)