diff options
author | Luigi Scarso <luigi.scarso@gmail.com> | 2024-02-20 18:03:52 +0000 |
---|---|---|
committer | Luigi Scarso <luigi.scarso@gmail.com> | 2024-02-20 18:03:52 +0000 |
commit | 3575aa305fd619edaa92f3bc49368cfe9d2f76bc (patch) | |
tree | 605d12d55e96d4caf1898da24aa88078f2dbb890 | |
parent | 996e522093d8edad414c575c4b0424b032b73651 (diff) |
Updated LuaTeX manual.
git-svn-id: svn://tug.org/texlive/trunk@70014 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Master/texmf-dist/doc/luatex/base/NEWS | 47 | ||||
-rw-r--r-- | Master/texmf-dist/doc/luatex/base/luatex-lua.tex | 35 | ||||
-rw-r--r-- | Master/texmf-dist/doc/luatex/base/luatex-tex.tex | 42 | ||||
-rw-r--r-- | Master/texmf-dist/doc/luatex/base/luatex.pdf | bin | 1788528 -> 1793962 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/luatex/base/luatex.tex | 2 |
5 files changed, 115 insertions, 11 deletions
diff --git a/Master/texmf-dist/doc/luatex/base/NEWS b/Master/texmf-dist/doc/luatex/base/NEWS index 8557c139df1..8a542d6868e 100644 --- a/Master/texmf-dist/doc/luatex/base/NEWS +++ b/Master/texmf-dist/doc/luatex/base/NEWS @@ -1,4 +1,51 @@ ============================================================== +LuaTeX 1.18.0 2024-02-13 +============================================================== + +- New kpse.in_name_ok_silent_extended and kpse.in_name_ok_silent_extended +- New kpse.in_name_ok, kpse.in_name_ok +- New lfs.mkdirp that make parent directories as needed +- In kpse mode os.rename,os.remove, lfs.attributes, + lfs.chdir, lfs.lock_dir, lfs.dir, lfs.link, + lfs.mkdir, lfs.mkdirp, lfs.rmdir, lfs.symlinkattributes, lfs.touch + are now validated with kpse.in_name_ok_silent_extended *and* kpse.out_name_ok_silent_extended; + lfs.attributes, lfs.dir and lfs.symlinkattributes are now validated only against kpse.in_name_ok_silent_extended +- With --safer, all debug functions except traceback are nil +- New commandline switch --[no-]check-dvi-total-pages exit when DVI exceeds 65535 pages (default: check). + This breaks backward compatibility. +- Some fixes, among others: + * setgentounicode has a glyph_unicode_tree not NULL (thanks M. Chernoff) + * Character index within the limits in defining a Type 3 font (H.Hagen). Thanks M. Chernoff. + * Fix for dubious cff fonts (not following the 1000 unit recommendation) (Hans Hagen). + * TEXMF_OUTPUT_DIRECTORY and output_directory have the same value, having output_directory + the priority on TEXMF_OUTPUT_DIRECTORY. + + +============================================================== +LuaTeX 1.17.0 2023-04-29 +============================================================== + +- A breaking backward compatibility change: by default the socket + library is not enabled . + The new option --socket enable the socket library as + before, as also --shell-escape (without --shell-restricted); + --nosocket, --no-socket , --safer disabled the library, and + they have the priority in case of conflicting options. + The mime library is always available; socket.sleep + and socket.gettime are duplicated as os.socketsleep + and os.socketgettime, both always available. + The new os.kpsepopen replace io.popopen in kpse mode + (i.e. when kpse_init is not zero) as it was before + but the permission now cannot be changed anymore with + kpse.check_permission . + The function os.kpsepopen follows the same restrictions + as io.popen . + Thanks to Max Chernoff for debugging. + + + + +============================================================== LuaTeX 1.16.0 2023-02-19 ============================================================== diff --git a/Master/texmf-dist/doc/luatex/base/luatex-lua.tex b/Master/texmf-dist/doc/luatex/base/luatex-lua.tex index ed0bc23a537..c5d053e0937 100644 --- a/Master/texmf-dist/doc/luatex/base/luatex-lua.tex +++ b/Master/texmf-dist/doc/luatex/base/luatex-lua.tex @@ -86,6 +86,7 @@ consequence. The following command|-|line options are understood: \NC \type{--kpathsea-debug=NUMBER} \NC set path searching debugging flags according to the bits of \type {NUMBER} \NC \NR \NC \type{--lua=FILE} \NC load and execute a \LUA\ initialization script \NC\NR +\NC \type{--luadebug} \NC enable the \type{debug} library\NC\NR \NC \type{--[no-]mktex=FMT} \NC disable/enable \type {mktexFMT} generation with \type {FMT} is \type {tex} or \type {tfm} \NC \NR \NC \type{--nosocket} \NC disable the \LUA\ socket library \NC\NR @@ -137,6 +138,10 @@ The file names for output files that are generated automatically are created by attaching the proper extension (\type {log}, \type {pdf}, etc.) to the found \prm {jobname}. These files are created in the directory pointed to by \type {--output-directory}, or in the current directory, if that switch is not present. +If \type{--output-directory} is not empty, its value it's copied to the +\type{TEXMF_OUTPUT_DIRECTORY} env. variable; if it's empty, the value of +\type{TEXMF_OUTPUT_DIRECTORY} is the value of the output directory. + Without the \type {--lua} option, command line processing works like it does in any other \WEBC|-|based typesetting engine, except that \LUATEX\ has a few extra @@ -165,8 +170,8 @@ in the following order: \startitem Then it checks the various safety switches. You can use those to disable some - \LUA\ commands that can easily be abused by a malicious document. At the - moment, \type {--safer} \type {nil}s the following functions: + \LUA\ commands that can easily be abused by a malicious document. Currently + \type {--safer} nils the following functions: \blank @@ -177,8 +182,8 @@ in the following order: \type {spawn} \type {setenv} \type {rename} \type {remove} \type {tmpdir} \NC \NR \NC \type {io} \NC \type {popen} \type {output} \type {tmpfile} \NC \NR - \NC \type {lfs} \NC \type {rmdir} \type {mkdir} \type {chdir} \type {lock} - \type {touch} \NC \NR + \NC \type {lfs} \NC \type {rmdir} \type {mkdir} \type {mkdirp} \type {chdir} + \type {lock} \type {touch} \NC \NR \LL \stoptabulate @@ -189,6 +194,23 @@ in the following order: Finally, it disables the \type {socket} library unconditionally (but not the \type {mime} library which is always available). + + From version 1.18.0 and if \KPATHSEA\ is used, with the exception of \type{debug.traceback} + the \type{debug} library is not enabled by default; it can + be enabled with the \type{--luadebug} switch. The \type{debug} library + is always enabled in shell-escape mode. + + Also from version 1.18.0 and if \KPATHSEA\ is used, the functions + \type{os.rename},\type{os.remove}, \type{lfs.attributes}, \type{lfs.chdir}, + \type{lfs.lock_dir}, \type{lfs.dir}, \type{lfs.link}, \type{lfs.mkdir}, \type{lfs.mkdirp}, + \type{lfs.rmdir}, \type{lfs.symlinkattributes}, \type{lfs.touch} + return \type{true} if both \type{kpse.in_name_ok_silent_extended} and + \type{kpse.out_name_ok_silent_extended} validate the pathname; + \type{lfs.attributes}, \type{lfs.dir} and \type{lfs.symlinkattributes} are validated + only against \type{kpse.in_name_ok_silent_extended}. + + + \stopitem \startitem @@ -237,7 +259,7 @@ deal with typesetting, like \type {tex}, \type {token}, \type {node} and \type {pdf}, are off|-|limits during the execution of the startup file (they are \type {nil}'d). Special care is taken that \type {texio.write} and \type {texio.write_nl} function properly, so that you can at least report your actions -to the log file when (and if) it eventually becom1es opened (note that \TEX\ does +to the log file when (and if) it eventually becomes opened (note that \TEX\ does not even know its \prm {jobname} yet at this point). Everything you do in the \LUA\ initialization script will remain visible during @@ -363,7 +385,8 @@ instance, when we started with \LUATEX\ we added some helpers to the \type {lfs.isdir} and \type {lfs.isfile} were speedy and better variants of what could be done with \type {lfs.attributes}. The additional function \type {lfs.shortname} takes a file name and returns its short name on \type {win32} -platforms. Finally, for non|-|\type {win32} platforms only, we provided \type +platforms; \type{lfs.mkdirp} is like \type{lfs.mkdir} but make parent directories as needed. +Finally, for non|-|\type {win32} platforms only, we provided \type {lfs.readlink} that takes an existing symbolic link as argument and returns its name. However, the \type {lfs} library evolved so we have dropped these in favour of pure \LUA\ variants. The \type {shortname} helper is obsolete and now just diff --git a/Master/texmf-dist/doc/luatex/base/luatex-tex.tex b/Master/texmf-dist/doc/luatex/base/luatex-tex.tex index d711b0709f8..bfa4c5ba173 100644 --- a/Master/texmf-dist/doc/luatex/base/luatex-tex.tex +++ b/Master/texmf-dist/doc/luatex/base/luatex-tex.tex @@ -204,6 +204,8 @@ index into \type {status}. The current list is: \NC \type{save_size} \NC save stack size \NC \NR \NC \type{shell_escape} \NC \type {0} means disabled, \type {1} means anything is permitted, and \type {2} is restricted \NC \NR \NC \type{safer_option} \NC \type {1} means safer is enforced \NC \NR +\NC \type{luadebug_option} \NC true if the \type{debug} library is enabled at command line \NC\NR +\NC \type{output_directory} \NC the value of the output directory \NC \NR \NC \type{kpse_used} \NC \type {1} means that kpse is used \NC \NR \NC \type{stack_size} \NC input stack size \NC \NR \NC \type{str_ptr} \NC number of strings \NC \NR @@ -2827,27 +2829,59 @@ Like kpsewhich's \type {-expand-braces}: \libindex{in_name_ok} -Return true if \type{fname} is acceptable to open for reading. +Returns true if \type{fname} is acceptable to open for reading, otherwise false and +write a message to standard error. \startfunctioncall -<boolean> r = kpse_in_name_ok(<string> fname) +<boolean> r = kpse.in_name_ok(<string> fname) \stopfunctioncall +\startsubsection[title={\type {in_name_ok_silent_extended}}] + +\libindex{in_name_ok_silent_extended} + +\startfunctioncall +<boolean> r = kpse.in_name_ok_silent_extended(<string> fname) +\stopfunctioncall + +Returns true if \type{fname} is acceptable to open for reading; +the values of \type{TEXMFVAR} and \type{TEXMFSYSVAR} are also +checked for absolute filenames. Returns false otherwise but it doesn't write +a message to standard error. + \stopsubsection + \startsubsection[title={\type {out_name_ok}}] \libindex{out_name_ok} -Return true if \type{fname} is acceptable to open for writing. +Returns true if \type{fname} is acceptable to open for writing. \startfunctioncall -<boolean> r = kpse_out_name_ok(<string> fname) +<boolean> r = kpse.out_name_ok(<string> fname) \stopfunctioncall \stopsubsection +\startsubsection[title={\type {out_name_ok_silent_extended}}] + +\libindex{out_name_ok_silent_extended} + +\startfunctioncall +<boolean> r = kpse.out_name_ok_silent_extended(<string> fname) +\stopfunctioncall + +Returns true if \type{fname} is acceptable to open for writing; +the values of \type{TEXMFVAR} and \type{TEXMFSYSVAR} are also +checked for absolute filenames. Returns false otherwise but it doesn't write +a message to standard error. + +\stopsubsection + + + \startsubsection[title={\type {show_path}}] diff --git a/Master/texmf-dist/doc/luatex/base/luatex.pdf b/Master/texmf-dist/doc/luatex/base/luatex.pdf Binary files differindex 04dc1ef67cd..8c4d0e54ace 100644 --- a/Master/texmf-dist/doc/luatex/base/luatex.pdf +++ b/Master/texmf-dist/doc/luatex/base/luatex.pdf diff --git a/Master/texmf-dist/doc/luatex/base/luatex.tex b/Master/texmf-dist/doc/luatex/base/luatex.tex index 45aa1f5cb53..1a6727eb6a7 100644 --- a/Master/texmf-dist/doc/luatex/base/luatex.tex +++ b/Master/texmf-dist/doc/luatex/base/luatex.tex @@ -73,7 +73,7 @@ \startdocument [manual=Lua\TeX, status=stable, - version=1.17] + version=1.18] \startnotmode[*export] \component luatex-titlepage |