summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuigi Scarso <luigi.scarso@gmail.com>2022-10-28 06:21:31 +0000
committerLuigi Scarso <luigi.scarso@gmail.com>2022-10-28 06:21:31 +0000
commiteea76bff51c647fa1e3917c4ffdcac479dde413b (patch)
tree21b9dec7c6a643fc22fcd6bfb65a9fcd1d6cdd16
parent19958a4c17519a912f719fda54d72acd3f60b42f (diff)
\variablefam (backport from luametatex, handy for latex) (H .Hagen)
git-svn-id: svn://tug.org/texlive/trunk@64839 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Build/source/texk/web2c/luatexdir/ChangeLog9
-rw-r--r--Build/source/texk/web2c/luatexdir/luatex_svnversion.h2
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/commands.c1
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/dumpdata.c2
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/equivalents.h5
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/texmath.c11
-rw-r--r--Master/texmf-dist/doc/luatex/base/luatex-backend.tex12
-rw-r--r--Master/texmf-dist/doc/luatex/base/luatex-math.tex36
-rw-r--r--Master/texmf-dist/doc/luatex/base/luatex-modifications.tex4
-rw-r--r--Master/texmf-dist/doc/luatex/base/luatex-tex.tex7
-rw-r--r--Master/texmf-dist/doc/luatex/base/luatex.pdfbin1784850 -> 1786441 bytes
11 files changed, 69 insertions, 20 deletions
diff --git a/Build/source/texk/web2c/luatexdir/ChangeLog b/Build/source/texk/web2c/luatexdir/ChangeLog
index 7ce5072da9f..9cd534c2c56 100644
--- a/Build/source/texk/web2c/luatexdir/ChangeLog
+++ b/Build/source/texk/web2c/luatexdir/ChangeLog
@@ -1,3 +1,12 @@
+2022-10-28 Luigi Scarso <luigi.scarso@gmail.com>
+ * \variablefam (backport from luametatex, handy for latex) (H .Hagen)
+
+2022-10-22 Luigi Scarso <luigi.scarso@gmail.com>
+ * STOP COMMITS TO SVN REPO -- WORK IN PROGRESS
+
+2022-10-22 Luigi Scarso <luigi.scarso@gmail.com>
+ * porting texlive patch r53155 -- WORK IN PROGRESS
+
2022-09-29 Luigi Scarso <luigi.scarso@gmail.com>
* Fixed an infinite loop with --halt-on-error option (K.Berry)
diff --git a/Build/source/texk/web2c/luatexdir/luatex_svnversion.h b/Build/source/texk/web2c/luatexdir/luatex_svnversion.h
index 9821051cb22..6c9c206b957 100644
--- a/Build/source/texk/web2c/luatexdir/luatex_svnversion.h
+++ b/Build/source/texk/web2c/luatexdir/luatex_svnversion.h
@@ -1,4 +1,4 @@
#ifndef luatex_svn_revision_h
#define luatex_svn_revision_h
-#define luatex_svn_revision 7540
+#define luatex_svn_revision 7546
#endif
diff --git a/Build/source/texk/web2c/luatexdir/tex/commands.c b/Build/source/texk/web2c/luatexdir/tex/commands.c
index 9cf5efeeec5..b502cf287fe 100644
--- a/Build/source/texk/web2c/luatexdir/tex/commands.c
+++ b/Build/source/texk/web2c/luatexdir/tex/commands.c
@@ -119,6 +119,7 @@ void initialize_commands(void)
primitive_tex("floatingpenalty", assign_int_cmd, int_base + floating_penalty_code, int_base);
primitive_tex("globaldefs", assign_int_cmd, int_base + global_defs_code, int_base);
primitive_tex("fam", assign_int_cmd, int_base + cur_fam_code, int_base);
+ primitive_luatex("variablefam", assign_int_cmd, int_base + var_fam_code, int_base);
primitive_tex("escapechar", assign_int_cmd, int_base + escape_char_code, int_base);
primitive_tex("defaulthyphenchar", assign_int_cmd, int_base + default_hyphen_char_code, int_base);
primitive_tex("defaultskewchar", assign_int_cmd, int_base + default_skew_char_code, int_base);
diff --git a/Build/source/texk/web2c/luatexdir/tex/dumpdata.c b/Build/source/texk/web2c/luatexdir/tex/dumpdata.c
index fb435c2ca1e..6b7535803f1 100644
--- a/Build/source/texk/web2c/luatexdir/tex/dumpdata.c
+++ b/Build/source/texk/web2c/luatexdir/tex/dumpdata.c
@@ -32,7 +32,7 @@ with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
*/
-#define FORMAT_ID (907+58)
+#define FORMAT_ID (907+59)
#if ((FORMAT_ID>=0) && (FORMAT_ID<=256))
#error Wrong value for FORMAT_ID.
#endif
diff --git a/Build/source/texk/web2c/luatexdir/tex/equivalents.h b/Build/source/texk/web2c/luatexdir/tex/equivalents.h
index 8df33be5237..f755af60a3f 100644
--- a/Build/source/texk/web2c/luatexdir/tex/equivalents.h
+++ b/Build/source/texk/web2c/luatexdir/tex/equivalents.h
@@ -314,8 +314,9 @@ the |number_regs| \.{\\dimen} registers.
# define partoken_context_code 121
# define show_stream_code 122
# define math_eq_dir_mode_code 123
+# define var_fam_code 124
-# define math_option_code 124
+# define math_option_code 125
# define mathoption_int_base_code (math_option_code+1) /* one reserve */
# define mathoption_int_last_code (mathoption_int_base_code+8)
@@ -651,11 +652,13 @@ extern halfword last_cs_name;
#define split_top_skip_par glue_par(split_top_skip_code)
#define cur_fam_par int_par(cur_fam_code)
+#define var_fam_par int_par(var_fam_code)
#define pre_display_direction_par int_par(pre_display_direction_code)
#define pre_display_penalty_par int_par(pre_display_penalty_code)
#define post_display_penalty_par int_par(post_display_penalty_code)
#define cur_fam_par_in_range ((cur_fam_par>=0)&&(cur_fam_par<256))
+#define var_fam_par_in_range ((var_fam_par>=0)&&(var_fam_par<256))
#define local_inter_line_penalty_par int_par(local_inter_line_penalty_code)
#define local_broken_penalty_par int_par(local_broken_penalty_code)
diff --git a/Build/source/texk/web2c/luatexdir/tex/texmath.c b/Build/source/texk/web2c/luatexdir/tex/texmath.c
index 7a71fd80349..8b6138e7cbb 100644
--- a/Build/source/texk/web2c/luatexdir/tex/texmath.c
+++ b/Build/source/texk/web2c/luatexdir/tex/texmath.c
@@ -1462,6 +1462,8 @@ int scan_math(pointer p, int mstyle)
math_character(p) = mval.character_value;
if ((mval.class_value == math_use_current_family_code) && cur_fam_par_in_range)
math_fam(p) = cur_fam_par;
+ else if ((mval.family_value == var_fam_par) && var_fam_par_in_range)
+ math_fam(p) = cur_fam_par;
else
math_fam(p) = mval.family_value;
return 0;
@@ -1508,6 +1510,9 @@ void set_math_char(mathcodeval mval)
if (cur_fam_par_in_range)
math_fam(nucleus(p)) = cur_fam_par;
subtype(p) = ord_noad_type;
+ } else if ((mval.family_value == var_fam_par) && var_fam_par_in_range) {
+ if (cur_fam_par_in_range)
+ math_fam(nucleus(p)) = cur_fam_par;
} else {
math_class_to_type(subtype(p),mval.class_value);
}
@@ -1802,6 +1807,8 @@ void math_ac(void)
math_character(top_accent_chr(tail)) = t.character_value;
if ((t.class_value == math_use_current_family_code) && cur_fam_par_in_range)
math_fam(top_accent_chr(tail)) = cur_fam_par;
+ else if ((t.family_value == var_fam_par) && var_fam_par_in_range)
+ math_fam(top_accent_chr(tail)) = cur_fam_par;
else
math_fam(top_accent_chr(tail)) = t.family_value;
}
@@ -1811,6 +1818,8 @@ void math_ac(void)
math_character(bot_accent_chr(tail)) = b.character_value;
if ((b.class_value == math_use_current_family_code) && cur_fam_par_in_range)
math_fam(bot_accent_chr(tail)) = cur_fam_par;
+ else if ((b.family_value == var_fam_par) && var_fam_par_in_range)
+ math_fam(bot_accent_chr(tail)) = cur_fam_par;
else
math_fam(bot_accent_chr(tail)) = b.family_value;
}
@@ -1820,6 +1829,8 @@ void math_ac(void)
math_character(overlay_accent_chr(tail)) = o.character_value;
if ((o.class_value == math_use_current_family_code) && cur_fam_par_in_range)
math_fam(overlay_accent_chr(tail)) = cur_fam_par;
+ else if ((o.family_value == var_fam_par) && var_fam_par_in_range)
+ math_fam(overlay_accent_chr(tail)) = cur_fam_par;
else
math_fam(overlay_accent_chr(tail)) = o.family_value;
}
diff --git a/Master/texmf-dist/doc/luatex/base/luatex-backend.tex b/Master/texmf-dist/doc/luatex/base/luatex-backend.tex
index c2479238f3c..4c6c36bd7ba 100644
--- a/Master/texmf-dist/doc/luatex/base/luatex-backend.tex
+++ b/Master/texmf-dist/doc/luatex/base/luatex-backend.tex
@@ -124,8 +124,8 @@ after the \PDFTEX\ equivalents.
\stopsubsection
-\startsubsection[title={\type {[set|get]suppressoptionalinfo}, \type {[set|get]trailerid}
-and \type {[set|get]omitcidset}}]
+\startsubsection[title={\type {[set|get]suppressoptionalinfo}, \type {[set|get]trailerid},
+\type {[set|get]omitcidset} and \type {[set|get]omitinfodict}}]
\topicindex{\PDF+options}
\topicindex{\PDF+trailer}
@@ -134,6 +134,7 @@ and \type {[set|get]omitcidset}}]
\libindex{gettrailerid} \libindex{settrailerid}
\libindex{getomitcidset} \libindex{setomitcidset}
\libindex{getomitcharset} \libindex{setomitcharset}
+\libindex{getomitinfodict} \libindex{setomitinfodict}
The optional info bitset (a number) determines what kind of info gets flushed.
By default we flush all. See \in {section} [sec:pdfextensions] for more details.
@@ -141,9 +142,9 @@ By default we flush all. See \in {section} [sec:pdfextensions] for more details.
You can set your own trailer id. This has to be string containing valid \PDF\
array content with checksums.
-The cidset and charset flags (numbers) disables inclusion of a so called \type
-{CIDSet} and \type {CharSet} entries, which can be handy when aiming at some of
-the many \PDF\ substandards.
+The cidset, charset and info flags (numbers) disables inclusion of a so called
+\type {CIDSet} and \type {CharSet} entries, which can be handy when aiming at
+some of the many \PDF\ substandards.
\stopsubsection
@@ -639,6 +640,7 @@ pdfe.unencrypt(<pdfe document>,userpassword,ownerpassword)
\libindex {getversion}
\libindex {getnofobjects}
\libindex {getnofpages}
+\libindex {getmemoryusage}
A successfully opened document can provide some information:
diff --git a/Master/texmf-dist/doc/luatex/base/luatex-math.tex b/Master/texmf-dist/doc/luatex/base/luatex-math.tex
index f5d6c742912..b2f34e4db0d 100644
--- a/Master/texmf-dist/doc/luatex/base/luatex-math.tex
+++ b/Master/texmf-dist/doc/luatex/base/luatex-math.tex
@@ -1,4 +1,4 @@
-% language=us engine=luatex runpath=texruns:manuals/luatex
+% language=uk engine=luatex runpath=texruns:manuals/luatex
\environment luatex-style
@@ -130,6 +130,20 @@ sections:
\LL
\stoptabulate
+Instead of the pseudo class variable (7) you can use a family number as signal
+for using the current family. This permits classifying characters with a class
+and still let the family adapt. The trigger family is set with \lpr
+{variablefam}. So:
+
+\starttyping
+\variablefam"24
+\Umathchardef\foo "3 "24 123
+\foo \fam9
+\stoptyping
+
+Results in a curly left brace taken from family 9 with class \quote {relation}
+and spacing around it will be accordingly.
+
\stopsection
\startsection[title={Math styles}]
@@ -774,13 +788,13 @@ right end. The question is: how often is this implemented, and if so, do the
kerns assume correction too. Anyway, with this parameter one can control it.
\starttabulate[|l|ck1|ck1|ck1|ck1|ck1|ck1|]
- \NC
- \NC \mathnolimitsmode0 $\displaystyle\int\nolimits^0_1$
- \NC \mathnolimitsmode1 $\displaystyle\int\nolimits^0_1$
- \NC \mathnolimitsmode2 $\displaystyle\int\nolimits^0_1$
- \NC \mathnolimitsmode3 $\displaystyle\int\nolimits^0_1$
- \NC \mathnolimitsmode4 $\displaystyle\int\nolimits^0_1$
- \NC \mathnolimitsmode8000 $\displaystyle\int\nolimits^0_1$
+ \NC % probably not ok, we need a raw int here
+ \NC \mathnolimitsmode0 $\displaystyle\mathop{\normalint}\nolimits^0_1$
+ \NC \mathnolimitsmode1 $\displaystyle\mathop{\normalint}\nolimits^0_1$
+ \NC \mathnolimitsmode2 $\displaystyle\mathop{\normalint}\nolimits^0_1$
+ \NC \mathnolimitsmode3 $\displaystyle\mathop{\normalint}\nolimits^0_1$
+ \NC \mathnolimitsmode4 $\displaystyle\mathop{\normalint}\nolimits^0_1$
+ \NC \mathnolimitsmode8000 $\displaystyle\mathop{\normalint}\nolimits^0_1$
\NC \NR
\TB
\BC mode
@@ -822,9 +836,9 @@ experimenting.
\topicindex {math+italics}
The \lpr {mathitalicsmode} parameter can be set to~1 to force italic correction
-before noads that represent some more complex structure (read: everything
-that is not an ord, bin, rel, open, close, punct or inner). We show a Cambria
-example.
+before noads that represent some more complex structure (read: everything that is
+not an ord, bin, rel, open, close, punct or inner). A value of~2 will enforce the
+old school font code path for all italics. We show a Cambria example.
\starttexdefinition Whatever #1
\NC \type{\mathitalicsmode = #1}
diff --git a/Master/texmf-dist/doc/luatex/base/luatex-modifications.tex b/Master/texmf-dist/doc/luatex/base/luatex-modifications.tex
index caf643913f4..e3edc59f79e 100644
--- a/Master/texmf-dist/doc/luatex/base/luatex-modifications.tex
+++ b/Master/texmf-dist/doc/luatex/base/luatex-modifications.tex
@@ -1,4 +1,4 @@
-% language=us engine=luatex runpath=texruns:manuals/luatex
+% language=uk engine=luatex runpath=texruns:manuals/luatex
\environment luatex-style
@@ -666,6 +666,7 @@ The configuration related registers have become:
\edef\pdfgentounicode {\pdfvariable gentounicode}
\edef\pdfomitcidset {\pdfvariable omitcidset}
\edef\pdfomitcharset {\pdfvariable omitcharset}
+\edef\pdfomitinfodict {\pdfvariable omitinfodict}
\edef\pdfpagebox {\pdfvariable pagebox}
\edef\pdfminorversion {\pdfvariable minorversion}
\edef\pdfuniqueresname {\pdfvariable uniqueresname}
@@ -915,6 +916,7 @@ The engine sets the following defaults.
\pdfgentounicode 0
\pdfomitcidset 0
\pdfomitcharset 0
+\pdfomitinfodict 0
\pdfpagebox 0
\pdfminorversion 4
\pdfuniqueresname 0
diff --git a/Master/texmf-dist/doc/luatex/base/luatex-tex.tex b/Master/texmf-dist/doc/luatex/base/luatex-tex.tex
index 67e22d73555..a5e45808807 100644
--- a/Master/texmf-dist/doc/luatex/base/luatex-tex.tex
+++ b/Master/texmf-dist/doc/luatex/base/luatex-tex.tex
@@ -2707,6 +2707,9 @@ will search the disk as well as the \type {ls-R} databases.
This is used for the size argument of the formats \type {pk}, \type {gf}, and
\type {bitmap font}. \stopitemize
+If \type {--output-directory} is specified and the value is a relative pathname,
+the file is searched first here and if it fails it will be searched in the standard tree.
+
\stopsubsection
\startsubsection[title={\type {lookup}}]
@@ -2741,6 +2744,10 @@ The options match commandline arguments from \type {kpsewhich}:
\LL
\stoptabulate
+If \type {--output-directory} is specified and the value is a relative pathname,
+the file is searched first here and then in the standard tree.
+
+
\stopsubsection
\startsubsection[title={\type {init_prog}}]
diff --git a/Master/texmf-dist/doc/luatex/base/luatex.pdf b/Master/texmf-dist/doc/luatex/base/luatex.pdf
index 773d8a93116..12e7b2d00c0 100644
--- a/Master/texmf-dist/doc/luatex/base/luatex.pdf
+++ b/Master/texmf-dist/doc/luatex/base/luatex.pdf
Binary files differ