From bcc5f422cb282c78b890ae719ac1a63eaa5e62aa Mon Sep 17 00:00:00 2001
From: Hans Hagen <pragma@wxs.nl>
Date: Mon, 7 Jan 2019 13:28:56 +0100
Subject: 2019-01-07 10:16:00

---
 .../sources/general/manuals/luatex/luatex-lua.tex  | 127 ++++++++-------------
 1 file changed, 45 insertions(+), 82 deletions(-)

(limited to 'doc/context/sources/general/manuals/luatex/luatex-lua.tex')

diff --git a/doc/context/sources/general/manuals/luatex/luatex-lua.tex b/doc/context/sources/general/manuals/luatex/luatex-lua.tex
index 27146d99b..f9107fa1f 100644
--- a/doc/context/sources/general/manuals/luatex/luatex-lua.tex
+++ b/doc/context/sources/general/manuals/luatex/luatex-lua.tex
@@ -347,29 +347,22 @@ returns the name.
 
 \startsubsection[title={Multibyte \type {string} functions}]
 
-\libidx{string}{utfvalues}
-\libidx{string}{utfcharacters}
-\libidx{string}{characters}
-\libidx{string}{characterpairs}
-\libidx{string}{bytes}
-\libidx{string}{bytepairs}
-\libidx{string}{utfvalue}
-\libidx{string}{utfcharacter}
-\libidx{string}{utflength}
-
-The \type {string} library has a few extra functions like \type
-{string.explode(s[,m])}. This function returns an array containing the string
-argument \type {s} split into sub-strings based on the value of the string
-argument \type {m}. The second argument is a string that is either empty (this
-splits the string into characters), a single character (this splits on each
-occurrence of that character, possibly introducing empty strings), or a single
-character followed by the plus sign \type {+} (this special version does not
-create empty sub-strings). The default value for \type {m} is \quote {\type { +}}
-(multiple spaces). Note: \type {m} is not hidden by surrounding braces as it
-would be if this function was written in \TEX\ macros.
+The \type {string} library has a few extra functions, for example \libidx
+{string} {explode}. This function takes upto two arguments: \type
+{string.explode(s[,m])} and returns an array containing the string argument \type
+{s} split into sub-strings based on the value of the string argument \type {m}.
+The second argument is a string that is either empty (this splits the string into
+characters), a single character (this splits on each occurrence of that
+character, possibly introducing empty strings), or a single character followed by
+the plus sign \type {+} (this special version does not create empty sub-strings).
+The default value for \type {m} is \quote {\type { +}} (multiple spaces). Note:
+\type {m} is not hidden by surrounding braces as it would be if this function was
+written in \TEX\ macros.
 
 The \type {string} library also has six extra iterators that return strings
-piecemeal:
+piecemeal: \libidx {string} {utfvalues}, \libidx {string} {utfcharacters},
+\libidx {string} {characters}, \libidx {string} {characterpairs}, \libidx
+{string} {bytes} and \libidx {string} {bytepairs}.
 
 \startitemize
 \startitem
@@ -415,7 +408,8 @@ interpretation of character classes in \type {unicode.utf8} functions refer to
 the library sources at \hyphenatedurl {http://luaforge.net/projects/sln}.
 
 Version 5.3 of \LUA\ provides some native \UTF8 support but we have added a few
-similar helpers too:
+similar helpers too: \libidx {string} {utfvalue}, \libidx {string} {utfcharacter}
+and \libidx {string} {utflength}.
 
 \startitemize
 \startitem
@@ -431,27 +425,18 @@ similar helpers too:
 \stopitem
 \stopitemize
 
-These three functions are relative fast and don't do much checking. They can be used
-as building blocks for other helpers. So, eventually we can decide to drop the
-\type {sln} library, just that you know.
+These three functions are relative fast and don't do much checking. They can be
+used as building blocks for other helpers.
 
 \stopsubsection
 
 \startsubsection[title={Extra \type {os} library functions}]
 
-\libidx{os}{selfdir}
-\libidx{os}{exec}
-\libidx{os}{spawn}
-\libidx{os}{setenv}
-\libidx{os}{env}
-\libidx{os}{gettimeofday}
-\libidx{os}{times}
-\libidx{os}{tmpdir}
-\libidx{os}{type}
-\libidx{os}{name}
-\libidx{os}{uname}
-
-The \type {os} library has a few extra functions and variables:
+The \type {os} library has a few extra functions and variables: \libidx {os}
+{selfdir}, \libidx {os} {exec}, \libidx {os} {spawn}, \libidx {os} {setenv},
+\libidx {os} {env}, \libidx {os} {gettimeofday}, \libidx {os} {times}, \libidx
+{os} {tmpdir}, \libidx {os} {type}, \libidx {os} {name} and \libidx {os} {uname},
+that we will discuss here.
 
 \startitemize
 
@@ -585,24 +570,16 @@ The \type {os} library has a few extra functions and variables:
 
 \startsubsection[title={Binary input from files with \type {fio}}]
 
-\libidx{fio}{readcardinal1}
-\libidx{fio}{readcardinal2}
-\libidx{fio}{readcardinal3}
-\libidx{fio}{readcardinal4}
-\libidx{fio}{readcardinaltable}
-\libidx{fio}{readinteger1}
-\libidx{fio}{readinteger2}
-\libidx{fio}{readinteger3}
-\libidx{fio}{readinteger4}
-\libidx{fio}{readintegertable}
-\libidx{fio}{readfixed2}
-\libidx{fio}{readfixed4}
-\libidx{fio}{read2dot14}
-\libidx{fio}{setposition}
-\libidx{fio}{getposition}
-\libidx{fio}{skipposition}
-\libidx{fio}{readbytes}
-\libidx{fio}{readbytetable}
+There is a whole set of helpers for reading numbers and strings from a file:
+\libidx {fio} {readcardinal1}, \libidx {fio} {readcardinal2}, \libidx {fio}
+{readcardinal3}, \libidx {fio} {readcardinal4}, \libidx {fio}
+{readcardinaltable}, \libidx {fio} {readinteger1}, \libidx {fio} {readinteger2},
+\libidx {fio} {readinteger3}, \libidx {fio} {readinteger4}, \libidx {fio}
+{readintegertable}, \libidx {fio} {readfixed2}, \libidx {fio} {readfixed4},
+\libidx {fio} {read2dot14}, \libidx {fio} {setposition}, \libidx {fio}
+{getposition}, \libidx {fio} {skipposition}, \libidx {fio} {readbytes}, \libidx
+{fio} {readbytetable}. They work on normal \LUA\ file handles.
+
 %libidx{fio}{readline}
 %libidx{fio}{recordfilename}
 %libidx{fio}{checkpermission}
@@ -635,39 +612,25 @@ in addition to the regular \type {io} library functions.
 
 \startsubsection[title={Binary input from strings with \type {sio}}]
 
-\libidx{sio}{readcardinal1}
-\libidx{sio}{readcardinal2}
-\libidx{sio}{readcardinal3}
-\libidx{sio}{readcardinal4}
-\libidx{sio}{readcardinaltable}
-\libidx{sio}{readinteger1}
-\libidx{sio}{readinteger2}
-\libidx{sio}{readinteger3}
-\libidx{sio}{readinteger4}
-\libidx{sio}{readintegertable}
-\libidx{sio}{readfixed2}
-\libidx{sio}{readfixed4}
-\libidx{sio}{read2dot14}
-\libidx{sio}{setposition}
-\libidx{sio}{getposition}
-\libidx{sio}{skipposition}
-\libidx{sio}{readbytes}
-\libidx{sio}{readbytetable}
-
 A similar set of function as in the \type {fio} library is available in the \type
-{sio} library. Here the first argument is a string.
+{sio} library: \libidx {sio} {readcardinal1}, \libidx {sio} {readcardinal2},
+\libidx {sio} {readcardinal3}, \libidx {sio} {readcardinal4}, \libidx {sio}
+{readcardinaltable}, \libidx {sio} {readinteger1}, \libidx {sio} {readinteger2},
+\libidx {sio} {readinteger3}, \libidx {sio} {readinteger4}, \libidx {sio}
+{readintegertable}, \libidx {sio} {readfixed2}, \libidx {sio} {readfixed4},
+\libidx {sio} {read2dot14}, \libidx {sio} {setposition}, \libidx {sio}
+{getposition}, \libidx {sio} {skipposition}, \libidx {sio} {readbytes} and
+\libidx {sio} {readbytetable}. Here the first argument is a string instead of a
+file handle. More details can be found in the previous section.
 
 \stopsubsection
 
 \startsubsection[title={Hashes conform \type {sha2}}]
 
-\libidx{sha2}{digest256}
-\libidx{sha2}{digest384}
-\libidx{sha2}{digest512}
-
 This library is a side effect of the \type {pdfe} library that needs such
-helpers. The \type {digest256}, \type {digest384} and \type {digest512} functions
-accept a string and return a string with the hash.
+helpers. The \libidx{sha2}{digest256}, \libidx{sha2}{digest384} and
+\libidx{sha2}{digest512} functions accept a string and return a string with the
+hash.
 
 \stopsubsection
 
-- 
cgit v1.2.3

