summaryrefslogtreecommitdiff
path: root/tex
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2020-11-25 20:13:53 +0100
committerContext Git Mirror Bot <phg@phi-gamma.net>2020-11-25 20:13:53 +0100
commit08c08ff0cd57eee0e785cb322841e3a805ffbdf3 (patch)
tree0f99ba965f1ec508fe279c90550940e8b26ca328 /tex
parent07d4b092099bc8b5af53806fee049309dec3f888 (diff)
downloadcontext-08c08ff0cd57eee0e785cb322841e3a805ffbdf3.tar.gz
2020-11-25 19:18:00
Diffstat (limited to 'tex')
-rw-r--r--tex/context/base/mkii/cont-new.mkii2
-rw-r--r--tex/context/base/mkii/context.mkii2
-rw-r--r--tex/context/base/mkii/mult-cs.mkii5
-rw-r--r--tex/context/base/mkiv/cont-new.mkiv2
-rw-r--r--tex/context/base/mkiv/context.mkiv2
-rw-r--r--tex/context/base/mkiv/mult-prm.lua1
-rw-r--r--tex/context/base/mkiv/status-files.pdfbin26177 -> 26171 bytes
-rw-r--r--tex/context/base/mkiv/status-lua.pdfbin256376 -> 256373 bytes
-rw-r--r--tex/context/base/mkxl/cont-new.mkxl2
-rw-r--r--tex/context/base/mkxl/context.mkxl2
-rw-r--r--tex/context/base/mkxl/mult-aux.mkxl12
-rw-r--r--tex/context/base/mkxl/pack-rul.mkxl6
-rw-r--r--tex/context/base/mkxl/spac-ali.mkxl18
-rw-r--r--tex/context/base/mkxl/spac-hor.mkxl60
-rw-r--r--tex/context/base/mkxl/syst-aux.mkxl57
-rw-r--r--tex/context/base/mkxl/syst-ini.mkxl21
-rw-r--r--tex/context/interface/mkii/keys-cs.xml5
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua2
18 files changed, 122 insertions, 77 deletions
diff --git a/tex/context/base/mkii/cont-new.mkii b/tex/context/base/mkii/cont-new.mkii
index 07b8c55e1..8850e72b4 100644
--- a/tex/context/base/mkii/cont-new.mkii
+++ b/tex/context/base/mkii/cont-new.mkii
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2020.11.25 16:53}
+\newcontextversion{2020.11.25 19:15}
%D This file is loaded at runtime, thereby providing an
%D excellent place for hacks, patches, extensions and new
diff --git a/tex/context/base/mkii/context.mkii b/tex/context/base/mkii/context.mkii
index d3a0b269a..f78f5091b 100644
--- a/tex/context/base/mkii/context.mkii
+++ b/tex/context/base/mkii/context.mkii
@@ -20,7 +20,7 @@
%D your styles an modules.
\edef\contextformat {\jobname}
-\edef\contextversion{2020.11.25 16:53}
+\edef\contextversion{2020.11.25 19:15}
%D For those who want to use this:
diff --git a/tex/context/base/mkii/mult-cs.mkii b/tex/context/base/mkii/mult-cs.mkii
index 290ae510e..d2a51a8ab 100644
--- a/tex/context/base/mkii/mult-cs.mkii
+++ b/tex/context/base/mkii/mult-cs.mkii
@@ -774,6 +774,7 @@
\setinterfaceconstant{deepnumbercommand}{deepnumbercommand}
\setinterfaceconstant{deeptextcommand}{deeptextcommand}
\setinterfaceconstant{default}{implicitni}
+\setinterfaceconstant{define}{define}
\setinterfaceconstant{delay}{prodleva}
\setinterfaceconstant{depth}{hloubka}
\setinterfaceconstant{depthcorrection}{korekcehloubky}
@@ -2073,7 +2074,7 @@
\setinterfacecommand{startnarrower}{startzuzeni}
\setinterfacecommand{startopposite}{startprotejsek}
\setinterfacecommand{startoverlay}{startprekryv}
-\setinterfacecommand{startoverzicht}{startprehled}
+\setinterfacecommand{startoverview}{startprehled}
\setinterfacecommand{startpacked}{startzhustene}
\setinterfacecommand{startpositioning}{startumistovani}
\setinterfacecommand{startproduct}{startprodukt}
@@ -2116,7 +2117,7 @@
\setinterfacecommand{stopnarrower}{stopzuzeni}
\setinterfacecommand{stopopposite}{stopprotejsek}
\setinterfacecommand{stopoverlay}{stopprekryv}
-\setinterfacecommand{stopoverzicht}{stopprehled}
+\setinterfacecommand{stopoverview}{stopprehled}
\setinterfacecommand{stoppacked}{stopzhustene}
\setinterfacecommand{stoppositioning}{stopumistovani}
\setinterfacecommand{stopproduct}{stopprodukt}
diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv
index f0ee92bc2..4de3b29d1 100644
--- a/tex/context/base/mkiv/cont-new.mkiv
+++ b/tex/context/base/mkiv/cont-new.mkiv
@@ -13,7 +13,7 @@
% \normalend % uncomment this to get the real base runtime
-\newcontextversion{2020.11.25 16:53}
+\newcontextversion{2020.11.25 19:15}
%D This file is loaded at runtime, thereby providing an excellent place for hacks,
%D patches, extensions and new features. There can be local overloads in cont-loc
diff --git a/tex/context/base/mkiv/context.mkiv b/tex/context/base/mkiv/context.mkiv
index 2f64747a9..ae19843a1 100644
--- a/tex/context/base/mkiv/context.mkiv
+++ b/tex/context/base/mkiv/context.mkiv
@@ -45,7 +45,7 @@
%D {YYYY.MM.DD HH:MM} format.
\edef\contextformat {\jobname}
-\edef\contextversion{2020.11.25 16:53}
+\edef\contextversion{2020.11.25 19:15}
%D Kind of special:
diff --git a/tex/context/base/mkiv/mult-prm.lua b/tex/context/base/mkiv/mult-prm.lua
index c60ed1640..725253995 100644
--- a/tex/context/base/mkiv/mult-prm.lua
+++ b/tex/context/base/mkiv/mult-prm.lua
@@ -328,6 +328,7 @@ return {
"ifnumval",
"ifparameter",
"ifparameters",
+ "ifrelax",
"iftok",
"ignorearguments",
"ignorepars",
diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf
index e6b9a8894..562e5aaf1 100644
--- a/tex/context/base/mkiv/status-files.pdf
+++ b/tex/context/base/mkiv/status-files.pdf
Binary files differ
diff --git a/tex/context/base/mkiv/status-lua.pdf b/tex/context/base/mkiv/status-lua.pdf
index 75f6a775a..d1d6664ec 100644
--- a/tex/context/base/mkiv/status-lua.pdf
+++ b/tex/context/base/mkiv/status-lua.pdf
Binary files differ
diff --git a/tex/context/base/mkxl/cont-new.mkxl b/tex/context/base/mkxl/cont-new.mkxl
index facf1f03a..d06f31f89 100644
--- a/tex/context/base/mkxl/cont-new.mkxl
+++ b/tex/context/base/mkxl/cont-new.mkxl
@@ -13,7 +13,7 @@
% \normalend % uncomment this to get the real base runtime
-\newcontextversion{2020.11.25 16:53}
+\newcontextversion{2020.11.25 19:15}
%D This file is loaded at runtime, thereby providing an excellent place for hacks,
%D patches, extensions and new features. There can be local overloads in cont-loc
diff --git a/tex/context/base/mkxl/context.mkxl b/tex/context/base/mkxl/context.mkxl
index 1c9a0c02f..ee7d92bee 100644
--- a/tex/context/base/mkxl/context.mkxl
+++ b/tex/context/base/mkxl/context.mkxl
@@ -29,7 +29,7 @@
%D {YYYY.MM.DD HH:MM} format.
\edef\contextformat {\jobname}
-\edef\contextversion{2020.11.25 16:53}
+\edef\contextversion{2020.11.25 19:15}
%overloadmode 1 % check frozen / warning
%overloadmode 2 % check frozen / error
diff --git a/tex/context/base/mkxl/mult-aux.mkxl b/tex/context/base/mkxl/mult-aux.mkxl
index 9c8613783..4bf682a78 100644
--- a/tex/context/base/mkxl/mult-aux.mkxl
+++ b/tex/context/base/mkxl/mult-aux.mkxl
@@ -196,9 +196,6 @@
\mult_interfaces_adef\m_mult_interfaces_namespace{#1}{#2}%
\fi}
-% \def\mult_interfaces_get_parameters_item_error#0#0#0#4#5%
-% {\if,#5\else\mult_interfaces_get_parameters_error_indeed{#4}{#5}\fi}
-
\def\mult_interfaces_get_parameters_item_error#-#-#-#1#2%
{\if,#2\else\mult_interfaces_get_parameters_error_indeed{#1}{#2}\fi}
@@ -276,7 +273,8 @@
\protected\def\mult_interfaces_install_parameter_handler#1#2#3#4#5#6#7#8#9%
{\frozen\def#3##1{\csname\ifcsname#1#2:##1\endcsname#1#2:##1\else\expandafter#5\csname#1#2:\s!parent\endcsname{##1}\fi\endcsname}%
\frozen\def#4##1##2{\ifcsname##1:##2\endcsname##1:##2\else\expandafter#5\csname##1:\s!parent\endcsname{##2}\fi}%
- \frozen\edef#5##1##2{\noexpand\ifx##1\relax\??empty\noexpand\else\noexpand#4##1{##2}\noexpand\fi}% is {} needed around ##1 ?
+% \frozen\edef#5##1##2{\noexpand\ifx##1\relax\??empty\noexpand\else\noexpand#4##1{##2}\noexpand\fi}% is {} needed around ##1 ?
+ \frozen\edef#5##1##2{\noexpand\ifrelax##1\??empty\noexpand\else\noexpand#4##1{##2}\noexpand\fi}% is {} needed around ##1 ?
\frozen\def#6##1##2{\csname\ifcsname#1##1:##2\endcsname#1##1:##2\else\expandafter#5\csname#1##1:\s!parent\endcsname{##2}\fi\endcsname}%
\frozen\def#7##1{\detokenize\expandafter\expandafter\expandafter{\csname#1#2:##1\endcsname}}% always root, no backtrack
\frozen\def#8##1{\begincsname#1#2:##1\endcsname}%
@@ -311,7 +309,8 @@
\protected\def\mult_interfaces_install_parameter_hash_handler#1#2#3#4#5#6#7#8#9%
{\frozen\def#3##1{#1#4{#1#2}{##1}:}% leading #1 was missing .. is this one used?
\frozen\def#4##1##2{\ifcsname##1:##2\endcsname##1\else\expandafter#5\csname##1:\s!parent\endcsname{##2}\fi}%
- \frozen\def#5##1##2{\ifx##1\relax\else#4##1{##2}\fi}%
+% \frozen\def#5##1##2{\ifx##1\relax\else#4##1{##2}\fi}%
+ \frozen\def#5##1##2{\ifrelax##1\else#4##1{##2}\fi}%
\frozen\def#6{#1#2:}%
\frozen\def#7##1{#1##1:}%
\frozen\def#8{\ifempty#2\orelse\ifcsname#1#2:\s!parent\endcsname\else\letcsname#1#2:\s!parent\endcsname#1\fi}%
@@ -1006,7 +1005,8 @@
\let#6\empty
\protected\def#2%
{\expandafter\let\expandafter\c_mult_set\csname #1_t_#6\endcsname
- \ifx\c_mult_set\relax
+% \ifx\c_mult_set\relax
+ \ifrelax\c_mult_set
\expandafter\newtoks\c_mult_set
\letcsname#1_t_#6\endcsname\c_mult_set
\fi}
diff --git a/tex/context/base/mkxl/pack-rul.mkxl b/tex/context/base/mkxl/pack-rul.mkxl
index 28fed1c51..21ba03040 100644
--- a/tex/context/base/mkxl/pack-rul.mkxl
+++ b/tex/context/base/mkxl/pack-rul.mkxl
@@ -82,7 +82,8 @@
\expandafter\noexpand\csname inherited#1framedbox\endcsname}} % new
\protected\def\mult_interfaces_install_inherited_framed#1#2#3#4#5#6#7#8#9%
- {\enforced\frozen\def#5##1##2{\ifx##1\relax#6{##2}\else#4{##1}{##2}\fi}%
+% {\enforced\frozen\def#5##1##2{\ifx##1\relax#6{##2}\else#4{##1}{##2}\fi}%
+ {\enforced\frozen\def#5##1##2{\ifrelax##1#6{##2}\else#4{##1}{##2}\fi}%
\enforced\frozen\def#6##1{\ifcsname\??framed:##1\endcsname\??framed:##1\else\??empty\fi}% root
\frozen\instance\protected\def#8%
{\bgroup
@@ -1516,7 +1517,8 @@
\fi
\fi
%
- \ifx\postprocessframebox\relax \else
+% \ifx\postprocessframebox\relax \else
+ \ifrelax\postprocessframebox \else
% better: \pushmacro\\postprocessframebox etc
\let\next\postprocessframebox
\let\postprocessframebox\relax % prevent nesting
diff --git a/tex/context/base/mkxl/spac-ali.mkxl b/tex/context/base/mkxl/spac-ali.mkxl
index 88bdd44eb..5d4d46497 100644
--- a/tex/context/base/mkxl/spac-ali.mkxl
+++ b/tex/context/base/mkxl/spac-ali.mkxl
@@ -203,7 +203,8 @@
\else
% todo: take set value or none .. better done elsewhere (200 is normal)
\fi
- \ifx\dohyphens\relax % was 2.5 in old implementation using scratch registers
+% \ifx\dohyphens\relax % was 2.5 in old implementation using scratch registers
+ \ifrelax\dohyphens % was 2.5 in old implementation using scratch registers
\hyphenpenalty\dimexpr2.8\hsize/\dimexpr#1\relax\relax % 50 in raggedright/raggedleft
%\else
% no need to do something as we're in \nohyphens
@@ -579,7 +580,8 @@
\permanent\protected\def\spac_align_prepare#1% deferred
{\edef\m_spac_align_asked{#1}%
\expandafter\let\expandafter\raggedcommand\csname\??alignmentnormalcache\m_spac_align_asked\endcsname
- \ifx\raggedcommand\relax
+% \ifx\raggedcommand\relax
+ \ifrelax\raggedcommand
\spac_align_add_to_cache
\else
\expandafter\let\expandafter\updateraggedskips\csname\??alignmentraggedcache\m_spac_align_asked\endcsname
@@ -592,7 +594,8 @@
\permanent\tolerant\protected\def\setupalign[#1]% immediate
{\edef\m_spac_align_asked{#1}%
\expandafter\let\expandafter\raggedcommand\csname\??alignmentnormalcache\m_spac_align_asked\endcsname
- \ifx\raggedcommand\relax
+% \ifx\raggedcommand\relax
+ \ifrelax\raggedcommand
\spac_align_add_to_cache
\else
\expandafter\let\expandafter\updateraggedskips\csname\??alignmentraggedcache\m_spac_align_asked\endcsname
@@ -613,7 +616,8 @@
\def\spac_align_use_indeed
{\expandafter\let\expandafter\raggedcommand\csname\??alignmentnormalcache\m_spac_align_asked\endcsname
- \ifx\raggedcommand\relax
+% \ifx\raggedcommand\relax
+ \ifrelax\raggedcommand
\spac_align_add_to_cache
\else
\expandafter\let\expandafter\updateraggedskips\csname\??alignmentraggedcache\m_spac_align_asked\endcsname
@@ -626,7 +630,8 @@
{\begingroup
\edef\m_spac_align_asked{#1}%
\expandafter\let\expandafter\raggedcommand\csname\??alignmentnormalcache\m_spac_align_asked\endcsname
- \ifx\raggedcommand\relax
+% \ifx\raggedcommand\relax
+ \ifrelax\raggedcommand
\spac_align_add_to_cache
\fi
\endgroup}
@@ -892,7 +897,8 @@
% tracing:
\def\spac_show_par_data#1%
- {\ifx#1\relax\else
+% {\ifx#1\relax\else
+ {\ifrelax#1\else
\hbox{\string#1: \the#1}\endgraf
\expandafter\spac_show_par_data
\fi}
diff --git a/tex/context/base/mkxl/spac-hor.mkxl b/tex/context/base/mkxl/spac-hor.mkxl
index e7263ae76..b4704319f 100644
--- a/tex/context/base/mkxl/spac-hor.mkxl
+++ b/tex/context/base/mkxl/spac-hor.mkxl
@@ -246,7 +246,7 @@
% was : \hskip\parindent
% can be: \indent
% but we test:
- \noindent\hskip\parindent
+ \noindent\hskip\parindent % hm, we cannot undent this one
\fi \fi}
% public:
@@ -877,36 +877,36 @@
{\processcommacommand[#1]\spac_tolerances_step_horizontal}%
\fi}
-%D \macros
-%D {pushindentation,popindentation}
-%D
-%D The pushing and popping is done by:
-
-\newbox\b_spac_indentations_a
-\newbox\b_spac_indentations_b
-
-\permanent\protected\def\pushindentation
- {\begingroup
- \ifhmode
- \unskip
- \setbox\b_spac_indentations_a\lastbox % get \strut if present
- \unskip
- \setbox\b_spac_indentations_b\lastbox % get \indent generated box
- \unskip
- \else
- \dontleavehmode % was \hskip\zeropoint % switch to horizontal mode
- \unskip
- \setbox\b_spac_indentations_a\lastbox % get \indent generated box
- \setbox\b_spac_indentations_b\emptybox
- \fi}
-
-\permanent\protected\def\popindentation
- {\box\b_spac_indentations_b
- \box\b_spac_indentations_a
- \endgroup}
+% %D \macros
+% %D {pushindentation,popindentation}
+% %D
+% %D The pushing and popping is done by:
+%
+% \newbox\b_spac_indentations_a
+% \newbox\b_spac_indentations_b
+%
+% \permanent\protected\def\pushindentation
+% {\begingroup
+% \ifhmode
+% \unskip
+% \setbox\b_spac_indentations_a\lastbox % get \strut if present
+% \unskip
+% \setbox\b_spac_indentations_b\lastbox % get \indent generated box
+% \unskip
+% \else
+% \dontleavehmode % was \hskip\zeropoint % switch to horizontal mode
+% \unskip
+% \setbox\b_spac_indentations_a\lastbox % get \indent generated box
+% \setbox\b_spac_indentations_b\emptybox
+% \fi}
+%
+% \permanent\protected\def\popindentation
+% {\box\b_spac_indentations_b
+% \box\b_spac_indentations_a
+% \endgroup}
-%D The only complication lays in \type{\strut}. In \PLAIN\
-%D \TEX\ a \type{\strut} is defined as:
+%D The only complication lays in \type{\strut}. In \PLAIN\ \TEX\ a \type{\strut} is
+%D defined as:
%D
%D \starttyping
%D \def\strut%
diff --git a/tex/context/base/mkxl/syst-aux.mkxl b/tex/context/base/mkxl/syst-aux.mkxl
index 043cd818d..bb6793ce1 100644
--- a/tex/context/base/mkxl/syst-aux.mkxl
+++ b/tex/context/base/mkxl/syst-aux.mkxl
@@ -1405,7 +1405,8 @@
\let\m_syst_helpers_process_action\relax
\let\m_syst_helpers_process_action_unknown\relax
\syst_helpers_raw_process_action#3\ignorearguments\ignorearguments\ignorearguments
- \ifx\m_syst_helpers_process_action\relax
+% \ifx\m_syst_helpers_process_action\relax
+ \ifrelax\m_syst_helpers_process_action
\m_syst_helpers_process_action_unknown
\else
\m_syst_helpers_process_action
@@ -2867,7 +2868,8 @@
\resetglobal
\permanent\protected\def\doglobal
- {\ifx\redoglobal\relax
+% {\ifx\redoglobal\relax
+ {\ifrelax\redoglobal
\enforced\let\redoglobal\global
\enforced\let\dodoglobal\syst_helpers_dodo_global
\fi}
@@ -3010,11 +3012,17 @@
%D Nowadays we don't mind a few more tokens if we can gain a bit of speed.
-\def\syst_helpers_do_increment#1{\dodoglobal\edef#1{\the\numexpr\ifdefined#1\ifx#1\relax\else#1\fi\fi+\plusone \relax}}
-\def\syst_helpers_do_decrement#1{\dodoglobal\edef#1{\the\numexpr\ifdefined#1\ifx#1\relax\else#1\fi\fi+\minusone\relax}}
+% \def\syst_helpers_do_increment#1{\dodoglobal\edef#1{\the\numexpr\ifdefined#1\ifx#1\relax\else#1\fi\fi+\plusone \relax}}
+% \def\syst_helpers_do_decrement#1{\dodoglobal\edef#1{\the\numexpr\ifdefined#1\ifx#1\relax\else#1\fi\fi+\minusone\relax}}
-\def\syst_helpers_do_do_do_increment#1,#2){\dodoglobal\edef#1{\the\numexpr\ifdefined#1\ifx#1\relax\else#1\fi\fi+#2\relax}}
-\def\syst_helpers_do_do_do_decrement#1,#2){\dodoglobal\edef#1{\the\numexpr\ifdefined#1\ifx#1\relax\else#1\fi\fi-#2\relax}}
+% \def\syst_helpers_do_do_do_increment#1,#2){\dodoglobal\edef#1{\the\numexpr\ifdefined#1\ifx#1\relax\else#1\fi\fi+#2\relax}}
+% \def\syst_helpers_do_do_do_decrement#1,#2){\dodoglobal\edef#1{\the\numexpr\ifdefined#1\ifx#1\relax\else#1\fi\fi-#2\relax}}
+
+\def\syst_helpers_do_increment#1{\dodoglobal\edef#1{\the\numexpr\ifdefined#1\ifrelax#1\else#1\fi\fi+\plusone \relax}}
+\def\syst_helpers_do_decrement#1{\dodoglobal\edef#1{\the\numexpr\ifdefined#1\ifrelax#1\else#1\fi\fi+\minusone\relax}}
+
+\def\syst_helpers_do_do_do_increment#1,#2){\dodoglobal\edef#1{\the\numexpr\ifdefined#1\ifrelax#1\else#1\fi\fi+#2\relax}}
+\def\syst_helpers_do_do_do_decrement#1,#2){\dodoglobal\edef#1{\the\numexpr\ifdefined#1\ifrelax#1\else#1\fi\fi-#2\relax}}
\def\syst_helpers_do_do_increment(#1%
{\def\m_syst_action_yes{\syst_helpers_do_do_do_increment#1}%
@@ -3521,7 +3529,8 @@
\permanent\protected\def\newevery#1#2%
{\ifx#1\everypar\else\newtoks#1\fi% we test for redefinition elsewhere
- \ifx#2\relax\orelse\ifdefined#2\else
+% \ifx#2\relax\orelse\ifdefined#2\else
+ \ifrelax#2\orelse\ifdefined#2\else
\expandafter\newtoks\csname\??extraevery\csstring#1\endcsname
\frozen\protected\edef#2{\syst_helpers_every#1\csname\??extraevery\csstring#1\endcsname}%
\fi}
@@ -4347,7 +4356,8 @@
\let \m_syst_helpers_scratch\empty
\permanent\protected\def\appendtoks#1\to#2%
- {\ifx\dodoglobal\relax
+% {\ifx\dodoglobal\relax
+ {\ifrelax\dodoglobal
\expandafter\toksapp
\else
\resetglobal
@@ -4355,7 +4365,8 @@
\fi#2{#1}}
\permanent\protected\def\prependtoks#1\to#2%
- {\ifx\dodoglobal\relax
+% {\ifx\dodoglobal\relax
+ {\ifrelax\dodoglobal
\expandafter\tokspre
\else
\resetglobal
@@ -4463,7 +4474,8 @@
%D Also:
\permanent\protected\def\appendetoks#1\to#2%
- {\ifx\dodoglobal\relax
+% {\ifx\dodoglobal\relax
+ {\ifrelax\dodoglobal
\expandafter\etoksapp
\else
\resetglobal
@@ -4471,7 +4483,8 @@
\fi#2{#1}}
\permanent\protected\def\prependetoks#1\to#2%
- {\ifx\dodoglobal\relax
+% {\ifx\dodoglobal\relax
+ {\ifrelax\dodoglobal
\expandafter\etokspre
\else
\resetglobal
@@ -5907,14 +5920,20 @@
\permanent\def\lastdigit#1%
{\expandafter\thelastdigit\number#1\relax}
+% \permanent\def\thelastdigit#1#2%
+% {\ifx#2\relax#1\else\expandafter\thelastdigit\expandafter#2\fi}
+
\permanent\def\thelastdigit#1#2%
- {\ifx#2\relax#1\else\expandafter\thelastdigit\expandafter#2\fi}
+ {\ifrelax#2#1\else\expandafter\thelastdigit\expandafter#2\fi}
\permanent\def\lasttwodigits#1%
{\expandafter\thelasttwodigits\expandafter0\number#1\relax}
+% \permanent\def\thelasttwodigits#1#2#3% 0 dig ... \relax
+% {\ifx#3\relax#1#2\else\expandafter\thelasttwodigits\expandafter#2\expandafter#3\fi}
+
\permanent\def\thelasttwodigits#1#2#3% 0 dig ... \relax
- {\ifx#3\relax#1#2\else\expandafter\thelasttwodigits\expandafter#2\expandafter#3\fi}
+ {\ifrelax#3#1#2\else\expandafter\thelasttwodigits\expandafter#2\expandafter#3\fi}
%D \macros
%D {serializecommalist}
@@ -6002,7 +6021,8 @@
\permanent\def\filterfromvalue#1#2#3% value max n
{\expandafter\doubleexpandafter\csname % we use the fact that an
- \expandafter\ifx\csname#1\endcsname\relax % undefined cs has become \relax
+% \expandafter\ifx\csname#1\endcsname\relax % undefined cs has become \relax
+ \expandafter\ifrelax\csname#1\endcsname % undefined cs has become \relax
\csstring\gobbleoneargument % which we then gobble here
\else
\dofilterfromstr{#2}{#3}%
@@ -6201,7 +6221,8 @@
\permanent\def\flag#1{\csname\??flag#1\endcsname}
\permanent\def\doifelseflagged#1%
- {\expandafter\ifx\csname\??flag#1\endcsname\relax
+% {\expandafter\ifx\csname\??flag#1\endcsname\relax
+ {\expandafter\ifrelax\csname\??flag#1\endcsname
\expandafter\secondoftwoarguments
\orelse\ifcase\csname\??flag#1\endcsname
\expandafter\firstoftwoarguments
@@ -6212,7 +6233,8 @@
\aliased\let\doifflaggedelse\doifelseflagged
\permanent\def\doifnotflagged#1%
- {\expandafter\ifx\csname\??flag#1\endcsname\relax
+% {\expandafter\ifx\csname\??flag#1\endcsname\relax
+ {\expandafter\ifrelax\csname\??flag#1\endcsname
\expandafter\firstofoneargument
\orelse\ifcase\csname\??flag#1\endcsname
\expandafter\gobbleoneargument
@@ -6224,7 +6246,8 @@
{\defcsname#1#3\expandafter\endcsname\expandafter{\csname#1#5\endcsname}}
\def\syst_helpers_if_non_zero_positive_else#1#2\end % #3#4%
- {\ifx#1\relax
+% {\ifx#1\relax
+ {\ifrelax#1%
\ifcase\privatescratchcounter
\endgroup
\doubleexpandafter\secondoftwoarguments
diff --git a/tex/context/base/mkxl/syst-ini.mkxl b/tex/context/base/mkxl/syst-ini.mkxl
index d78db8aeb..f80b8ac55 100644
--- a/tex/context/base/mkxl/syst-ini.mkxl
+++ b/tex/context/base/mkxl/syst-ini.mkxl
@@ -296,7 +296,8 @@
\protected\def\setconstantvalue#1#2{\csname#1\endcsname\numexpr#2\relax}
\protected\def\newconstant#1%
- {\ifx#1\relax
+% {\ifx#1\relax
+ {\ifrelax#1%
%\writestatus{!!!!!!!!!!}{\string #1 => RELAX}%
\unletfrozen#1%
\newcount#1%
@@ -334,13 +335,23 @@
\def\syst_basics_allocate_nop#1#2#3#4#5% last class method max name
{\writestatus{warning}{\string#2 \string#5 is already defined (\string\relax\space it first)}}
+% \def\syst_basics_allocate#1#2#3#4#5% last class method max name
+% {\ifx#5\undefined
+% \expandafter\syst_basics_allocate_yes
+% \orelse\ifx#5\relax
+% \expandafter\syst_basics_allocate_yes
+% \else
+% \expandafter\syst_basics_allocate_nop
+% \fi
+% #1#2#3#4#5}
+
\def\syst_basics_allocate#1#2#3#4#5% last class method max name
- {\ifx#5\undefined
- \expandafter\syst_basics_allocate_yes
- \orelse\ifx#5\relax
+ {\ifrelax#5%
\expandafter\syst_basics_allocate_yes
- \else
+ \orelse\ifdefined#5%
\expandafter\syst_basics_allocate_nop
+ \else
+ \expandafter\syst_basics_allocate_yes
\fi
#1#2#3#4#5}
diff --git a/tex/context/interface/mkii/keys-cs.xml b/tex/context/interface/mkii/keys-cs.xml
index 1a0faa2b5..eddd75da9 100644
--- a/tex/context/interface/mkii/keys-cs.xml
+++ b/tex/context/interface/mkii/keys-cs.xml
@@ -780,6 +780,7 @@
<cd:constant name='deepnumbercommand' value='deepnumbercommand'/>
<cd:constant name='deeptextcommand' value='deeptextcommand'/>
<cd:constant name='default' value='implicitni'/>
+ <cd:constant name='define' value='define'/>
<cd:constant name='delay' value='prodleva'/>
<cd:constant name='depth' value='hloubka'/>
<cd:constant name='depthcorrection' value='korekcehloubky'/>
@@ -2085,7 +2086,7 @@
<cd:command name='startnarrower' value='startzuzeni'/>
<cd:command name='startopposite' value='startprotejsek'/>
<cd:command name='startoverlay' value='startprekryv'/>
- <cd:command name='startoverzicht' value='startprehled'/>
+ <cd:command name='startoverview' value='startprehled'/>
<cd:command name='startpacked' value='startzhustene'/>
<cd:command name='startpositioning' value='startumistovani'/>
<cd:command name='startproduct' value='startprodukt'/>
@@ -2128,7 +2129,7 @@
<cd:command name='stopnarrower' value='stopzuzeni'/>
<cd:command name='stopopposite' value='stopprotejsek'/>
<cd:command name='stopoverlay' value='stopprekryv'/>
- <cd:command name='stopoverzicht' value='stopprehled'/>
+ <cd:command name='stopoverview' value='stopprehled'/>
<cd:command name='stoppacked' value='stopzhustene'/>
<cd:command name='stoppositioning' value='stopumistovani'/>
<cd:command name='stopproduct' value='stopprodukt'/>
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index bdaa695f5..55b49886a 100644
--- a/tex/generic/context/luatex/luatex-fonts-merged.lua
+++ b/tex/generic/context/luatex/luatex-fonts-merged.lua
@@ -1,6 +1,6 @@
-- merged file : c:/data/develop/context/sources/luatex-fonts-merged.lua
-- parent file : c:/data/develop/context/sources/luatex-fonts.lua
--- merge date : 2020-11-25 16:53
+-- merge date : 2020-11-25 19:15
do -- begin closure to overcome local limits and interference