summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2022-10-22 11:49:10 +0200
committerContext Git Mirror Bot <phg@phi-gamma.net>2022-10-22 11:49:10 +0200
commitdd0a80e5ec42f60832e7d5dc47210e6f3545c400 (patch)
tree46a766cfb43fde35555f95a99ffb7e156bbec943
parent5d31142615a7efaf833be860e412995b42bf9c3c (diff)
downloadcontext-dd0a80e5ec42f60832e7d5dc47210e6f3545c400.tar.gz
2022-10-22 11:22:00
-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/mkiv/cont-new.mkiv2
-rw-r--r--tex/context/base/mkiv/context.mkiv2
-rw-r--r--tex/context/base/mkiv/phys-dim.mkiv15
-rw-r--r--tex/context/base/mkiv/status-files.pdfbin24598 -> 24600 bytes
-rw-r--r--tex/context/base/mkiv/status-lua.pdfbin263133 -> 263132 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/font-mat.mklx165
-rw-r--r--tex/context/base/mkxl/font-unk.mkxl28
-rw-r--r--tex/context/base/mkxl/mlib-int.lmt16
-rw-r--r--tex/context/base/mkxl/phys-dim.mkxl11
-rw-r--r--tex/context/fonts/mkiv/type-imp-xits.mkiv5
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua2
15 files changed, 66 insertions, 188 deletions
diff --git a/tex/context/base/mkii/cont-new.mkii b/tex/context/base/mkii/cont-new.mkii
index 506b3f703..32680be28 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{2022.10.21 21:11}
+\newcontextversion{2022.10.22 11:20}
%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 828709ead..73cbdb23f 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{2022.10.21 21:11}
+\edef\contextversion{2022.10.22 11:20}
%D For those who want to use this:
diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv
index 191926e8f..4c07bceb5 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{2022.10.21 21:11}
+\newcontextversion{2022.10.22 11:20}
%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 5dfadb660..86374e2d7 100644
--- a/tex/context/base/mkiv/context.mkiv
+++ b/tex/context/base/mkiv/context.mkiv
@@ -49,7 +49,7 @@
%D {YYYY.MM.DD HH:MM} format.
\edef\contextformat {\jobname}
-\edef\contextversion{2022.10.21 21:11}
+\edef\contextversion{2022.10.22 11:20}
%D Kind of special:
diff --git a/tex/context/base/mkiv/phys-dim.mkiv b/tex/context/base/mkiv/phys-dim.mkiv
index b390ce64a..a05300cce 100644
--- a/tex/context/base/mkiv/phys-dim.mkiv
+++ b/tex/context/base/mkiv/phys-dim.mkiv
@@ -170,9 +170,8 @@
% \definesymbol[units][times][\ifmmode\cdot\else\kern.2\emwidth\cdot\kern.2\emwidth\fi]
\unexpanded\def\digitstextbinop#1% assumes preceding
- {\ifmmode#1\else\fourperemspace\nobreak#1\fourperemspace\fi}
+ {\ifmmode\mathord{#1}\else\nobreak#1\fi}
-%def\digitstimessymbol{\ifmmode\cdot\else\digitstextbinop\cdot\fi}
\def\digitstimessymbol{\digitstextbinop\times}
\unexpanded\def\digitszeropadding {\hphantom{0}}
@@ -406,8 +405,13 @@
% \endcsname}
\unexpanded\def\phys_units_separator
- {\edef\currentunitsseparator{\unitparameter\c!separator}% no longer needed
- \ifcsname\??unitseparator\currentunitsseparator\endcsname\lastnamedcs\else\cdot\fi}
+ {\ifcsname\??unitseparator\unitparameter\c!separator\endcsname
+ \lastnamedcs
+ \else
+ \csname\??unitseparator\v!normal\endcsname
+ \fi}
+
+\installunitsseparator\v!normal{\ifmmode\mathord{\cdot}\else\cdot\fi}
\installunitsseparator\v!normal {\cdot}
\installunitsseparator\v!big {\unitsbigspace}
@@ -521,9 +525,6 @@
{\edef\p_order{\unitparameter\c!order}%
\ifx\p_order\v!reverse\expandafter\clf_unit_reverse\else\expandafter\clf_unit_normal\fi{\detokenize{#1}}}
-\unexpanded\def\digitstextbinnop#1%
- {\ifmmode#1\else#1\fourperemspace\fi}
-
\unexpanded\def\unitsPUS#1#2#3{\phys_units_next\prefixtext{#1}\unittext{#2}\unitsraise{\suffixtext{#3}}\c_phys_units_state\plusone} % suffix
\unexpanded\def\unitsPU #1#2{\phys_units_next\prefixtext{#1}\unittext{#2}\c_phys_units_state\plusthree} % unit
\unexpanded\def\unitsPS #1#2{\phys_units_next\prefixtext{#1}\unitsraise{\suffixtext{#2}}\c_phys_units_state\plusone} % suffix
diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf
index 66cc6048a..c02ca06bf 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 e798b7a58..8c4741da4 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 2950090ea..f890b8877 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{2022.10.21 21:11}
+\newcontextversion{2022.10.22 11:20}
%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 c5baad13d..9c7a785f8 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.
\immutable\edef\contextformat {\jobname}
-\immutable\edef\contextversion{2022.10.21 21:11}
+\immutable\edef\contextversion{2022.10.22 11:20}
%overloadmode 1 % check frozen / warning
%overloadmode 2 % check frozen / error
diff --git a/tex/context/base/mkxl/font-mat.mklx b/tex/context/base/mkxl/font-mat.mklx
index 0f3a2a222..868f44198 100644
--- a/tex/context/base/mkxl/font-mat.mklx
+++ b/tex/context/base/mkxl/font-mat.mklx
@@ -35,6 +35,12 @@
%D commented. For what it's worth: this variant switches a bit faster too and
%D produces less logging but I doubt if anyone will notice that.
+%D We now have bidi handled via a tweak in the goodie file which means that we
+%D could simplify the implementation and get rid of the (four) extra families
+%D needed. For now we retain the zero/three designation for mr/mb but that might
+%D go away. Actually we could drop the number of families in the engine to sixteen
+%D again or even four if we need the space for more classes or something else.
+
%D Be nice:
\ifdefined\??fontinstanceready \else \installcorenamespace{fontinstanceready} \fi
@@ -55,7 +61,9 @@
%D We currently use only one math family but in the future we might consider using a
%D second one for bold math. For the moment we keep the \MKII\ method of using a
%D token register for definitions but we already dropped the text and symbols ones
-%D since they now live in the same family.
+%D since they now live in the same family. When we go always compact we can simplify
+%D the code even more. For previous implementations see the \MKIV\ code and the
+%D repository pre October 2022.
\newtoks \t_font_math_strategies
\newconditional\c_font_synchronize_math_fonts \settrue\c_font_synchronize_math_fonts
@@ -72,30 +80,21 @@
%D Because we want to keep mr=.. and mb=... settings (read: not break downward
%D compatibility by enforcing mrlr etc) we need a bit more code that optimal.
-% todo: \c_font_fam_mr
-
-\aliased\let\c_font_fam_mr \zerocount % math regular
-%aliased\let\c_font_fam_mr_lr\plusone % math regular l2r
-%aliased\let\c_font_fam_mr_rl\plustwo % math regular r2l
-
-\aliased\let\c_font_fam_mb \plusthree % math bold
-%aliased\let\c_font_fam_mb_lr\plusfour % math bold l2r
-%aliased\let\c_font_fam_mb_rl\plusfive % math bold r2l
+\aliased\let\c_font_fam_mr\zerocount % math regular
+\aliased\let\c_font_fam_mb\plusthree % math bold
\definesystemattribute[mathfamily][public]
-%newconditional\c_font_bidirectional_mathstrategy % can be default, not that much overhead: \settrue\c_font_bidirectional_mathstrategy
-\newconditional\c_font_complete_bold_mathstrategy \settrue\c_font_complete_bold_mathstrategy
+% when we are always true we can as well remove this test:
-% \frozen ...
+\newconditional\c_font_complete_bold_mathstrategy \settrue\c_font_complete_bold_mathstrategy
\immutable\def\mathtextsuffix {-text}
\immutable\def\mathscriptsuffix {-script}
\immutable\def\mathscriptscriptsuffix{-scriptscript}
-%D Beware: truefontname also does a fallback on defaultfontclass so there
-%D can be some interference here, which is why we use a different method
-%D for bold.
+%D Beware: truefontname also does a fallback on defaultfontclass so there can be
+%D some interference here, which is why we use a different method for bold.
\def\font_helpers_set_math_family_a
{\ifcsname\??fontinstanceready\fontclass -\fontbody-\s!mm-\fontfamily-\fontsize\endcsname \setfalse\c_font_auto_size
@@ -121,7 +120,6 @@
\settrue \c_font_auto_size
\fi}
-%def\mathsizesuffix{\ifcase\fontface\or\mathtextsuffix\or\mathscriptsuffix\or\mathscriptscriptsuffix\fi}
\mutable\let\mathsizesuffix\empty
\mutable\let\fontfamily\relax % for now public but it is a helper
@@ -335,112 +333,10 @@
\let\m_font_fallbacks\empty
\let\m_font_goodies \empty
-% \appendtoks % can be analyzed once
-% % why here ..
-% %\edef\m_font_class_direction{\ifcsname\??fontclass\fontclass\s!mm\s!direction\endcsname\csname\??fontclass\fontclass\s!mm\s!direction\endcsname\fi}%
-% \edef\m_font_class_direction{\begincsname\??fontclass\fontclass\s!mm\s!direction\endcsname}%
-% % ...
-% \ifx\m_font_class_direction\v!both
-% \settrue\c_font_bidirectional_mathstrategy
-% \else
-% \setfalse\c_font_bidirectional_mathstrategy
-% \fi
-% \to \t_font_math_strategies
-%
-% \def\font_helpers_bidirectional_mathstrategy_yes
-% {\font_helpers_set_math_family\c_font_fam_mr_lr\s!mrlr
-% \font_helpers_set_math_family\c_font_fam_mr_rl\s!mrrl
-% \ifnum\fontid\textfont\c_font_fam_mr=\fontid\textfont\c_font_fam_mr_lr\else
-% \font_helpers_bidirectional_mathstrategy_yes_changed
-% \fi}
-%
-% \def\font_helpers_bidirectional_mathstrategy_yes_changed
-% {\textfont \c_font_fam_mr\textfont \c_font_fam_mr_lr
-% \scriptfont \c_font_fam_mr\scriptfont \c_font_fam_mr_lr
-% \scriptscriptfont\c_font_fam_mr\scriptscriptfont\c_font_fam_mr_lr}
-%
-% \def\font_helpers_bidirectional_mathstrategy_nop
-% {\font_helpers_set_math_family\c_font_fam_mr\s!mr
-% \ifnum\fontid\textfont\c_font_fam_mr_rl=\fontid\textfont\c_font_fam_mr\else
-% \font_helpers_bidirectional_mathstrategy_nop_changed
-% \fi}
-%
-% \def\font_helpers_bidirectional_mathstrategy_nop
-% {\font_helpers_set_math_family\c_font_fam_mr\s!mr}
-%
-% \def\font_helpers_bidirectional_mathstrategy_nop_changed
-% {\textfont \c_font_fam_mr_lr\textfont \c_font_fam_mr
-% \scriptfont \c_font_fam_mr_lr\scriptfont \c_font_fam_mr
-% \scriptscriptfont\c_font_fam_mr_lr\scriptscriptfont\c_font_fam_mr
-% \textfont \c_font_fam_mr_rl\textfont \c_font_fam_mr
-% \scriptfont \c_font_fam_mr_rl\scriptfont \c_font_fam_mr
-% \scriptscriptfont\c_font_fam_mr_rl\scriptscriptfont\c_font_fam_mr}
-%
-% \appendtoks
-% \ifconditional\c_font_bidirectional_mathstrategy
-% \font_helpers_bidirectional_mathstrategy_yes
-% \else
-% \font_helpers_bidirectional_mathstrategy_nop
-% \fi
-% \to \t_font_math_strategies
-
\appendtoks
\font_helpers_set_math_family\c_font_fam_mr\s!mr
\to \t_font_math_strategies
-% \def\font_helpers_complete_bold_mathstrategy_yes_bidi
-% {\font_helpers_set_math_family_bold\c_font_fam_mb_lr\s!mblr\c_font_fam_mr_lr
-% \font_helpers_set_math_family_bold\c_font_fam_mb_rl\s!mbrl\c_font_fam_mr_rl
-% \ifnum\fontid\textfont\c_font_fam_mb=\fontid\textfont\c_font_fam_mb_lr\else
-% \font_helpers_complete_bold_mathstrategy_yes_bidi_changed
-% \fi}
-%
-% \def\font_helpers_complete_bold_mathstrategy_yes_bidi_changed
-% {\textfont \c_font_fam_mb\textfont \c_font_fam_mb_lr
-% \scriptfont \c_font_fam_mb\scriptfont \c_font_fam_mb_lr
-% \scriptscriptfont\c_font_fam_mb\scriptscriptfont\c_font_fam_mb_lr}
-%
-% \def\font_helpers_complete_bold_mathstrategy_yes
-% {\font_helpers_set_math_family_bold\c_font_fam_mb\s!mb\c_font_fam_mr\relax
-% \ifnum\fontid\textfont\c_font_fam_mb_rl=\fontid\textfont\c_font_fam_mb\else
-% \font_helpers_complete_bold_mathstrategy_yes_changed
-% \fi}
-%
-% \def\font_helpers_complete_bold_mathstrategy_yes_changed
-% {\textfont \c_font_fam_mb_rl\textfont \c_font_fam_mb
-% \scriptfont \c_font_fam_mb_rl\scriptfont \c_font_fam_mb
-% \scriptscriptfont\c_font_fam_mb_rl\scriptscriptfont\c_font_fam_mb
-% \textfont \c_font_fam_mb_lr\textfont \c_font_fam_mb
-% \scriptfont \c_font_fam_mb_lr\scriptfont \c_font_fam_mb
-% \scriptscriptfont\c_font_fam_mb_lr\scriptscriptfont\c_font_fam_mb}
-%
-% \def\font_helpers_complete_bold_mathstrategy_nop
-% {\ifnum\fontid\textfont\c_font_fam_mb=\fontid\textfont\c_font_fam_mr\else
-% \font_helpers_complete_bold_mathstrategy_nop_changed
-% \fi}
-%
-% \def\font_helpers_complete_bold_mathstrategy_nop_changed
-% {\textfont \c_font_fam_mb \textfont \c_font_fam_mr
-% \scriptfont \c_font_fam_mb \scriptfont \c_font_fam_mr
-% \scriptscriptfont\c_font_fam_mb \scriptscriptfont\c_font_fam_mr
-% \textfont \c_font_fam_mb_lr\textfont \c_font_fam_mr_lr
-% \scriptfont \c_font_fam_mb_lr\scriptfont \c_font_fam_mr_lr
-% \scriptscriptfont\c_font_fam_mb_lr\scriptscriptfont\c_font_fam_mr_lr
-% \textfont \c_font_fam_mb_rl\textfont \c_font_fam_mr_rl
-% \scriptfont \c_font_fam_mb_rl\scriptfont \c_font_fam_mr_rl
-% \scriptscriptfont\c_font_fam_mb_rl\scriptscriptfont\c_font_fam_mr_rl}
-%
-% \def\font_helpers_apply_complete_bold_mathstrategy
-% {\ifconditional\c_font_complete_bold_mathstrategy
-% \ifconditional\c_font_bidirectional_mathstrategy
-% \font_helpers_complete_bold_mathstrategy_yes_bidi
-% \else
-% \font_helpers_complete_bold_mathstrategy_yes
-% \fi
-% \else
-% \font_helpers_complete_bold_mathstrategy_nop
-% \fi}
-
\def\font_helpers_complete_bold_mathstrategy_yes
{\font_helpers_set_math_family_bold\c_font_fam_mb\s!mb\c_font_fam_mr\relax}
@@ -450,9 +346,9 @@
\fi}
\def\font_helpers_complete_bold_mathstrategy_nop_changed
- {\textfont \c_font_fam_mb \textfont \c_font_fam_mr
- \scriptfont \c_font_fam_mb \scriptfont \c_font_fam_mr
- \scriptscriptfont\c_font_fam_mb \scriptscriptfont\c_font_fam_mr}
+ {\textfont \c_font_fam_mb\textfont \c_font_fam_mr
+ \scriptfont \c_font_fam_mb\scriptfont \c_font_fam_mr
+ \scriptscriptfont\c_font_fam_mb\scriptscriptfont\c_font_fam_mr}
\def\font_helpers_apply_complete_bold_mathstrategy
{\ifconditional\c_font_complete_bold_mathstrategy
@@ -473,28 +369,6 @@
\fam\zerocount % all characters and symbols are in this family
\to \everymathematics
-% \protected\def\font_helpers_synchronize_math_family_mr
-% {\c_attr_mathfamily\ifconditional\c_font_bidirectional_mathstrategy
-% \ifconditional\c_math_right_to_left
-% \plustwo
-% \else
-% \plusone
-% \fi
-% \else
-% \zerocount
-% \fi}
-%
-% \protected\def\font_helpers_synchronize_math_family_mb
-% {\c_attr_mathfamily\ifconditional\c_font_bidirectional_mathstrategy
-% \ifconditional\c_math_right_to_left
-% \ifconditional\c_font_pseudo_bold_math_state\pluseight\else\plusfive\fi
-% \else
-% \ifconditional\c_font_pseudo_bold_math_state\plusseven\else\plusfour\fi
-% \fi
-% \else
-% \ifconditional\c_font_pseudo_bold_math_state\plussix\else\plusthree\fi
-% \fi}
-
\protected\def\font_helpers_synchronize_math_family_mr
{\c_attr_mathfamily\zerocount}
@@ -512,9 +386,6 @@
\letcsname\??fontmathsynchronizer\s!bi \endcsname\font_helpers_synchronize_math_family_mb
\letcsname\??fontmathsynchronizer\empty\endcsname\font_helpers_synchronize_math_family_mr
-% \def\font_helpers_synchronize_math_family
-% {\csname\??fontmathsynchronizer\ifcsname\??fontmathsynchronizer\fontalternative\endcsname\fontalternative\fi\endcsname}
-
\def\font_helpers_synchronize_math_family
{\ifcsname\??fontmathsynchronizer\fontalternative\endcsname
\lastnamedcs
diff --git a/tex/context/base/mkxl/font-unk.mkxl b/tex/context/base/mkxl/font-unk.mkxl
index 986a5c9bf..bc079add9 100644
--- a/tex/context/base/mkxl/font-unk.mkxl
+++ b/tex/context/base/mkxl/font-unk.mkxl
@@ -110,7 +110,7 @@
\s!sl=SerifSlanted sa 1,
\s!bi=SerifBoldItalic sa 1,
\s!bs=SerifBoldSlanted sa 1,
- \s!sc=SerifCaps sa 1]
+ \s!sc=SerifCaps sa 1] % obsolete, is a font feature now
\definebodyfont [default] [ss]
[\s!tf=Sans sa 1,
@@ -119,7 +119,7 @@
\s!sl=SansSlanted sa 1,
\s!bi=SansBoldItalic sa 1,
\s!bs=SansBoldSlanted sa 1,
- \s!sc=SansCaps sa 1]
+ \s!sc=SansCaps sa 1] % obsolete, is a font feature now
\definebodyfont [default] [tt]
[\s!tf=Mono sa 1,
@@ -128,20 +128,24 @@
\s!sl=MonoSlanted sa 1,
\s!bi=MonoBoldItalic sa 1,
\s!bs=MonoBoldSlanted sa 1,
- \s!sc=MonoCaps sa 1]
+ \s!sc=MonoCaps sa 1] % obsolete, is a font feature now
+
+% \definebodyfont [default] [mm]
+% [\s!mr =MathRoman mo 1,
+% \s!mrlr=MathRomanL2R mo 1,
+% \s!mrrl=MathRomanR2L mo 1,
+% \s!mb =MathRomanBold mo 1,
+ % \s!mblr=MathRomanBoldL2R mo 1,
+% \s!mbrl=MathRomanBoldR2L mo 1]
\definebodyfont [default] [mm]
- [\s!mr =MathRoman mo 1,
- \s!mrlr=MathRomanL2R mo 1,
- \s!mrrl=MathRomanR2L mo 1,
- \s!mb =MathRomanBold mo 1,
- \s!mblr=MathRomanBoldL2R mo 1,
- \s!mbrl=MathRomanBoldR2L mo 1]
-
-\definebodyfont [default] [hw]
+ [\s!mr=MathRoman mo 1,
+ \s!mb=MathRomanBold mo 1]
+
+\definebodyfont [default] [hw] % only for lucida, can be just a typeface
[\s!tf=Handwriting sa 1]
-\definebodyfont [default] [cg]
+\definebodyfont [default] [cg] % only for lucida, can be just a typeface
[\s!tf=Calligraphy sa 1]
%D These definitions come into action as soon as names are mapped onto real file
diff --git a/tex/context/base/mkxl/mlib-int.lmt b/tex/context/base/mkxl/mlib-int.lmt
index 686f1985d..47560e8c4 100644
--- a/tex/context/base/mkxl/mlib-int.lmt
+++ b/tex/context/base/mkxl/mlib-int.lmt
@@ -140,17 +140,17 @@ end
do
- local c_realpageno = getcount("realpageno") registerdirect("RealPageNumber", function() return getcount(c_realpageno) end)
- local c_lastpageno = getcount("lastpageno") registerdirect("LastPageNumber", function() return getcount(c_lastpageno) end)
+ local c_realpageno = iscount("realpageno") registerdirect("RealPageNumber", function() return getcount(c_realpageno) end)
+ local c_lastpageno = iscount("lastpageno") registerdirect("LastPageNumber", function() return getcount(c_lastpageno) end)
- local c_userpageno = getcount("userpageno") registerdirect("PageNumber", function() return getcount(c_userpageno) end)
- local c_lastpageno = getcount("lastpageno") registerdirect("NOfPages", function() return getcount(c_lastpageno) end)
+ local c_userpageno = iscount("userpageno") registerdirect("PageNumber", function() return getcount(c_userpageno) end)
+ local c_lastpageno = iscount("lastpageno") registerdirect("NOfPages", function() return getcount(c_lastpageno) end)
- local c_subpageno = getcount("subpageno") registerdirect("SubPageNumber", function() return getcount(c_subpageno) end)
- local c_lastsubpageno = getcount("lastsubpageno") registerdirect("NOfSubPages", function() return getcount(c_lastsubpageno) end)
+ local c_subpageno = iscount("subpageno") registerdirect("SubPageNumber", function() return getcount(c_subpageno) end)
+ local c_lastsubpageno = iscount("lastsubpageno") registerdirect("NOfSubPages", function() return getcount(c_lastsubpageno) end)
- local c_mofcolumns = getcount("mofcolumns") registerdirect("CurrentColumn", function() return getcount(c_mofcolumns) end)
- local c_nofcolumns = getcount("nofcolumns") registerdirect("NOfColumns", function() return getcount(c_nofcolumns) end)
+ local c_mofcolumns = iscount("mofcolumns") registerdirect("CurrentColumn", function() return getcount(c_mofcolumns) end)
+ local c_nofcolumns = iscount("nofcolumns") registerdirect("NOfColumns", function() return getcount(c_nofcolumns) end)
end
diff --git a/tex/context/base/mkxl/phys-dim.mkxl b/tex/context/base/mkxl/phys-dim.mkxl
index 90475f5b8..8277ba231 100644
--- a/tex/context/base/mkxl/phys-dim.mkxl
+++ b/tex/context/base/mkxl/phys-dim.mkxl
@@ -168,7 +168,7 @@
% \definesymbol[units][times][\ifmmode\cdot\else\kern.2\emwidth\cdot\kern.2\emwidth\fi]
\permanent\protected\def\digitstextbinop#1% assumes preceding
- {\ifmmode#1\else\fourperemspace\nobreak#1\fourperemspace\fi}
+ {\ifmmode\mathord{#1}\else\nobreak#1\fi}
\frozen\def\digitstimessymbol{\digitstextbinop\times}
@@ -389,9 +389,9 @@
{\defcsname\??unitseparator#1\endcsname{#2}}
\protected\def\phys_units_separator
- {\ifcsname\??unitseparator\unitparameter\c!separator\endcsname\lastnamedcs\else\cdot\fi}
+ {\ifcsname\??unitseparator\unitparameter\c!separator\endcsname\lastnamedcs\else\ifmmode\mathord\cdot\else\cdot\fi\fi} % Made \cdot an "ord" in math mode -GP
-\installunitsseparator\v!normal{\cdot}
+\installunitsseparator\v!normal{\ifmmode\mathord\cdot\else\cdot\fi} % Made \cdot an "ord" in math mode -GP
\installunitsseparator\v!big {\unitsbigspace}
\installunitsseparator\v!medium{\unitsmediumspace}
\installunitsseparator\v!small {\unitssmallspace}
@@ -507,9 +507,6 @@
{\edef\p_order{\unitparameter\c!order}%
\ifx\p_order\v!reverse\expandafter\clf_unit_reverse\else\expandafter\clf_unit_normal\fi{\detokenize{#1}}}
-\permanent\protected\def\digitstextbinnop#1%
- {\ifmmode#1\else#1\fourperemspace\fi}
-
\permanent\protected\def\unitsPUS#1#2#3{\phys_units_next\prefixtext{#1}\unittext{#2}\unitsraise{\suffixtext{#3}}\c_phys_units_state\plusone} % suffix
\permanent\protected\def\unitsPU #1#2{\phys_units_next\prefixtext{#1}\unittext{#2}\c_phys_units_state\plusthree} % unit
\permanent\protected\def\unitsPS #1#2{\phys_units_next\prefixtext{#1}\unitsraise{\suffixtext{#2}}\c_phys_units_state\plusone} % suffix
@@ -685,7 +682,7 @@
\setfalse\c_phys_units_dospace
\phys_units_start}
-\permanent\protected\def\unitsTIMES
+\permanent\protected\def\unitsTIMES % GP: Does this do anything? HH: yes "times"
{\ifnum\c_phys_units_state=\plusone % suffix
\else
\unitssmallspace
diff --git a/tex/context/fonts/mkiv/type-imp-xits.mkiv b/tex/context/fonts/mkiv/type-imp-xits.mkiv
index ce8d4209d..4051f9618 100644
--- a/tex/context/fonts/mkiv/type-imp-xits.mkiv
+++ b/tex/context/fonts/mkiv/type-imp-xits.mkiv
@@ -17,6 +17,11 @@
% scheduled for release by the end of 2010. Version 1.2, which will include Type 1
% fonts for use with LaTeX, will follow in 2011. So, we are on our own anyway.
+% In \MKXL\ (aka LMTX) we now use StixTwo because Xits is frozen and not maintained
+% any longer. The obsolete LR2 and R2L variants are just ignored because in \LMTX\
+% all math fonts have bidi support injected for which we use a companion font that is
+% derived from Xits.
+
\definefontfeature[xitsmath][copymathscripts=yes] % see lfg file
\loadtypescriptfile[texgyre]
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index e8138b736..480f4ef66 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 : 2022-10-21 21:11
+-- merge date : 2022-10-22 11:20
do -- begin closure to overcome local limits and interference