summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tex/context/base/bibl-tra.mkiv3
-rw-r--r--tex/context/base/char-def.lua214
-rw-r--r--tex/context/base/math-ini.mkiv28
-rw-r--r--tex/context/base/math-noa.lua31
-rw-r--r--tex/context/base/mult-de.tex1
-rw-r--r--tex/context/base/mult-def.lua10
-rw-r--r--tex/context/base/mult-en.tex1
-rw-r--r--tex/context/base/mult-fr.tex1
-rw-r--r--tex/context/base/mult-it.tex1
-rw-r--r--tex/context/base/mult-nl.tex1
-rw-r--r--tex/context/base/mult-ro.tex1
-rw-r--r--tex/context/base/prop-mis.mkiv2
-rw-r--r--tex/context/base/strc-itm.mkii33
-rw-r--r--tex/context/base/strc-lst.lua2
-rw-r--r--tex/context/base/strc-not.mkii32
-rw-r--r--tex/context/base/x-mathml.lua93
-rw-r--r--tex/context/interface/keys-cs.xml1
-rw-r--r--tex/context/interface/keys-de.xml1
-rw-r--r--tex/context/interface/keys-en.xml1
-rw-r--r--tex/context/interface/keys-fr.xml1
-rw-r--r--tex/context/interface/keys-it.xml1
-rw-r--r--tex/context/interface/keys-nl.xml1
-rw-r--r--tex/context/interface/keys-pe.xml1
-rw-r--r--tex/context/interface/keys-ro.xml1
24 files changed, 276 insertions, 186 deletions
diff --git a/tex/context/base/bibl-tra.mkiv b/tex/context/base/bibl-tra.mkiv
index 485d93fb7..4dff006b5 100644
--- a/tex/context/base/bibl-tra.mkiv
+++ b/tex/context/base/bibl-tra.mkiv
@@ -787,8 +787,7 @@
{\dobeginoflist
\the\initializebibdefinitions
\edef\currentlist{pubs}%
-% \doif{\listparameter\c!criterium}\v!cite{\setuplist[pubs][\c!criterium=\v!here]}%
- \doif{\listparameter\c!criterium}\v!cite{\setuplist[pubs][\c!criterium=\v!previous]}%
+ \doif{\listparameter\c!criterium}\v!cite{\setuplist[pubs][\c!criterium=\v!here]}%
\ctxlua{bibtex.hacks.reset(\number\bibtexoncemode)}%
\placestructurelist{pubs}{\listparameter\c!criterium}{\listparameter\c!number}% only collects
\ctxlua{bibtex.hacks.flush("\@@pbsorttype")}%
diff --git a/tex/context/base/char-def.lua b/tex/context/base/char-def.lua
index 6256852fb..005c41075 100644
--- a/tex/context/base/char-def.lua
+++ b/tex/context/base/char-def.lua
@@ -8711,6 +8711,8 @@ characters.data={
description="GREEK CAPITAL LETTER ALPHA",
direction="l",
lccode=0x03B1,
+ mathclass="variable",
+ mathname="Alpha",
linebreak="al",
unicodeslot=0x0391,
},
@@ -8722,6 +8724,8 @@ characters.data={
description="GREEK CAPITAL LETTER BETA",
direction="l",
lccode=0x03B2,
+ mathclass="variable",
+ mathname="Beta",
linebreak="al",
unicodeslot=0x0392,
},
@@ -8732,6 +8736,8 @@ characters.data={
contextname="greekGamma",
description="GREEK CAPITAL LETTER GAMMA",
direction="l",
+ mathclass="variable",
+ mathname="Gamma",
lccode=0x03B3,
linebreak="al",
unicodeslot=0x0393,
@@ -8742,6 +8748,8 @@ characters.data={
contextname="greekDelta",
description="GREEK CAPITAL LETTER DELTA",
direction="l",
+ mathclass="variable",
+ mathname="Delta",
lccode=0x03B4,
linebreak="al",
unicodeslot=0x0394,
@@ -8753,6 +8761,8 @@ characters.data={
contextname="greekEpsilon",
description="GREEK CAPITAL LETTER EPSILON",
direction="l",
+ mathclass="variable",
+ mathname="Epsilon",
lccode=0x03B5,
linebreak="al",
unicodeslot=0x0395,
@@ -8764,6 +8774,8 @@ characters.data={
contextname="greekZeta",
description="GREEK CAPITAL LETTER ZETA",
direction="l",
+ mathclass="variable",
+ mathname="Zeta",
lccode=0x03B6,
linebreak="al",
unicodeslot=0x0396,
@@ -8775,6 +8787,8 @@ characters.data={
contextname="greekEta",
description="GREEK CAPITAL LETTER ETA",
direction="l",
+ mathclass="variable",
+ mathname="Eta",
lccode=0x03B7,
linebreak="al",
unicodeslot=0x0397,
@@ -8786,6 +8800,8 @@ characters.data={
contextname="greekTheta",
description="GREEK CAPITAL LETTER THETA",
direction="l",
+ mathclass="variable",
+ mathname="Theta",
lccode=0x03B8,
linebreak="al",
unicodeslot=0x0398,
@@ -8797,6 +8813,8 @@ characters.data={
contextname="greekIota",
description="GREEK CAPITAL LETTER IOTA",
direction="l",
+ mathclass="variable",
+ mathname="Iota",
lccode=0x03B9,
linebreak="al",
unicodeslot=0x0399,
@@ -8808,6 +8826,8 @@ characters.data={
contextname="greekKappa",
description="GREEK CAPITAL LETTER KAPPA",
direction="l",
+ mathclass="variable",
+ mathname="Kappa",
lccode=0x03BA,
linebreak="al",
unicodeslot=0x039A,
@@ -8819,6 +8839,8 @@ characters.data={
contextname="greekLambda",
description="GREEK CAPITAL LETTER LAMDA",
direction="l",
+ mathclass="variable",
+ mathname="Lambda",
lccode=0x03BB,
linebreak="al",
unicodeslot=0x039B,
@@ -8830,6 +8852,8 @@ characters.data={
contextname="greekMu",
description="GREEK CAPITAL LETTER MU",
direction="l",
+ mathclass="variable",
+ mathname="Mu",
lccode=0x03BC,
linebreak="al",
unicodeslot=0x039C,
@@ -8841,6 +8865,8 @@ characters.data={
contextname="greekNu",
description="GREEK CAPITAL LETTER NU",
direction="l",
+ mathclass="variable",
+ mathname="Nu",
lccode=0x03BD,
linebreak="al",
unicodeslot=0x039D,
@@ -8852,6 +8878,8 @@ characters.data={
contextname="greekXi",
description="GREEK CAPITAL LETTER XI",
direction="l",
+ mathclass="variable",
+ mathname="Xi",
lccode=0x03BE,
linebreak="al",
unicodeslot=0x039E,
@@ -8863,6 +8891,8 @@ characters.data={
contextname="greekOmicron",
description="GREEK CAPITAL LETTER OMICRON",
direction="l",
+ mathclass="variable",
+ mathname="Omicron",
lccode=0x03BF,
linebreak="al",
unicodeslot=0x039F,
@@ -8874,6 +8904,8 @@ characters.data={
contextname="greekPi",
description="GREEK CAPITAL LETTER PI",
direction="l",
+ mathclass="variable",
+ mathname="Pi",
lccode=0x03C0,
linebreak="al",
unicodeslot=0x03A0,
@@ -8885,6 +8917,8 @@ characters.data={
contextname="greekRho",
description="GREEK CAPITAL LETTER RHO",
direction="l",
+ mathclass="variable",
+ mathname="Rho",
lccode=0x03C1,
linebreak="al",
unicodeslot=0x03A1,
@@ -8896,6 +8930,8 @@ characters.data={
contextname="greekSigma",
description="GREEK CAPITAL LETTER SIGMA",
direction="l",
+ mathclass="variable",
+ mathname="Sigma",
lccode=0x03C3,
linebreak="al",
unicodeslot=0x03A3,
@@ -8907,6 +8943,8 @@ characters.data={
contextname="greekTau",
description="GREEK CAPITAL LETTER TAU",
direction="l",
+ mathclass="variable",
+ mathname="Tau",
lccode=0x03C4,
linebreak="al",
unicodeslot=0x03A4,
@@ -8918,6 +8956,8 @@ characters.data={
contextname="greekUpsilon",
description="GREEK CAPITAL LETTER UPSILON",
direction="l",
+ mathclass="variable",
+ mathname="Upsilon",
lccode=0x03C5,
linebreak="al",
unicodeslot=0x03A5,
@@ -8929,6 +8969,8 @@ characters.data={
contextname="greekPhi",
description="GREEK CAPITAL LETTER PHI",
direction="l",
+ mathclass="variable",
+ mathname="Phi",
lccode=0x03C6,
linebreak="al",
unicodeslot=0x03A6,
@@ -8940,6 +8982,8 @@ characters.data={
contextname="greekChi",
description="GREEK CAPITAL LETTER CHI",
direction="l",
+ mathclass="variable",
+ mathname="Chi",
lccode=0x03C7,
linebreak="al",
unicodeslot=0x03A7,
@@ -8951,6 +8995,8 @@ characters.data={
contextname="greekPsi",
description="GREEK CAPITAL LETTER PSI",
direction="l",
+ mathclass="variable",
+ mathname="Psi",
lccode=0x03C8,
linebreak="al",
unicodeslot=0x03A8,
@@ -8961,6 +9007,8 @@ characters.data={
contextname="greekOmega",
description="GREEK CAPITAL LETTER OMEGA",
direction="l",
+ mathclass="variable",
+ mathname="Omega",
lccode=0x03C9,
linebreak="al",
unicodeslot=0x03A9,
@@ -9056,6 +9104,8 @@ characters.data={
description="GREEK SMALL LETTER ALPHA",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="alpha",
uccode=0x0391,
unicodeslot=0x03B1,
},
@@ -9067,6 +9117,8 @@ characters.data={
description="GREEK SMALL LETTER BETA",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="beta",
uccode=0x0392,
unicodeslot=0x03B2,
},
@@ -9078,6 +9130,8 @@ characters.data={
description="GREEK SMALL LETTER GAMMA",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="gamma",
uccode=0x0393,
unicodeslot=0x03B3,
},
@@ -9089,6 +9143,8 @@ characters.data={
description="GREEK SMALL LETTER DELTA",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="delta",
uccode=0x0394,
unicodeslot=0x03B4,
},
@@ -9100,6 +9156,8 @@ characters.data={
description="GREEK SMALL LETTER EPSILON",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="varepsilon",
uccode=0x0395,
unicodeslot=0x03B5,
},
@@ -9111,6 +9169,8 @@ characters.data={
description="GREEK SMALL LETTER ZETA",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="zeta",
uccode=0x0396,
unicodeslot=0x03B6,
},
@@ -9122,6 +9182,8 @@ characters.data={
description="GREEK SMALL LETTER ETA",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="eta",
uccode=0x0397,
unicodeslot=0x03B7,
},
@@ -9133,6 +9195,8 @@ characters.data={
description="GREEK SMALL LETTER THETA",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="theta",
uccode=0x0398,
unicodeslot=0x03B8,
},
@@ -9144,6 +9208,8 @@ characters.data={
description="GREEK SMALL LETTER IOTA",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="iota",
uccode=0x0399,
unicodeslot=0x03B9,
},
@@ -9155,6 +9221,8 @@ characters.data={
description="GREEK SMALL LETTER KAPPA",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="kappa",
uccode=0x039A,
unicodeslot=0x03BA,
},
@@ -9166,6 +9234,8 @@ characters.data={
description="GREEK SMALL LETTER LAMDA",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="lambda",
uccode=0x039B,
unicodeslot=0x03BB,
},
@@ -9176,6 +9246,8 @@ characters.data={
description="GREEK SMALL LETTER MU",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="mu",
uccode=0x039C,
unicodeslot=0x03BC,
},
@@ -9187,6 +9259,8 @@ characters.data={
description="GREEK SMALL LETTER NU",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="nu",
uccode=0x039D,
unicodeslot=0x03BD,
},
@@ -9198,6 +9272,8 @@ characters.data={
description="GREEK SMALL LETTER XI",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="xi",
uccode=0x039E,
unicodeslot=0x03BE,
},
@@ -9209,6 +9285,8 @@ characters.data={
description="GREEK SMALL LETTER OMICRON",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="omicron",
uccode=0x039F,
unicodeslot=0x03BF,
},
@@ -9220,6 +9298,8 @@ characters.data={
description="GREEK SMALL LETTER PI",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="pi",
uccode=0x03A0,
unicodeslot=0x03C0,
},
@@ -9231,6 +9311,8 @@ characters.data={
description="GREEK SMALL LETTER RHO",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="rho",
uccode=0x03A1,
unicodeslot=0x03C1,
},
@@ -9241,6 +9323,8 @@ characters.data={
description="GREEK SMALL LETTER FINAL SIGMA",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="varsigma",
uccode=0x03A3,
unicodeslot=0x03C2,
},
@@ -9252,6 +9336,8 @@ characters.data={
description="GREEK SMALL LETTER SIGMA",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="sigma",
uccode=0x03A3,
unicodeslot=0x03C3,
},
@@ -9263,6 +9349,8 @@ characters.data={
description="GREEK SMALL LETTER TAU",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="tau",
uccode=0x03A4,
unicodeslot=0x03C4,
},
@@ -9274,6 +9362,8 @@ characters.data={
description="GREEK SMALL LETTER UPSILON",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="upsilon",
uccode=0x03A5,
unicodeslot=0x03C5,
},
@@ -9285,6 +9375,8 @@ characters.data={
description="GREEK SMALL LETTER PHI",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="varphi",
uccode=0x03A6,
unicodeslot=0x03C6,
},
@@ -9296,6 +9388,8 @@ characters.data={
description="GREEK SMALL LETTER CHI",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="chi",
uccode=0x03A7,
unicodeslot=0x03C7,
},
@@ -9307,6 +9401,8 @@ characters.data={
description="GREEK SMALL LETTER PSI",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="psi",
uccode=0x03A8,
unicodeslot=0x03C8,
},
@@ -9318,6 +9414,8 @@ characters.data={
description="GREEK SMALL LETTER OMEGA",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="omega",
uccode=0x03A9,
unicodeslot=0x03C9,
},
@@ -9397,6 +9495,8 @@ characters.data={
description="GREEK THETA SYMBOL",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="varTheta",
specials={ "compat", 0x03B8 },
uccode=0x0398,
unicodeslot=0x03D1,
@@ -9434,6 +9534,8 @@ characters.data={
direction="l",
linebreak="al",
specials={ "compat", 0x03C6 },
+ mathclass="variable",
+ mathname="phi",
uccode=0x03A6,
unicodeslot=0x03D5,
},
@@ -9444,6 +9546,8 @@ characters.data={
description="GREEK PI SYMBOL",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="varpi",
specials={ "compat", 0x03C0 },
uccode=0x03A0,
unicodeslot=0x03D6,
@@ -9707,6 +9811,8 @@ characters.data={
description="GREEK LUNATE EPSILON SYMBOL",
direction="l",
linebreak="al",
+ mathclass="variable",
+ mathname="epsilon",
specials={ "compat", 0x03B5 },
uccode=0x0395,
unicodeslot=0x03F5,
@@ -131210,8 +131316,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL ALPHA",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Alpha",
specials={ "font", 0x0391 },
unicodeslot=0x1D6E2,
},
@@ -131220,8 +131324,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL BETA",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Beta",
specials={ "font", 0x0392 },
unicodeslot=0x1D6E3,
},
@@ -131230,8 +131332,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL GAMMA",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Gamma",
specials={ "font", 0x0393 },
unicodeslot=0x1D6E4,
},
@@ -131240,8 +131340,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL DELTA",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Delta",
specials={ "font", 0x0394 },
unicodeslot=0x1D6E5,
},
@@ -131250,8 +131348,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL EPSILON",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Epsilon",
specials={ "font", 0x0395 },
unicodeslot=0x1D6E6,
},
@@ -131260,8 +131356,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL ZETA",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Zeta",
specials={ "font", 0x0396 },
unicodeslot=0x1D6E7,
},
@@ -131270,8 +131364,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL ETA",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Eta",
specials={ "font", 0x0397 },
unicodeslot=0x1D6E8,
},
@@ -131280,8 +131372,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL THETA",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Theta",
specials={ "font", 0x0398 },
unicodeslot=0x1D6E9,
},
@@ -131290,8 +131380,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL IOTA",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Iota",
specials={ "font", 0x0399 },
unicodeslot=0x1D6EA,
},
@@ -131300,8 +131388,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL KAPPA",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Kappa",
specials={ "font", 0x039A },
unicodeslot=0x1D6EB,
},
@@ -131310,8 +131396,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL LAMDA",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Lambda",
specials={ "font", 0x039B },
unicodeslot=0x1D6EC,
},
@@ -131320,8 +131404,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL MU",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Mu",
specials={ "font", 0x039C },
unicodeslot=0x1D6ED,
},
@@ -131330,8 +131412,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL NU",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Nu",
specials={ "font", 0x039D },
unicodeslot=0x1D6EE,
},
@@ -131340,8 +131420,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL XI",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Xi",
specials={ "font", 0x039E },
unicodeslot=0x1D6EF,
},
@@ -131350,8 +131428,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL OMICRON",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Omicron",
specials={ "font", 0x039F },
unicodeslot=0x1D6F0,
},
@@ -131360,8 +131436,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL PI",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Pi",
specials={ "font", 0x03A0 },
unicodeslot=0x1D6F1,
},
@@ -131370,8 +131444,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL RHO",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Rho",
specials={ "font", 0x03A1 },
unicodeslot=0x1D6F2,
},
@@ -131380,8 +131452,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL THETA SYMBOL",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="varTheta",
specials={ "font", 0x03F4 },
unicodeslot=0x1D6F3,
},
@@ -131390,8 +131460,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL SIGMA",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Sigma",
specials={ "font", 0x03A3 },
unicodeslot=0x1D6F4,
},
@@ -131400,8 +131468,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL TAU",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Tau",
specials={ "font", 0x03A4 },
unicodeslot=0x1D6F5,
},
@@ -131410,8 +131476,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL UPSILON",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Upsilon",
specials={ "font", 0x03A5 },
unicodeslot=0x1D6F6,
},
@@ -131420,8 +131484,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL PHI",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Phi",
specials={ "font", 0x03A6 },
unicodeslot=0x1D6F7,
},
@@ -131430,8 +131492,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL CHI",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Chi",
specials={ "font", 0x03A7 },
unicodeslot=0x1D6F8,
},
@@ -131440,8 +131500,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL PSI",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Psi",
specials={ "font", 0x03A8 },
unicodeslot=0x1D6F9,
},
@@ -131450,8 +131508,6 @@ characters.data={
description="MATHEMATICAL ITALIC CAPITAL OMEGA",
direction="l",
linebreak="al",
- mathclass="variable",
- mathname="Omega",
specials={ "font", 0x03A9 },
unicodeslot=0x1D6FA,
},
@@ -131470,8 +131526,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL ALPHA",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="alpha",
specials={ "font", 0x03B1 },
unicodeslot=0x1D6FC,
},
@@ -131480,8 +131534,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL BETA",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="beta",
specials={ "font", 0x03B2 },
unicodeslot=0x1D6FD,
},
@@ -131490,8 +131542,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL GAMMA",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="gamma",
specials={ "font", 0x03B3 },
unicodeslot=0x1D6FE,
},
@@ -131500,8 +131550,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL DELTA",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="delta",
specials={ "font", 0x03B4 },
unicodeslot=0x1D6FF,
},
@@ -131510,8 +131558,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL EPSILON",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="varepsilon",
specials={ "font", 0x03B5 },
unicodeslot=0x1D700,
},
@@ -131520,8 +131566,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL ZETA",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="zeta",
specials={ "font", 0x03B6 },
unicodeslot=0x1D701,
},
@@ -131530,8 +131574,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL ETA",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="eta",
specials={ "font", 0x03B7 },
unicodeslot=0x1D702,
},
@@ -131540,8 +131582,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL THETA",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="theta",
specials={ "font", 0x03B8 },
unicodeslot=0x1D703,
},
@@ -131550,8 +131590,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL IOTA",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="iota",
specials={ "font", 0x03B9 },
unicodeslot=0x1D704,
},
@@ -131560,8 +131598,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL KAPPA",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="kappa",
specials={ "font", 0x03BA },
unicodeslot=0x1D705,
},
@@ -131570,8 +131606,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL LAMDA",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="lambda",
specials={ "font", 0x03BB },
unicodeslot=0x1D706,
},
@@ -131580,8 +131614,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL MU",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="mu",
specials={ "font", 0x03BC },
unicodeslot=0x1D707,
},
@@ -131590,8 +131622,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL NU",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="nu",
specials={ "font", 0x03BD },
unicodeslot=0x1D708,
},
@@ -131600,8 +131630,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL XI",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="xi",
specials={ "font", 0x03BE },
unicodeslot=0x1D709,
},
@@ -131610,8 +131638,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL OMICRON",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="omicron",
specials={ "font", 0x03BF },
unicodeslot=0x1D70A,
},
@@ -131620,8 +131646,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL PI",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="pi",
specials={ "font", 0x03C0 },
unicodeslot=0x1D70B,
},
@@ -131630,8 +131654,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL RHO",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="rho",
specials={ "font", 0x03C1 },
unicodeslot=0x1D70C,
},
@@ -131640,8 +131662,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL FINAL SIGMA",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="varsigma",
specials={ "font", 0x03C2 },
unicodeslot=0x1D70D,
},
@@ -131650,8 +131670,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL SIGMA",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="sigma",
specials={ "font", 0x03C3 },
unicodeslot=0x1D70E,
},
@@ -131660,8 +131678,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL TAU",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="tau",
specials={ "font", 0x03C4 },
unicodeslot=0x1D70F,
},
@@ -131670,8 +131686,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL UPSILON",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="upsilon",
specials={ "font", 0x03C5 },
unicodeslot=0x1D710,
},
@@ -131680,8 +131694,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL PHI",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="varphi",
specials={ "font", 0x03C6 },
unicodeslot=0x1D711,
},
@@ -131690,8 +131702,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL CHI",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="chi",
specials={ "font", 0x03C7 },
unicodeslot=0x1D712,
},
@@ -131700,8 +131710,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL PSI",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="psi",
specials={ "font", 0x03C8 },
unicodeslot=0x1D713,
},
@@ -131710,8 +131718,6 @@ characters.data={
description="MATHEMATICAL ITALIC SMALL OMEGA",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="omega",
specials={ "font", 0x03C9 },
unicodeslot=0x1D714,
},
@@ -131728,8 +131734,6 @@ characters.data={
description="MATHEMATICAL ITALIC EPSILON SYMBOL",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="epsilon",
specials={ "font", 0x03F5 },
unicodeslot=0x1D716,
},
@@ -131758,8 +131762,6 @@ characters.data={
description="MATHEMATICAL ITALIC PHI SYMBOL",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="phi",
specials={ "font", 0x03D5 },
unicodeslot=0x1D719,
},
@@ -131768,7 +131770,7 @@ characters.data={
description="MATHEMATICAL ITALIC RHO SYMBOL",
direction="l",
linebreak="al",
- mathclass="default",
+ mathclass="variable",
mathname="varrho",
specials={ "font", 0x03F1 },
unicodeslot=0x1D71A,
@@ -131778,8 +131780,6 @@ characters.data={
description="MATHEMATICAL ITALIC PI SYMBOL",
direction="l",
linebreak="al",
- mathclass="default",
- mathname="varpi",
specials={ "font", 0x03D6 },
unicodeslot=0x1D71B,
},
diff --git a/tex/context/base/math-ini.mkiv b/tex/context/base/math-ini.mkiv
index c7db680e5..0d01b0e7a 100644
--- a/tex/context/base/math-ini.mkiv
+++ b/tex/context/base/math-ini.mkiv
@@ -449,32 +449,24 @@
% [lc uc] normal (upright) = 2, italic = 3, none = 0/1
-\setevalue{\??mo:greek:\v!normal :\v!normal }{\dosetattribute {mathgreek}{22}}
-\setevalue{\??mo:greek:\v!normal :\v!italic }{\dosetattribute {mathgreek}{23}}
-\setevalue{\??mo:greek:\v!normal :\v!default}{\dosetattribute {mathgreek}{21}}
+\setevalue{\??mo:greek:\v!normal :\v!normal}{\dosetattribute {mathgreek}{22}}
+\setevalue{\??mo:greek:\v!normal :\v!italic}{\dosetattribute {mathgreek}{23}}
+\setevalue{\??mo:greek:\v!normal :\v!none }{\dosetattribute {mathgreek}{21}}
-\setevalue{\??mo:greek:\v!italic :\v!normal }{\dosetattribute {mathgreek}{32}}
-\setevalue{\??mo:greek:\v!italic :\v!italic }{\dosetattribute {mathgreek}{33}}
-\setevalue{\??mo:greek:\v!italic :\v!default}{\dosetattribute {mathgreek}{31}}
+\setevalue{\??mo:greek:\v!italic :\v!normal}{\dosetattribute {mathgreek}{32}}
+\setevalue{\??mo:greek:\v!italic :\v!italic}{\dosetattribute {mathgreek}{33}}
+\setevalue{\??mo:greek:\v!italic :\v!none }{\dosetattribute {mathgreek}{31}}
-\setevalue{\??mo:greek:\v!default:\v!normal }{\dosetattribute {mathgreek}{12}}
-\setevalue{\??mo:greek:\v!default:\v!italic }{\dosetattribute {mathgreek}{13}}
-\setevalue{\??mo:greek:\v!default:\v!default}{\doresetattribute{mathgreek}}
-
-% bonus:
-
-\setevalue{\??mo:greek:\v!normal :\v!none }{\dosetattribute {mathgreek}{21}}
-\setevalue{\??mo:greek:\v!italic :\v!none }{\dosetattribute {mathgreek}{31}}
-\setevalue{\??mo:greek:\v!none :\v!normal }{\dosetattribute {mathgreek}{12}}
-\setevalue{\??mo:greek:\v!none :\v!italic }{\dosetattribute {mathgreek}{13}}
-\setevalue{\??mo:greek:\v!none :\v!none }{\doresetattribute{mathgreek}}
+\setevalue{\??mo:greek:\v!none :\v!normal}{\dosetattribute {mathgreek}{12}}
+\setevalue{\??mo:greek:\v!none :\v!italic}{\dosetattribute {mathgreek}{13}}
+\setevalue{\??mo:greek:\v!none :\v!none }{\doresetattribute{mathgreek}}
\appendtoks
\csname\??mo:greek:\@@molcgreek:\@@moucgreek\endcsname
\to \everymathematics
\setupmathematics
- [lcgreek=\v!none,
+ [lcgreek=\v!italic,
ucgreek=\v!none]
%D \macros
diff --git a/tex/context/base/math-noa.lua b/tex/context/base/math-noa.lua
index 7a2a60e84..b226444a4 100644
--- a/tex/context/base/math-noa.lua
+++ b/tex/context/base/math-noa.lua
@@ -152,6 +152,33 @@ end
local remap_alphabets = mathematics.remap_alphabets
local fcs = fonts.color.set
+-- we can have a global famdata == fonts.famdata and chrdata == fonts.chrdata
+
+--~ This does not work out well, as there are no fallbacks. Ok, we could
+--~ define a poor mans simplify mechanism.
+--~
+--~ local function checked(pointer)
+--~ local char = pointer.char
+--~ local fam = pointer.fam
+--~ local id = font_of_family(fam)
+--~ local tfmdata = fontdata[id]
+--~ local tc = tfmdata and tfmdata.characters
+--~ if not tc[char] then
+--~ local specials = characters.data[char].specials
+--~ if specials and (specials[1] == "char" or specials[1] == "font") then
+--~ newchar = specials[#specials]
+--~ if trace_remapping then
+--~ report_remap("fallback",id,char,newchar)
+--~ end
+--~ if trace_analyzing then
+--~ fcs(pointer,"font:isol")
+--~ end
+--~ pointer.char = newchar
+--~ return true
+--~ end
+--~ end
+--~ end
+
noads.processors.relocate[math_char] = function(pointer)
local g = has_attribute(pointer,mathgreek) or 0
local a = has_attribute(pointer,mathalphabet) or 0
@@ -180,7 +207,11 @@ noads.processors.relocate[math_char] = function(pointer)
elseif trace_remapping then
report_remap("char",id,char,newchar," fails")
end
+ else
+ -- return checked(pointer)
end
+ else
+ -- return checked(pointer)
end
if trace_analyzing then
fcs(pointer,"font:medi")
diff --git a/tex/context/base/mult-de.tex b/tex/context/base/mult-de.tex
index a18cad987..d5a1a400a 100644
--- a/tex/context/base/mult-de.tex
+++ b/tex/context/base/mult-de.tex
@@ -935,6 +935,7 @@
\setinterfaceconstant{textlayer}{textlayer}
\setinterfaceconstant{textmargin}{textmargin}
\setinterfaceconstant{textmethod}{textmethod}
+\setinterfaceconstant{textoverprint}{textoverprint}
\setinterfaceconstant{textseparator}{textseparator}
\setinterfaceconstant{textsize}{textgroesse}
\setinterfaceconstant{textstate}{textstatus}
diff --git a/tex/context/base/mult-def.lua b/tex/context/base/mult-def.lua
index c1678f68d..4ec4b154f 100644
--- a/tex/context/base/mult-def.lua
+++ b/tex/context/base/mult-def.lua
@@ -9156,6 +9156,16 @@ return {
["pe"]="overprint",
["ro"]="overprint",
},
+ ["textoverprint"]={
+ ["cs"]="textoverprint",
+ ["de"]="textoverprint",
+ ["en"]="textoverprint",
+ ["fr"]="textoverprint",
+ ["it"]="textoverprint",
+ ["nl"]="textoverprint",
+ ["pe"]="textoverprint",
+ ["ro"]="textoverprint",
+ },
["ownnumber"]={
["cs"]="vlastnicislo",
["de"]="eigenenummer",
diff --git a/tex/context/base/mult-en.tex b/tex/context/base/mult-en.tex
index 8d4ab2919..2298668ee 100644
--- a/tex/context/base/mult-en.tex
+++ b/tex/context/base/mult-en.tex
@@ -935,6 +935,7 @@
\setinterfaceconstant{textlayer}{textlayer}
\setinterfaceconstant{textmargin}{textmargin}
\setinterfaceconstant{textmethod}{textmethod}
+\setinterfaceconstant{textoverprint}{textoverprint}
\setinterfaceconstant{textseparator}{textseparator}
\setinterfaceconstant{textsize}{textsize}
\setinterfaceconstant{textstate}{textstate}
diff --git a/tex/context/base/mult-fr.tex b/tex/context/base/mult-fr.tex
index 850e086db..9c0c725d6 100644
--- a/tex/context/base/mult-fr.tex
+++ b/tex/context/base/mult-fr.tex
@@ -935,6 +935,7 @@
\setinterfaceconstant{textlayer}{calquetexte}
\setinterfaceconstant{textmargin}{margetexte}
\setinterfaceconstant{textmethod}{textmethod}
+\setinterfaceconstant{textoverprint}{textoverprint}
\setinterfaceconstant{textseparator}{separateurtexte}
\setinterfaceconstant{textsize}{tailletexte}
\setinterfaceconstant{textstate}{etattexte}
diff --git a/tex/context/base/mult-it.tex b/tex/context/base/mult-it.tex
index 65c407282..9d42da744 100644
--- a/tex/context/base/mult-it.tex
+++ b/tex/context/base/mult-it.tex
@@ -935,6 +935,7 @@
\setinterfaceconstant{textlayer}{textlayer}
\setinterfaceconstant{textmargin}{textmargin}
\setinterfaceconstant{textmethod}{textmethod}
+\setinterfaceconstant{textoverprint}{textoverprint}
\setinterfaceconstant{textseparator}{separatoretesto}
\setinterfaceconstant{textsize}{dimensionetesto}
\setinterfaceconstant{textstate}{statotesto}
diff --git a/tex/context/base/mult-nl.tex b/tex/context/base/mult-nl.tex
index 50e1bbf6f..07b0ab070 100644
--- a/tex/context/base/mult-nl.tex
+++ b/tex/context/base/mult-nl.tex
@@ -935,6 +935,7 @@
\setinterfaceconstant{textlayer}{tekstlaag}
\setinterfaceconstant{textmargin}{tekstmarge}
\setinterfaceconstant{textmethod}{tekstmethode}
+\setinterfaceconstant{textoverprint}{textoverprint}
\setinterfaceconstant{textseparator}{tekstscheider}
\setinterfaceconstant{textsize}{tekstformaat}
\setinterfaceconstant{textstate}{tekststatus}
diff --git a/tex/context/base/mult-ro.tex b/tex/context/base/mult-ro.tex
index a17963bcb..c79e64d0f 100644
--- a/tex/context/base/mult-ro.tex
+++ b/tex/context/base/mult-ro.tex
@@ -935,6 +935,7 @@
\setinterfaceconstant{textlayer}{textlayer}
\setinterfaceconstant{textmargin}{textmargin}
\setinterfaceconstant{textmethod}{textmethod}
+\setinterfaceconstant{textoverprint}{textoverprint}
\setinterfaceconstant{textseparator}{separatortext}
\setinterfaceconstant{textsize}{dimensiunetext}
\setinterfaceconstant{textstate}{staretext}
diff --git a/tex/context/base/prop-mis.mkiv b/tex/context/base/prop-mis.mkiv
index 623b10f13..0d52097ed 100644
--- a/tex/context/base/prop-mis.mkiv
+++ b/tex/context/base/prop-mis.mkiv
@@ -54,7 +54,7 @@
\def\startoverprintproperty{\dotriggeroverprint\v!overprint}
\def\stopoverprintproperty {\dotriggeroverprint\v!knockout }
-%D Negative cum suis.\def\dotriggeroverprint#1{\csname(os:#1)\endcsname}
+%D Negative cum suis.
\definepropertyhandler \v!negative {\dotriggernegative\v!negative}
\definepropertyhandler \v!positive {\dotriggernegative\v!positive}
diff --git a/tex/context/base/strc-itm.mkii b/tex/context/base/strc-itm.mkii
index d0afd13c8..1de63c7c3 100644
--- a/tex/context/base/strc-itm.mkii
+++ b/tex/context/base/strc-itm.mkii
@@ -409,23 +409,22 @@
\fi\fi}
\def\setitemlevel#1%
- {\ifnum\currentitemlevel>\zerocount
- \settrue\firstlistitem
- %
- \expanded{\setitemparameter{\currentitemlevel}{\c!start}{1}}%
- \doifinset{0}{#1}{\setitemparameter\currentitemlevel\c!start{0}}%
- \setcounter{\@@itemcounter\currentitemlevel}{0}%
- \doifelsenothing{\getitemparameter\currentitemlevel\c!start}
- {\def\currentitemoffset{1}}
- {\def\currentitemoffset{\getitemparameter\currentitemlevel\c!start}%
- \letitemparameter\currentitemlevel\c!start\empty}%
- %
- \def\tempnumber
- {\countervalue{\@@itemcounter\currentitemlevel}}%
- \doifelse{\getitemparameter\currentitemlevel\c!placestopper}\v!yes
- {\def\tempsymbol{\getitemparameter\currentitemlevel\c!stopper}}
- {\let\tempsymbol\empty}%
- \fi}
+ {\ifnum\currentitemlevel>\zerocount
+ \settrue\firstlistitem
+ % \expanded{\setitemparameter{\currentitemlevel}{\c!start}{1}}% ***
+ \doifinset{0}{#1}{\setitemparameter\currentitemlevel\c!start{0}}% ***
+ \setcounter{\@@itemcounter\currentitemlevel}{\the\numexpr\getitemparameter\currentitemlevel\c!start-1\relax}% ***
+ \doifelsenothing{\getitemparameter\currentitemlevel\c!start}
+ {\def\currentitemoffset{1}}
+ {\def\currentitemoffset{\getitemparameter\currentitemlevel\c!start}%
+ \letitemparameter\currentitemlevel\c!start\empty}%
+ \def\tempnumber
+ {\countervalue{\@@itemcounter\currentitemlevel}}%
+ \doifelse{\getitemparameter\currentitemlevel\c!placestopper}\v!yes
+ {\def\tempsymbol{\getitemparameter\currentitemlevel\c!stopper}}
+ {\let\tempsymbol\empty}%
+ \fi}
+
\def\actualitemnumber
{\ifconditional\reverselistitem
diff --git a/tex/context/base/strc-lst.lua b/tex/context/base/strc-lst.lua
index c29069121..64788e40e 100644
--- a/tex/context/base/strc-lst.lua
+++ b/tex/context/base/strc-lst.lua
@@ -198,6 +198,7 @@ local function filter_collected(names, criterium, number, collected)
end
end
elseif criterium == variables.here then
+ -- this is qquite dirty ... as cnumbers is not sparse we can misuse #cnumbers
if depth == 0 then
return filter_collected(names,variables.intro,number,collected)
else
@@ -210,6 +211,7 @@ local function filter_collected(names, criterium, number, collected)
local cnumbers = sectionnumber.numbers
local metadata = v.metadata
if cnumbers then
+print(#cnumbers, depth, table.concat(cnumbers))
if metadata and not metadata.nolist and (all or hash[metadata.name or false]) and #cnumbers >= depth then
local ok = true
for d=1,depth do
diff --git a/tex/context/base/strc-not.mkii b/tex/context/base/strc-not.mkii
index 40e06c9a4..f6fae3378 100644
--- a/tex/context/base/strc-not.mkii
+++ b/tex/context/base/strc-not.mkii
@@ -589,6 +589,38 @@
\donothing
\fi}
+% maybe some day
+%
+% \newconditional\tracemovednotes
+% \def\domovednote#1#2%
+% {\iflocation
+% \doshowmovednote{#1}{#2}%
+% \else\ifconditional\tracemovednotes
+% \doshowtracednote{#1}{#2}%
+% \fi\fi}
+% \def\doshowmovednote#1#2%
+% {\doifreferencefoundelse{\s!fnt:t:\number\internalnotereference}
+% {\let\savedrealreference\currentrealreference
+% \doifreferencefoundelse{\s!fnt:f:\number\internalnotereference}
+% {\ifnum\savedrealreference<\currentrealreference\relax
+% \symbol[#1]%
+% \else\ifnum\savedrealreference>\currentrealreference\relax
+% \symbol[#2]%
+% \fi\fi}
+% \donothing}
+% \donothing}
+% \def\doshowtracednote#1#2%
+% {\doifreferencefoundelse{\s!fnt:t:\number\internalnotereference}
+% {\let\savedrealreference\currentrealreference
+% \doifreferencefoundelse{\s!fnt:f:\number\internalnotereference}
+% {\ifnum\savedrealreference<\currentrealreference\relax
+% \writestatus{NOTE}{forward note reference on real page \currentrealreference}%
+% \else\ifnum\savedrealreference>\currentrealreference\relax
+% \writestatus{NOTE}{backward note reference on real page \currentrealreference}%
+% \fi\fi}
+% \donothing}
+% \donothing}
+
\def\dodonote
{\ifnotesenabled
\iftrialtypesetting
diff --git a/tex/context/base/x-mathml.lua b/tex/context/base/x-mathml.lua
index b4b7ca9e1..46f7248c6 100644
--- a/tex/context/base/x-mathml.lua
+++ b/tex/context/base/x-mathml.lua
@@ -19,6 +19,8 @@ local utffind = utf.find
local xmlsprint = xml.sprint
local xmlcprint = xml.cprint
+local ctxcatcodes = tex.ctxcatcodes
+
local utfcharacters, utfvalues = string.utfcharacters, string.utfvalues
-- an alternative is to remap to private codes, where we can have
@@ -449,11 +451,11 @@ function xml.functions.remapopenmath(r,d,k)
end
function lxml.mml.checked_operator(str)
- texsprint(tex.ctxcatcodes,(utf.gsub(str,".",o_replacements)))
+ texsprint(ctxcatcodes,(utf.gsub(str,".",o_replacements)))
end
function lxml.mml.stripped(str)
- tex.sprint(tex.ctxcatcodes,str:strip())
+ tex.sprint(ctxcatcodes,str:strip())
end
function lxml.mml.mn(id,pattern)
@@ -462,7 +464,7 @@ function lxml.mml.mn(id,pattern)
local str = xml.content(lxml.id(id),pattern) or ""
-- str = str:gsub("^%s*(.-)%s*$","%1")
str = str:gsub("(%s+)",utfchar(0x205F)) -- medspace e.g.: twenty one (nbsp is not seen)
- texsprint(tex.ctxcatcodes,(str:gsub(".",n_replacements)))
+ texsprint(ctxcatcodes,(str:gsub(".",n_replacements)))
end
function characters.remapentity(chr,slot)
@@ -471,7 +473,7 @@ end
function lxml.mml.mo(id,pattern)
local str = xml.content(lxml.id(id),pattern) or ""
- texsprint(tex.ctxcatcodes,(utf.gsub(str,".",o_replacements)))
+ texsprint(ctxcatcodes,(utf.gsub(str,".",o_replacements)))
end
function lxml.mml.mi(id,pattern)
@@ -479,9 +481,9 @@ function lxml.mml.mi(id,pattern)
-- str = str:gsub("^%s*(.-)%s*$","%1")
local rep = i_replacements[str]
if rep then
- texsprint(tex.ctxcatcodes,rep)
+ texsprint(ctxcatcodes,rep)
else
- texsprint(tex.ctxcatcodes,(str:gsub(".",i_replacements)))
+ texsprint(ctxcatcodes,(str:gsub(".",i_replacements)))
end
end
@@ -500,14 +502,14 @@ function lxml.mml.mfenced(id,pattern) -- multiple separators
id = lxml.id(id)
local left, right, separators = id.at.open or "(", id.at.close or ")", id.at.separators or ","
local l, r = l_replacements[left], r_replacements[right]
- texsprint(tex.ctxcatcodes,"\\enabledelimiter")
+ texsprint(ctxcatcodes,"\\enabledelimiter")
if l then
- texsprint(tex.ctxcatcodes,l_replacements[left] or o_replacements[left] or "")
+ texsprint(ctxcatcodes,l_replacements[left] or o_replacements[left] or "")
else
- texsprint(tex.ctxcatcodes,o_replacements["@l"])
- texsprint(tex.ctxcatcodes,left)
+ texsprint(ctxcatcodes,o_replacements["@l"])
+ texsprint(ctxcatcodes,left)
end
- texsprint(tex.ctxcatcodes,"\\disabledelimiter")
+ texsprint(ctxcatcodes,"\\disabledelimiter")
local n = xml.count(id,pattern)
if n == 0 then
-- skip
@@ -531,36 +533,36 @@ function lxml.mml.mfenced(id,pattern) -- multiple separators
elseif m == "}" then
m = "\\}"
end
- texsprint(tex.ctxcatcodes,m)
+ texsprint(ctxcatcodes,m)
end
end
end
- texsprint(tex.ctxcatcodes,"\\enabledelimiter")
+ texsprint(ctxcatcodes,"\\enabledelimiter")
if r then
- texsprint(tex.ctxcatcodes,r_replacements[right] or o_replacements[right] or "")
+ texsprint(ctxcatcodes,r_replacements[right] or o_replacements[right] or "")
else
- texsprint(tex.ctxcatcodes,right)
- texsprint(tex.ctxcatcodes,o_replacements["@r"])
+ texsprint(ctxcatcodes,right)
+ texsprint(ctxcatcodes,o_replacements["@r"])
end
- texsprint(tex.ctxcatcodes,"\\disabledelimiter")
+ texsprint(ctxcatcodes,"\\disabledelimiter")
end
local function flush(e,tag,toggle)
- -- texsprint(tex.ctxcatcodes,(toggle and "^{") or "_{")
+ -- texsprint(ctxcatcodes,(toggle and "^{") or "_{")
if toggle then
- texsprint(tex.ctxcatcodes,"^{")
+ texsprint(ctxcatcodes,"^{")
else
- texsprint(tex.ctxcatcodes,"_{")
+ texsprint(ctxcatcodes,"_{")
end
if tag == "none" then
- texsprint(tex.ctxcatcodes,"{}")
+ texsprint(ctxcatcodes,"{}")
else
xmlsprint(e.dt)
end
if not toggle then
- texsprint(tex.ctxcatcodes,"}")
+ texsprint(ctxcatcodes,"}")
else
- texsprint(tex.ctxcatcodes,"}{}")
+ texsprint(ctxcatcodes,"}{}")
end
return not toggle
end
@@ -573,7 +575,7 @@ function lxml.mml.mmultiscripts(id)
local e = d[k]
local tag = e.tg
if tag == "mprescripts" then
- texsprint(tex.ctxcatcodes,"{}")
+ texsprint(ctxcatcodes,"{}")
done = true
elseif done then
toggle = flush(e,tag,toggle)
@@ -654,7 +656,7 @@ function lxml.mml.mcolumn(root)
collect(m,dk)
end
end
- tex.sprint(tex.ctxcatcodes,"\\halign\\bgroup\\hss$#$&$#$\\cr")
+ tex.sprint(ctxcatcodes,"\\halign\\bgroup\\hss$#$&$#$\\cr")
for i=1,#matrix do
local m = matrix[i]
local mline = true
@@ -665,7 +667,7 @@ function lxml.mml.mcolumn(root)
end
end
if mline then
- tex.sprint(tex.ctxcatcodes,"\\noalign{\\obeydepth\\nointerlineskip}")
+ tex.sprint(ctxcatcodes,"\\noalign{\\obeydepth\\nointerlineskip}")
end
for j=1,#m do
local mm = m[j]
@@ -701,14 +703,14 @@ function lxml.mml.mcolumn(root)
chr = "\\mmlmcolumndigitspace" -- utfchar(0x2007)
end
if j == numbers + 1 then
- tex.sprint(tex.ctxcatcodes,"&")
+ tex.sprint(ctxcatcodes,"&")
end
local nchr = n_replacements[chr]
- tex.sprint(tex.ctxcatcodes,nchr or chr)
+ tex.sprint(ctxcatcodes,nchr or chr)
end
- tex.sprint(tex.ctxcatcodes,"\\crcr")
+ tex.sprint(ctxcatcodes,"\\crcr")
end
- tex.sprint(tex.ctxcatcodes,"\\egroup")
+ tex.sprint(ctxcatcodes,"\\egroup")
end
local spacesplitter = lpeg.Ct(lpeg.splitat(" "))
@@ -728,11 +730,11 @@ function lxml.mml.mtable(root)
local framespacing = at.framespacing or "0pt"
local framespacing = at.framespacing or "-\\ruledlinewidth" -- make this an option
---~ function texsprint(a,b) print(b) end
-
- texsprint(tex.ctxcatcodes, format("\\bTABLE[frame=%s,offset=%s]",frametypes[frame or "none"] or "off",framespacing))
+ texsprint(ctxcatcodes, format("\\bTABLE[frame=%s,offset=%s]",frametypes[frame or "none"] or "off",framespacing))
+--~ context.bTABLE { frame = frametypes[frame or "none"] or "off", offset = framespacing }
for r, d, k in xml.elements(root,"/(mml:mtr|mml:mlabeledtr)") do
- texsprint(tex.ctxcatcodes,"\\bTR")
+ texsprint(ctxcatcodes,"\\bTR")
+--~ context.bTR()
local dk = d[k]
local at = dk.at
local col = 0
@@ -751,19 +753,28 @@ function lxml.mml.mtable(root)
local cra = rowalignments [at.rowalign or (rowaligns and rowaligns [col]) or rra or "center"] or "lohi"
local cca = columnalignments[at.columnalign or (columnaligns and columnaligns[col]) or rca or "center"] or "middle"
local cfr = frametypes [at.frame or (frames and frames [col]) or rfr or "none" ] or "off"
- texsprint(tex.ctxcatcodes,format("\\bTD[align={%s,%s},frame=%s,nx=%s,ny=%s]$\\ignorespaces",cra,cca,cfr,columnspan,rowspan))
+ texsprint(ctxcatcodes,format("\\bTD[align={%s,%s},frame=%s,nx=%s,ny=%s]$\\ignorespaces",cra,cca,cfr,columnspan,rowspan))
+--~ texfprint("\\bTD[align={%s,%s},frame=%s,nx=%s,ny=%s]$\\ignorespaces",cra,cca,cfr,columnspan,rowspan)
+--~ context.bTD { align = format("{%s,%s}",cra,cca), frame = cfr, nx = columnspan, ny = rowspan }
+--~ context.bmath()
+--~ context.ignorespaces()
xmlcprint(dk)
- texsprint(tex.ctxcatcodes,"\\removeunwantedspaces$\\eTD") -- $
+ texsprint(ctxcatcodes,"\\removeunwantedspaces$\\eTD") -- $
+--~ context.emath()
+--~ context.removeunwantedspaces()
+--~ context.eTD()
end
end
--~ if dk.tg == "mlabeledtr" then
---~ texsprint(tex.ctxcatcodes,"\\bTD")
+--~ texsprint(ctxcatcodes,"\\bTD")
--~ xmlcprint(xml.first(dk,"/!mml:mtd"))
---~ texsprint(tex.ctxcatcodes,"\\eTD")
+--~ texsprint(ctxcatcodes,"\\eTD")
--~ end
- texsprint(tex.ctxcatcodes,"\\eTR")
+ texsprint(ctxcatcodes,"\\eTR")
+--~ context.eTR()
end
- texsprint(tex.ctxcatcodes, "\\eTABLE")
+ texsprint(ctxcatcodes, "\\eTABLE")
+--~ context.eTABLE()
end
function lxml.mml.csymbol(root)
@@ -773,7 +784,7 @@ function lxml.mml.csymbol(root)
local full = hash.original or ""
local base = hash.path or ""
local text = string.strip(xml.content(root) or "")
- texsprint(tex.ctxcatcodes,format("\\mmlapplycsymbol{%s}{%s}{%s}{%s}",full,base,encoding,text))
+ texsprint(ctxcatcodes,format("\\mmlapplycsymbol{%s}{%s}{%s}{%s}",full,base,encoding,text))
end
function lxml.mml.menclosepattern(root)
diff --git a/tex/context/interface/keys-cs.xml b/tex/context/interface/keys-cs.xml
index 0eefedb9c..2e2e896f9 100644
--- a/tex/context/interface/keys-cs.xml
+++ b/tex/context/interface/keys-cs.xml
@@ -941,6 +941,7 @@
<cd:constant name='textlayer' value='textlayer'/>
<cd:constant name='textmargin' value='textmargin'/>
<cd:constant name='textmethod' value='textmethod'/>
+ <cd:constant name='textoverprint' value='textoverprint'/>
<cd:constant name='textseparator' value='oddelovactextu'/>
<cd:constant name='textsize' value='velikosttextu'/>
<cd:constant name='textstate' value='statustextu'/>
diff --git a/tex/context/interface/keys-de.xml b/tex/context/interface/keys-de.xml
index 65e5c05b6..c968ef5a7 100644
--- a/tex/context/interface/keys-de.xml
+++ b/tex/context/interface/keys-de.xml
@@ -941,6 +941,7 @@
<cd:constant name='textlayer' value='textlayer'/>
<cd:constant name='textmargin' value='textmargin'/>
<cd:constant name='textmethod' value='textmethod'/>
+ <cd:constant name='textoverprint' value='textoverprint'/>
<cd:constant name='textseparator' value='textseparator'/>
<cd:constant name='textsize' value='textgroesse'/>
<cd:constant name='textstate' value='textstatus'/>
diff --git a/tex/context/interface/keys-en.xml b/tex/context/interface/keys-en.xml
index d2183128b..4f47eba5c 100644
--- a/tex/context/interface/keys-en.xml
+++ b/tex/context/interface/keys-en.xml
@@ -941,6 +941,7 @@
<cd:constant name='textlayer' value='textlayer'/>
<cd:constant name='textmargin' value='textmargin'/>
<cd:constant name='textmethod' value='textmethod'/>
+ <cd:constant name='textoverprint' value='textoverprint'/>
<cd:constant name='textseparator' value='textseparator'/>
<cd:constant name='textsize' value='textsize'/>
<cd:constant name='textstate' value='textstate'/>
diff --git a/tex/context/interface/keys-fr.xml b/tex/context/interface/keys-fr.xml
index a59a47f6e..eeb9dd0b7 100644
--- a/tex/context/interface/keys-fr.xml
+++ b/tex/context/interface/keys-fr.xml
@@ -941,6 +941,7 @@
<cd:constant name='textlayer' value='calquetexte'/>
<cd:constant name='textmargin' value='margetexte'/>
<cd:constant name='textmethod' value='textmethod'/>
+ <cd:constant name='textoverprint' value='textoverprint'/>
<cd:constant name='textseparator' value='separateurtexte'/>
<cd:constant name='textsize' value='tailletexte'/>
<cd:constant name='textstate' value='etattexte'/>
diff --git a/tex/context/interface/keys-it.xml b/tex/context/interface/keys-it.xml
index e3907e16c..393fee324 100644
--- a/tex/context/interface/keys-it.xml
+++ b/tex/context/interface/keys-it.xml
@@ -941,6 +941,7 @@
<cd:constant name='textlayer' value='textlayer'/>
<cd:constant name='textmargin' value='textmargin'/>
<cd:constant name='textmethod' value='textmethod'/>
+ <cd:constant name='textoverprint' value='textoverprint'/>
<cd:constant name='textseparator' value='separatoretesto'/>
<cd:constant name='textsize' value='dimensionetesto'/>
<cd:constant name='textstate' value='statotesto'/>
diff --git a/tex/context/interface/keys-nl.xml b/tex/context/interface/keys-nl.xml
index 8f217ffbb..5847ec9d8 100644
--- a/tex/context/interface/keys-nl.xml
+++ b/tex/context/interface/keys-nl.xml
@@ -941,6 +941,7 @@
<cd:constant name='textlayer' value='tekstlaag'/>
<cd:constant name='textmargin' value='tekstmarge'/>
<cd:constant name='textmethod' value='tekstmethode'/>
+ <cd:constant name='textoverprint' value='textoverprint'/>
<cd:constant name='textseparator' value='tekstscheider'/>
<cd:constant name='textsize' value='tekstformaat'/>
<cd:constant name='textstate' value='tekststatus'/>
diff --git a/tex/context/interface/keys-pe.xml b/tex/context/interface/keys-pe.xml
index 11c8447bd..396435277 100644
--- a/tex/context/interface/keys-pe.xml
+++ b/tex/context/interface/keys-pe.xml
@@ -941,6 +941,7 @@
<cd:constant name='textlayer' value='لایه‌متن'/>
<cd:constant name='textmargin' value='حاشیه‌متن'/>
<cd:constant name='textmethod' value='روش‌متن'/>
+ <cd:constant name='textoverprint' value='textoverprint'/>
<cd:constant name='textseparator' value='جداکننده‌متن'/>
<cd:constant name='textsize' value='اندازه‌متن'/>
<cd:constant name='textstate' value='وضعیت‌متن'/>
diff --git a/tex/context/interface/keys-ro.xml b/tex/context/interface/keys-ro.xml
index f8448fa53..7218a29cf 100644
--- a/tex/context/interface/keys-ro.xml
+++ b/tex/context/interface/keys-ro.xml
@@ -941,6 +941,7 @@
<cd:constant name='textlayer' value='textlayer'/>
<cd:constant name='textmargin' value='textmargin'/>
<cd:constant name='textmethod' value='textmethod'/>
+ <cd:constant name='textoverprint' value='textoverprint'/>
<cd:constant name='textseparator' value='separatortext'/>
<cd:constant name='textsize' value='dimensiunetext'/>
<cd:constant name='textstate' value='staretext'/>