summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc
diff options
context:
space:
mode:
authorLuigi Scarso <luigi.scarso@gmail.com>2024-02-20 18:03:52 +0000
committerLuigi Scarso <luigi.scarso@gmail.com>2024-02-20 18:03:52 +0000
commit3575aa305fd619edaa92f3bc49368cfe9d2f76bc (patch)
tree605d12d55e96d4caf1898da24aa88078f2dbb890 /Master/texmf-dist/doc
parent996e522093d8edad414c575c4b0424b032b73651 (diff)
Updated LuaTeX manual.
git-svn-id: svn://tug.org/texlive/trunk@70014 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc')
-rw-r--r--Master/texmf-dist/doc/luatex/base/NEWS47
-rw-r--r--Master/texmf-dist/doc/luatex/base/luatex-lua.tex35
-rw-r--r--Master/texmf-dist/doc/luatex/base/luatex-tex.tex42
-rw-r--r--Master/texmf-dist/doc/luatex/base/luatex.pdfbin1788528 -> 1793962 bytes
-rw-r--r--Master/texmf-dist/doc/luatex/base/luatex.tex2
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
index 04dc1ef67cd..8c4d0e54ace 100644
--- a/Master/texmf-dist/doc/luatex/base/luatex.pdf
+++ b/Master/texmf-dist/doc/luatex/base/luatex.pdf
Binary files differ
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