From b6f05180d27bb8e4cb3e570633f16185eba987fe Mon Sep 17 00:00:00 2001 From: Hans Hagen Date: Mon, 14 Sep 2009 12:39:00 +0200 Subject: beta 2009.09.14 12:39 --- tex/context/base/bibl-tra.mkiv | 3 +- tex/context/base/char-def.lua | 214 +++++++++++++++++++------------------- tex/context/base/math-ini.mkiv | 28 ++--- tex/context/base/math-noa.lua | 31 ++++++ tex/context/base/mult-de.tex | 1 + tex/context/base/mult-def.lua | 10 ++ tex/context/base/mult-en.tex | 1 + tex/context/base/mult-fr.tex | 1 + tex/context/base/mult-it.tex | 1 + tex/context/base/mult-nl.tex | 1 + tex/context/base/mult-ro.tex | 1 + tex/context/base/prop-mis.mkiv | 2 +- tex/context/base/strc-itm.mkii | 33 +++--- tex/context/base/strc-lst.lua | 2 + tex/context/base/strc-not.mkii | 32 ++++++ tex/context/base/x-mathml.lua | 93 +++++++++-------- tex/context/interface/keys-cs.xml | 1 + tex/context/interface/keys-de.xml | 1 + tex/context/interface/keys-en.xml | 1 + tex/context/interface/keys-fr.xml | 1 + tex/context/interface/keys-it.xml | 1 + tex/context/interface/keys-nl.xml | 1 + tex/context/interface/keys-pe.xml | 1 + tex/context/interface/keys-ro.xml | 1 + 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 @@ + 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 @@ + 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 @@ + 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 @@ + 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 @@ + 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 @@ + 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 @@ + 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 @@ + -- cgit v1.2.3