local var_value = kpse.var_value local texconfig = texconfig -- These are special in two ways: They are strings and I think they are ignored -- We set them anyway because they should be emulated at some point for _, name in ipairs{ "shell_escape", "shell_escape_commands", } do local value = var_value(name) texconfig[name] = value end for _, name in ipairs{ "string_vacancies", "pool_free", "max_strings", "strings_free", "nest_size", "max_in_open", "param_size", "save_size", "stack_size", "dvi_buf_size", "error_line", "half_error_line", "max_print_line", "hash_extra", "pk_dpi", "trace_file_names", "file_line_error", "halt_on_error", } do local value = var_value(name) texconfig[name] = tonumber(value) or value or nil end texconfig.token_size = 10000000