summaryrefslogtreecommitdiff
path: root/tex/context/base/mkxl
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2020-11-24 20:00:53 +0100
committerContext Git Mirror Bot <phg@phi-gamma.net>2020-11-24 20:00:53 +0100
commit8bd2c828616004e3ba3df597f4eb212bfb4102a8 (patch)
tree4617fe68be4b9c42b67998f83491e4c320eda488 /tex/context/base/mkxl
parent4d449fb3fb6f3530caaca0dbde455241eeca331f (diff)
downloadcontext-8bd2c828616004e3ba3df597f4eb212bfb4102a8.tar.gz
2020-11-24 19:01:00
Diffstat (limited to 'tex/context/base/mkxl')
-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/font-ini.mklx11
-rw-r--r--tex/context/base/mkxl/font-mat.mklx4
-rw-r--r--tex/context/base/mkxl/font-sel.mklx18
-rw-r--r--tex/context/base/mkxl/font-sty.mklx6
-rw-r--r--tex/context/base/mkxl/lang-frq.mkxl4
-rw-r--r--tex/context/base/mkxl/lang-ini.mkxl9
-rw-r--r--tex/context/base/mkxl/lang-mis.mkxl8
-rw-r--r--tex/context/base/mkxl/lang-wrd.mkxl14
-rw-r--r--tex/context/base/mkxl/page-inf.mkxl4
-rw-r--r--tex/context/base/mkxl/syst-ini.mkxl40
-rw-r--r--tex/context/base/mkxl/type-ini.mklx2
-rw-r--r--tex/context/base/mkxl/typo-dir.mkxl2
14 files changed, 74 insertions, 52 deletions
diff --git a/tex/context/base/mkxl/cont-new.mkxl b/tex/context/base/mkxl/cont-new.mkxl
index fa94e9d3d..e8fd03810 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.24 00:35}
+\newcontextversion{2020.11.24 18:58}
%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 29d7c5512..fa3d1ecd3 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.24 00:35}
+\edef\contextversion{2020.11.24 18:58}
%overloadmode 1 % check frozen / warning
%overloadmode 2 % check frozen / error
diff --git a/tex/context/base/mkxl/font-ini.mklx b/tex/context/base/mkxl/font-ini.mklx
index 5d39001b1..0e3c414d5 100644
--- a/tex/context/base/mkxl/font-ini.mklx
+++ b/tex/context/base/mkxl/font-ini.mklx
@@ -333,7 +333,7 @@
\the\everybodyfont
\settrue\c_font_synchronize}
-\let\savedfont\empty
+\mutable\let\savedfont\empty
\installmacrostack\savedfont
@@ -559,8 +559,8 @@
\processcommalist[#commands]{\font_basics_define_fontstyle_indeed{#style}}}
\def\font_basics_define_fontstyle_indeed#style#command%
- {\setvalue{\??fontshortstyle#command}{#style}%
- \setvalue{\??fontstyle #command}{\csname#style\endcsname}}
+ {\defcsname\??fontshortstyle#command\endcsname{#style}%
+ \defcsname\??fontstyle #command\endcsname{\csname#style\endcsname}}
\permanent\protected\def\definefontsize[#size]%
{\ifcsname\??fontsizeknown#size\endcsname \else
@@ -1983,6 +1983,9 @@
\scratchcounterthree\fontid\font\relax
% parent -> x -> xx
% parent -> xx
+ %
+ % this can become \integerdef
+ %
\global\expandafter\chardef\csname\??fontscalex \number\scratchcounterone\endcsname\scratchcountertwo
\global\expandafter\chardef\csname\??fontscalexx\number\scratchcounterone\endcsname\scratchcounterthree
\global\expandafter\chardef\csname\??fontscalex \number\scratchcountertwo\endcsname\scratchcounterthree
@@ -2417,7 +2420,7 @@
\installcorenamespace{predefinedfont}
\permanent\protected\def\predefinefont[#1]#*[#2]% global !
- {\setugvalue{#1}{\font_basics_predefine{#1}{#2}}}
+ {\protected\gdefcsname#1\endcsname{\font_basics_predefine{#1}{#2}}}
\permanent\protected\def\predefinedfont[#1]% global !
{\ifcsname\??predefinedfont#1\endcsname
diff --git a/tex/context/base/mkxl/font-mat.mklx b/tex/context/base/mkxl/font-mat.mklx
index 39e799ec3..510d64d05 100644
--- a/tex/context/base/mkxl/font-mat.mklx
+++ b/tex/context/base/mkxl/font-mat.mklx
@@ -389,9 +389,9 @@
\appendtoks
\ifnum\fontid\textfont\zerocount=\fontid\textfont\plusthree
- \letvalue{\??fontmathstoredstrategy\fontclass}\font_helpers_set_math_partial_bold_strategy
+ \letcsname\??fontmathstoredstrategy\fontclass\endcsname\font_helpers_set_math_partial_bold_strategy
\else
- \letvalue{\??fontmathstoredstrategy\fontclass}\font_helpers_set_math_full_bold_strategy
+ \letcsname\??fontmathstoredstrategy\fontclass\endcsname\font_helpers_set_math_full_bold_strategy
\fi
\to \t_font_math_strategies
diff --git a/tex/context/base/mkxl/font-sel.mklx b/tex/context/base/mkxl/font-sel.mklx
index 6c9ab3d7e..be9215704 100644
--- a/tex/context/base/mkxl/font-sel.mklx
+++ b/tex/context/base/mkxl/font-sel.mklx
@@ -58,7 +58,7 @@
\installcorenamespace {selectfontpreset}
\permanent\tolerant\protected\def\definefontfamilypreset[#name]#spacer[#settings]%
- {\setvalue{\??selectfontpreset#name}{\setupcurrentselectfont[#settings]}%
+ {\defcsname\??selectfontpreset#name\endcsname{\setupcurrentselectfont[#settings]}%
\clf_definefontfamilypreset{#name}{\luaexpanded{#settings}}}
\def\selectfont_preset_process#name%
@@ -247,15 +247,19 @@
% tf = … | * … | name:… | name:* … | file:… | file:* … | style:medium
\permanent\tolerant\protected\def\definefontfamily[#typeface]#spacer[#style]#spacer[#family]#spacer[#settings]%
- {\doifelseassignment{#settings}
- {\selectfont_register[#style][\c!label={#typeface},\c!style={#style},\c!name={#family},#settings]}
- {\selectfont_register[#style][\c!label={#typeface},\c!style={#style},\c!name={#family},\c!preset={#settings}]}%
+ {\ifhastok={#settings}%
+ \selectfont_register[#style][\c!label={#typeface},\c!style={#style},\c!name={#family},#settings]%
+ \else
+ \selectfont_register[#style][\c!label={#typeface},\c!style={#style},\c!name={#family},\c!preset={#settings}]%
+ \fi
\clf_definefontfamily\selectfont_index\relax}
\permanent\tolerant\def\definefallbackfamily[#typeface]#spacer[#style]#spacer[#family]#spacer[#settings]%
- {\doifelseassignment{#settings}
- {\selectfont_register[#style][\c!label={#typeface},\c!style={#style},\c!name={#family},#settings]}
- {\selectfont_register[#style][\c!label={#typeface},\c!style={#style},\c!name={#family},\c!preset={#settings}]}%
+ {\ifhastok={#settings}%
+ \selectfont_register[#style][\c!label={#typeface},\c!style={#style},\c!name={#family},#settings]%
+ \else
+ \selectfont_register[#style][\c!label={#typeface},\c!style={#style},\c!name={#family},\c!preset={#settings}]%
+ \fi
\clf_definefallbackfamily\selectfont_index\relax}
\permanent\tolerant\protected\def\setupfontfamily[#style]#spacer[#settings]%
diff --git a/tex/context/base/mkxl/font-sty.mklx b/tex/context/base/mkxl/font-sty.mklx
index e5fe227e2..01c02665e 100644
--- a/tex/context/base/mkxl/font-sty.mklx
+++ b/tex/context/base/mkxl/font-sty.mklx
@@ -63,12 +63,12 @@
% no redefinition
\orelse\ifnum\c_fonts_basics_alternative_style_method=\plusone
\ifparameter#command\or
- \permanent\setuevalue{#command}{\triggergroupedcommandcs\begincsname\??alternativestyle#command\endcsname}%
+ \permanent\protected\edefcsname#command\endcsname{\triggergroupedcommandcs\begincsname\??alternativestyle#command\endcsname}%
\else
- \permanent\setuvalue{#command}{\triggergroupedcommand{#variantone}}%
+ \permanent\protected\defcsname#command\endcsname{\triggergroupedcommand{#variantone}}%
\fi
\else
- \permanent\setuvalue{#command}{\triggergroupedcommand{#variantone}}%
+ \permanent\protected\defcsname#command\endcsname{\triggergroupedcommand{#variantone}}%
\fi}
\def\font_helpers_apply_alternative_style
diff --git a/tex/context/base/mkxl/lang-frq.mkxl b/tex/context/base/mkxl/lang-frq.mkxl
index 07bc1654d..6b9853af5 100644
--- a/tex/context/base/mkxl/lang-frq.mkxl
+++ b/tex/context/base/mkxl/lang-frq.mkxl
@@ -93,9 +93,9 @@
\permanent\protected\def\startcharactertable[#1]#2\stopcharactertable % \dimexpr has fuzzy lookahead
{\startnointerference
- \setgvalue{\??frequencywidths#1}{#2}% the width vector
+ \gdefcsname\??frequencywidths#1\endcsname{#2}% the width vector
\scratchcounter\zerocount \def\charfreq##1 ##2 {\advance\scratchcounter\plusone} #2%
- \setxvalue{\??frequencycounts#1}{\the\scratchcounter}% the character count
+ \xdefcsname\??frequencycounts#1\endcsname{\the\scratchcounter}% the character count
\stopnointerference}
%D \macros
diff --git a/tex/context/base/mkxl/lang-ini.mkxl b/tex/context/base/mkxl/lang-ini.mkxl
index 6a230e165..9c55bcee3 100644
--- a/tex/context/base/mkxl/lang-ini.mkxl
+++ b/tex/context/base/mkxl/lang-ini.mkxl
@@ -196,21 +196,22 @@
{\ifcondition\validassignment{#2}%
\doifelselanguage{#1}
{\getparameters[\??language#1][#2]}
- {\setvalue{\??languagelinked#1}{#1}%
+ {\defcsname\??languagelinked#1\endcsname{#1}%
\getparameters[\??language#1][\c!state=\v!start,#2]%
\lang_basics_install_indeed{#1}{#1}}%
\edef\currentsetuplanguage{#1}%
\clf_definelanguage{#1}{\specificlanguageparameter{#1}\s!default}%
\the\everysetuplanguage
\else
- \setvalue{\??languagelinked#1}{#2}%
+ \defcsname\??languagelinked#1\endcsname{#2}%
\clf_setlanguagesynonym{#1}{#2}%
\lang_basics_install_indeed{#1}{#2}%
\fi}
\def\lang_basics_install_indeed#1#2%
- {\doifnot{\specificlanguageparameter{#1}\c!command}\v!no
- {\ifcsname#1\endcsname\else\frozen\instance\setuvalue{#1}{\lang_basics_set_current[#2]}\fi}}
+ {\ifcstok{\specificlanguageparameter{#1}\c!command}\v!no\else
+ \ifcsname#1\endcsname\else\frozen\instance\setuvalue{#1}{\lang_basics_set_current[#2]}\fi
+ \fi}
%D When the second argument is a language identifier, a synonym is created. This
%D feature is present because we used dutch mnemonics in the dutch version, but
diff --git a/tex/context/base/mkxl/lang-mis.mkxl b/tex/context/base/mkxl/lang-mis.mkxl
index de15ec526..5f883041a 100644
--- a/tex/context/base/mkxl/lang-mis.mkxl
+++ b/tex/context/base/mkxl/lang-mis.mkxl
@@ -192,9 +192,9 @@
\installcorenamespace{discretionarymode}
\permanent\protected\def\installdiscretionary#1#2%
- {\setevalue{\??discretionarymath\detokenize{#1}}{\detokenize{#1}}% ?
- \setvalue {\??discretionarytext\detokenize{#1}}{#2}%
- \setvalue {\??discretionaryboth\detokenize{#1}}{\lang_discretionaries_command#1}%
+ {\edefcsname\??discretionarymath\detokenize{#1}\endcsname{\detokenize{#1}}% ?
+ \defcsname \??discretionarytext\detokenize{#1}\endcsname{#2}%
+ \defcsname \??discretionaryboth\detokenize{#1}\endcsname{\lang_discretionaries_command#1}%
\scratchcounter\expandafter`\detokenize{#1}%
\expandafter\uedcatcodecommand\expandafter\ctxcatcodes\expandafter\scratchcounter\csname\??discretionaryboth\detokenize{#1}\endcsname}
@@ -366,7 +366,7 @@
%{\discretionary options \plusthree{\hbox{#1}}{}{\hbox{#1}}}
\permanent\protected\def\definetextmodediscretionary #1
- {\setvalue{\??discretionaryaction\detokenize{#1}}}
+ {\defcsname\??discretionaryaction\detokenize{#1}\endcsname}
% \start \hsize 1mm
% test |||test test|||, test\blank
diff --git a/tex/context/base/mkxl/lang-wrd.mkxl b/tex/context/base/mkxl/lang-wrd.mkxl
index d0964a677..ba1cfc571 100644
--- a/tex/context/base/mkxl/lang-wrd.mkxl
+++ b/tex/context/base/mkxl/lang-wrd.mkxl
@@ -39,12 +39,14 @@
\installdirectcommandhandler \??spell {spellchecking}
\appendtoks
- \doifelse{\directspellcheckingparameter\c!state}\v!start
- {\clf_enablespellchecking
- method {\directspellcheckingparameter\c!method}%
- list {\directspellcheckingparameter\c!list}%
- \relax}
- {\clf_disablespellchecking}%
+ \ifcstok{\directspellcheckingparameter\c!state}\v!start
+ \clf_enablespellchecking
+ method {\directspellcheckingparameter\c!method}%
+ list {\directspellcheckingparameter\c!list}%
+ \relax
+ \else
+ \clf_disablespellchecking
+ \fi
\to \everysetupspellchecking
\permanent\tolerant\protected\def\loadspellchecklist[#1]#*[#2]% can be public implementor
diff --git a/tex/context/base/mkxl/page-inf.mkxl b/tex/context/base/mkxl/page-inf.mkxl
index 251e0c046..1e4f6e1d7 100644
--- a/tex/context/base/mkxl/page-inf.mkxl
+++ b/tex/context/base/mkxl/page-inf.mkxl
@@ -25,8 +25,6 @@
\mutable\let\currentversioninfo\empty
\mutable\let\currentversiontext\empty
-\aliased\let\version\setupversion
-
\let\page_info_add_to_box\gobbleoneargument
\permanent\tolerant\protected\def\setupversion[#1]%
@@ -45,6 +43,8 @@
\fi
\the\everysetupversion}
+\aliased\let\version\setupversion
+
\protected\def\page_info_place_info % at the bottom of the page
{\begincsname\??layoutinfo\currentversioninfo\endcsname}
diff --git a/tex/context/base/mkxl/syst-ini.mkxl b/tex/context/base/mkxl/syst-ini.mkxl
index 3295c7d97..d78db8aeb 100644
--- a/tex/context/base/mkxl/syst-ini.mkxl
+++ b/tex/context/base/mkxl/syst-ini.mkxl
@@ -41,7 +41,7 @@
\immutable\integerdef\commentcatcode 14
\immutable\integerdef\invalidcatcode 15
-%chardef\zeroasciicode 0
+%immutable\integerdef\zeroasciicode 0
\immutable\integerdef\tabasciicode 9
\immutable\integerdef\newlineasciicode 10 % don't confuse this one with \endoflineasciicode
\immutable\integerdef\formfeedasciicode 12
@@ -140,10 +140,6 @@
%D Temp hack ... build bot down:
-\ifdefined\gletcsname \else \protected\def\gletcsname{\global\letcsname } \fi
-\ifdefined\gdefcsname \else \protected\def\gdefcsname{\global\defcsname } \fi
-\ifdefined\xdefcsname \else \protected\def\xdefcsname{\global\edefcsname} \fi
-
%D We create (for now) aliases:
\directlua {
@@ -152,6 +148,10 @@
function tex.enableprimitives() end % so we kind of protect what's there
}
+\ifdefined\gletcsname \else \protected\def\gletcsname{\global\letcsname } \fi
+\ifdefined\gdefcsname \else \protected\def\gdefcsname{\global\defcsname } \fi
+\ifdefined\xdefcsname \else \protected\def\xdefcsname{\global\edefcsname} \fi
+
\immutable\def\space{ }
\immutable\def\empty{}
@@ -455,18 +455,30 @@
%D More allocations:
+% \newcount \maxcount \immutable\maxcount 2147483647
+
+% \newdimen \zeropoint \immutable\zeropoint 0pt
+% \newdimen \onepoint \immutable\onepoint 1pt
+% \newdimen \halfapoint \immutable\halfapoint 0.5pt
+% \newdimen \maxdimen \immutable\maxdimen 16383.99999pt % 1073741823sp
+% \newdimen \onebasepoint \immutable\onebasepoint 1bp
+% \newdimen \scaledpoint \immutable\scaledpoint 1sp
+% \newdimen \thousandpoint \immutable\thousandpoint 1000pt
+
+\immutable\integerdef \maxcount 2147483647
+
+\immutable\dimensiondef \zeropoint 0pt
+\immutable\dimensiondef \onepoint 1pt
+\immutable\dimensiondef \halfapoint 0.5pt
+\immutable\dimensiondef \maxdimen 16383.99999pt % 1073741823sp
+\immutable\dimensiondef \onebasepoint 1bp
+\immutable\dimensiondef \scaledpoint 1sp
+\immutable\dimensiondef \thousandpoint 1000pt
+
\newskip \zeroskip \immutable\zeroskip 0pt plus 0pt minus 0pt
-\newdimen \zeropoint \immutable\zeropoint 0pt
-\newdimen \onepoint \immutable\onepoint 1pt
-\newdimen \halfapoint \immutable\halfapoint 0.5pt
-\newdimen \maxdimen \immutable\maxdimen 16383.99999pt % 1073741823sp
-\newcount \maxcount \immutable\maxcount 2147483647
-\newdimen \onebasepoint \immutable\onebasepoint 1bp
-\newdimen \scaledpoint \immutable\scaledpoint 1sp
-\newdimen \thousandpoint \immutable\thousandpoint 1000pt
+
\newmuskip\zeromuskip \immutable\zeromuskip 0mu
\newmuskip\onemuskip \immutable\onemuskip 1mu
-
\newmuskip\muquad \immutable\muquad 18mu
\aliased\let\points \onepoint
diff --git a/tex/context/base/mkxl/type-ini.mklx b/tex/context/base/mkxl/type-ini.mklx
index bbb2ae2c7..1eae5a747 100644
--- a/tex/context/base/mkxl/type-ini.mklx
+++ b/tex/context/base/mkxl/type-ini.mklx
@@ -104,7 +104,7 @@
\permanent\let\stoptypescriptcollection\relax
\permanent\protected\def\usetypescriptfile[#filename]%
- {\iftok{#filename}{\v!reset}%
+ {\ifcstok{#filename}\v!reset
\let\typescriptfiles\empty
\else
\splitfilename{#filename}%
diff --git a/tex/context/base/mkxl/typo-dir.mkxl b/tex/context/base/mkxl/typo-dir.mkxl
index a8ba1fc70..693a49c18 100644
--- a/tex/context/base/mkxl/typo-dir.mkxl
+++ b/tex/context/base/mkxl/typo-dir.mkxl
@@ -52,7 +52,7 @@
% maybe use chardefs
\def\typo_dir_get_mode
- {\def\currentbidimode{\clf_getbidimode
+ {\edef\currentbidimode{\clf_getbidimode
scope {\directionsparameter\c!bidi}%
method {\directionsparameter\c!method}%
fences {\directionsparameter\c!fences}%