global texconfig
This is a table that is created empty. A startup Lua script could fill this table with a number of settings that are read out by the executable after loading and executing the startup file.
😱 Types incomplete or incorrect? 🙏 Please contribute!
fields
texconfig.kpse_init
false
totally disables \KPATHSEA\ initialisation, and enables
interpretation of the following numeric key--value pairs. (only ever unset
this if you implement {\it all\/} file find callbacks!)
shell_escape
string 'f'
Use 'y'
or 't'
or '1'
to enable \write18
unconditionally, 'p'
to enable the commands that are listed in shell_escape_commands
shell_escape_commands string Comma-separated list of command
names that may be executed by \write18
even if shell_escape
is set to 'p'
. Do {\it not\/} use spaces around commas, separate any
required command arguments by using a space, and use the \ASCII\ double quote
("
) for any needed argument or path quoting
texconfig.string_vacancies
Minimum pool space after TeX's own strings; must be at least 25000 less than pool_size, but doesn't need to be nearly that large.
Reference:
texconfig.pool_free
Min pool space left after loading .fmt.
Reference:
texconfig.max_strings
Maximum number of strings.
Reference:
texconfig.strings_free
Ensure at least this many strings are free after loading .fmt.
Reference:
texconfig.nest_size
simultaneous semantic levels (e.g., groups)
Reference:
texconfig.max_in_open
simultaneous input files and error insertions, also applies to MetaPost
Reference:
texconfig.param_size
simultaneous macro parameters, also applies to MP
Reference:
texconfig.save_size
for saving values outside current group
Reference:
texconfig.stack_size
simultaneous input sources
Reference:
texconfig.dvi_buf_size
These work best if they are the same as the I/O buffer size, but it doesn't matter much. Must be a multiple of 8.
Reference:
texconfig.error_line
It's probably inadvisable to change these. At any rate, we must have: 45 < error_line < 255; 30 < half_error_line < error_line - 15; 60 <= max_print_line; These apply to TeX, Metafont, and MetaPost. "max_print_line" applies to BibTeX family
Reference:
texconfig.half_error_line
It's probably inadvisable to change these. At any rate, we must have: 45 < error_line < 255; 30 < half_error_line < error_line - 15; 60 <= max_print_line; These apply to TeX, Metafont, and MetaPost. "max_print_line" applies to BibTeX family
Reference:
texconfig.max_print_line
It's probably inadvisable to change these. At any rate, we must have: 45 < error_line < 255; 30 < half_error_line < error_line - 15; 60 <= max_print_line; These apply to TeX, Metafont, and MetaPost. "max_print_line" applies to BibTeX family
Reference:
texconfig.hash_extra
Extra space for the hash table of control sequences.
texconfig.pk_dpi
For pdftex and luatex: default resolution for bitmaps; commonly set via \pdfpkresolution when needed to be changed.
texconfig.trace_file_names
false
disables TeX's normal file open-close feedback (the
assumption is that callbacks will take care of that)
texconfig.file_line_error
do file:line
style error messages
texconfig.halt_on_error
abort run on the first encountered error
texconfig.formatname
if no format name was given on the command line, this key will be tested first instead of simply quitting
texconfig.jobname
if no input file name was given on the command line, this key will be tested first instead of simply giving up
texconfig.level_chr
character to put in front of traced macros (see next value)
texconfig.level_max
when larger than zero the input nesting level will be shown when \tracingmacros
is set; levels above this value will be clipped with
the level shown up front
Note: the numeric values that match web2c parameters are only used if kpse_init
is explicitly set to false
. In all other cases, the normal
values from texmf.cnf
are used.
You can kick in your own nesting level visualizer, for instance:
callback.register("input_level_string",function(n)
if tex.tracingmacros > 0 and tex.count.tracingstacklevels > 0 then
if tex.tracingmacros > 1 then
return "! " .. string.rep(">",n) .. " "
end
end)
Or, in sync with other engines (not checked):
\newcount\tracingstacklevels