From 155c2d957f50a5e9f25d00d246d25ec63d31b562 Mon Sep 17 00:00:00 2001 From: Context Git Mirror Bot Date: Fri, 17 Oct 2014 21:15:03 +0200 Subject: 2014-10-17 20:12:00 --- tex/context/base/cont-log.mkiv | 121 ++++++++++++--------- tex/context/base/cont-new.mkiv | 2 +- tex/context/base/context-version.pdf | Bin 4388 -> 4378 bytes tex/context/base/context.mkiv | 2 +- tex/context/base/math-stc.mkvi | 68 +++--------- tex/context/base/status-files.pdf | Bin 24721 -> 24712 bytes tex/context/base/status-lua.pdf | Bin 333941 -> 333934 bytes tex/context/base/strc-sec.mkiv | 2 +- tex/context/base/x-asciimath.lua | 34 +++--- tex/context/base/x-mathml-basics.mkiv | 55 +++++----- tex/generic/context/luatex/luatex-fonts-merged.lua | 2 +- 11 files changed, 137 insertions(+), 149 deletions(-) diff --git a/tex/context/base/cont-log.mkiv b/tex/context/base/cont-log.mkiv index 99e08450b..1c159a019 100644 --- a/tex/context/base/cont-log.mkiv +++ b/tex/context/base/cont-log.mkiv @@ -13,10 +13,9 @@ \writestatus{loading}{ConTeXt TeX Logos} -%D The system that is used to typeset this text is called \TEX, -%D typeset with an lowered~E. From te beginning of \TEX, -%D authors of macro packages adapted this raising and lowering -%D style. In this module we define some of those logos. +%D The system that is used to typeset this text is called \TEX, typeset with an +%D lowered~E. From te beginning of \TEX, authors of macro packages adapted this +%D raising and lowering style. In this module we define some of those logos. \unprotect @@ -26,7 +25,7 @@ \setbox\scratchbox\hbox{M}% T% \kern-.1667\wd\scratchbox - \lower.5ex\hbox{E}% + \lower.5\exheight\hbox{E}% \kern-.125\wd\scratchbox X% \endgroup} @@ -48,39 +47,39 @@ \unexpanded\def\TaBlE {T% - \kern-.27em\lower.5ex\hbox{A}% - \kern-.18emB% - \kern-.1em\lower.5ex\hbox{L}% - \kern-.075emE} + \kern-.27\emwidth\lower.5\exheight\hbox{A}% + \kern-.18\emwidth B% + \kern-.1\emwidth\lower.5\exheight\hbox{L}% + \kern-.075\emwidth E} \unexpanded\def\PiCTeX {P% - \kern-.12em\lower.5ex\hbox{I}% - \kern-.075em C% - \kern-.11em\TeX} + \kern-.12\emwidth\lower.5\exheight\hbox{I}% + \kern-.075\emwidth C% + \kern-.11\emwidth\TeX} \def\syst_logos_ams_script#1% - {$\cal\ifdim\bodyfontsize>1.1em\scriptstyle\fi#1$} + {$\cal\ifdim\bodyfontsize>1.1\emwidth\scriptstyle\fi#1$} \unexpanded\def\AmSTeX {\dontleavehmode \syst_logos_ams_script A% - \kern-.1667em\lower.5ex\hbox{\syst_logos_ams_script M}% - \kern-.125em\syst_logos_ams_script S% + \kern-.1667\emwidth\lower.5\exheight\hbox{\syst_logos_ams_script M}% + \kern-.125\emwidth\syst_logos_ams_script S% -\TeX} \unexpanded\def\LamSTeX {L% - \kern-.4em\raise.3ex\hbox{\syst_logos_ams_script A}% - \kern-.25em\lower.4ex\hbox{\syst_logos_ams_script M}% - \kern-.1em{\syst_logos_ams_script S}% + \kern-.4\emwidth\raise.3\exheight\hbox{\syst_logos_ams_script A}% + \kern-.25\emwidth\lower.4\exheight\hbox{\syst_logos_ams_script M}% + \kern-.1\emwidth{\syst_logos_ams_script S}% -\TeX} \unexpanded\def\AmSLaTeX {\dontleavehmode \syst_logos_ams_script A% - \kern-.1667em\lower.5ex\hbox{\syst_logos_ams_script M}% - \kern-.125em\AMSswitch S% + \kern-.1667\emwidth\lower.5\exheight\hbox{\syst_logos_ams_script M}% + \kern-.125\emwidth{\syst_logos_ams_script S}% -\LaTeX} %D Alternative \CONTEXT\ logo, first Idris S.~Hamid's version: @@ -94,13 +93,13 @@ \unexpanded\def\Context % wrong usage of \getscaledglyph {\dontleavehmode \begingroup - C\kern -.0667em\getscaledglyph{.8}\empty{O\kern -.0667emN\kern - -.0549emT\doifitalicelse{\kern-.1em}{\kern-.1667em}\lower.5ex\hbox - {E}\doifitalicelse\empty{\kern-.11em}X\kern-.055emT}% + C\kern -.0667\emwidth{.8}\empty{O\kern -.0667\emwidth N\kern + -.0549\emwidth T\doifitalicelse{\kern-.1\emwidth}{\kern-.1667\emwidth}\lower.5\exheight\hbox + {E}\doifitalicelse\empty{\kern-.11em}X\kern-.055\emwidth T}% \endgroup} -%D The \METAFONT\ and \METAPOST\ logos adapt themselves to the -%D current fontsize, an ugly but usefull hack. +%D The \METAFONT\ and \METAPOST\ logos adapt themselves to the current fontsize, an +%D ugly but usefull hack. \let\logofont\nullfont @@ -118,7 +117,7 @@ \logofont} \def\syst_logos_meta_hyphen % there is no hyphenchar in this font - {\discretionary{\vrule\s!height.33em\s!depth-.27em\s!width.33em}{}{}} + {\discretionary{\vrule\s!height.33\emwidth\s!depth-.27\emwidth\s!width.33\emwidth}{}{}} \unexpanded\def\MetaFont {\dontleavehmode @@ -146,9 +145,8 @@ %D CONTEXT, PPCHTEX, %D AMSTEX, LATEX, LAMSTEX} %D -%D We define the funny written ones as well as the less -%D error prone upper case names (in \CONTEXT\ we tend to -%D write all user defined commands, like abbreviations, in +%D We define the funny written ones as well as the less error prone upper case names +%D (in \CONTEXT\ we tend to write all user defined commands, like abbreviations, in %D uppercase.) \unexpanded\def\METAFONT {\MetaFont} @@ -165,18 +163,18 @@ \unexpanded\def\LAMSTEX {\LamSTeX} \unexpanded\def\INRSTEX {inrs\TeX} -%D And this is how they show up: \TeX, \MetaFont, \MetaPost, -%D \PiCTeX, \TaBlE, \ConTeXt, \PPCHTeX, \AmSTeX, \LaTeX, -%D \LamSTeX. +%D And this is how they show up: \TeX, \MetaFont, \MetaPost, \PiCTeX, \TaBlE, \ConTeXt, +%D \PPCHTeX, \AmSTeX, \LaTeX, \LamSTeX. %D Some placeholders: -\unexpanded\def\eTeX {\mathematics{\varepsilon}-\TeX} -\unexpanded\def\pdfTeX {pdf\TeX} -\unexpanded\def\pdfeTeX{pdfe-\TeX} -\unexpanded\def\luaTeX {lua\TeX} -\unexpanded\def\metaTeX{meta\TeX} -\unexpanded\def\XeTeX {X\lower.5ex\hbox{\kern-.15em\mirror{E}}\kern-.1667em\TeX} +\unexpanded\def\eTeX {\mathematics{\varepsilon}-\TeX} +\unexpanded\def\pdfTeX {pdf\TeX} +\unexpanded\def\pdfeTeX {pdfe-\TeX} +\unexpanded\def\luaTeX {lua\TeX} +\unexpanded\def\luajitTeX{luajit\TeX} +\unexpanded\def\metaTeX {meta\TeX} +\unexpanded\def\XeTeX {X\lower.5\exheight\hbox{\kern-.15\emwidth\mirror{E}}\kern-.1667\emwidth\TeX} % Adapted from a patch by Mojca: @@ -185,9 +183,9 @@ \raise\dimexpr\ht\scratchbox+\dp\scratchbox\relax\hbox{\rotate[\c!rotation=180]{\box\scratchbox}}} \unexpanded\def\XeTeX - {X\lower.5ex + {X\lower.5\exheight \hbox - {\kern-.15em + {\kern-.15\emwidth \iffontchar\font"018E\relax \char"018E% \else @@ -198,14 +196,15 @@ \ifx\fontalternative\s!bs\syst_logos_xetex_e\else \mirror{E}\fi\fi\fi\fi\fi \fi}% - \kern-.1667em\TeX} + \kern-.1667\emwidth\TeX} -\let\ETEX \eTeX -\let\PDFTEX \pdfTeX -\let\PDFETEX\pdfeTeX -\let\LUATEX \luaTeX -\let\LuaTeX \luaTeX -\let\XETEX \XeTeX +\let\ETEX \eTeX +\let\PDFTEX \pdfTeX +\let\PDFETEX \pdfeTeX +\let\LUATEX \luaTeX +\let\LUAJITTEX\luajitTeX +\let\LuaTeX \luaTeX +\let\XETEX \XeTeX % \unexpanded\def\MkApproved % joke, not used so it might move % {\dontleavehmode\rotate @@ -265,22 +264,36 @@ \TeX \endgroup} -\let\luaTeX \LuaTeX -\let\LUATEX \LuaTeX +\unexpanded\def\LuajitTeX + {\dontleavehmode + \begingroup + % at this moment there is no real need for kerning tT + Luajit\kern\zeropoint\TeX + \endgroup} + +\let\luaTeX \LuaTeX +\let\luajitTeX\LuajitTeX +\let\LUATEX \LuaTeX +\let\LUAJITTEX\LuajitTeX \unexpanded\def\MKII{MkII} \unexpanded\def\MKIV{MkIV} \unexpanded\def\MKVI{MkVI} +\unexpanded\def\MKIX{MkIX} +\unexpanded\def\MKXI{MkXI} \unexpanded\def\MPII{MpII} \unexpanded\def\MPIV{MpIV} +\unexpanded\def\MPVI{MpVI} \appendtoks - \def\ConTeXt {ConTeXt}% - \def\MetaPost{MetaPost}% - \def\MetaFont{MetaFont}% - \def\MetaFun {MetaFun}% - \def\TeX {TeX}% + \def\ConTeXt {ConTeXt}% + \def\MetaPost {MetaPost}% + \def\MetaFont {MetaFont}% + \def\MetaFun {MetaFun}% + \def\TeX {TeX}% + \def\LuaTeX {LuaTeX}% + \def\LuajitTeX{LuajitTeX}% \to \everysimplifycommands \protect \endinput diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv index d85391c91..6b7edc7ec 100644 --- a/tex/context/base/cont-new.mkiv +++ b/tex/context/base/cont-new.mkiv @@ -11,7 +11,7 @@ %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. -\newcontextversion{2014.10.17 11:55} +\newcontextversion{2014.10.17 20:10} %D This file is loaded at runtime, thereby providing an excellent place for %D hacks, patches, extensions and new features. diff --git a/tex/context/base/context-version.pdf b/tex/context/base/context-version.pdf index 588cb7645..871391193 100644 Binary files a/tex/context/base/context-version.pdf and b/tex/context/base/context-version.pdf differ diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv index 6573f9f08..59d83eb58 100644 --- a/tex/context/base/context.mkiv +++ b/tex/context/base/context.mkiv @@ -28,7 +28,7 @@ %D up and the dependencies are more consistent. \edef\contextformat {\jobname} -\edef\contextversion{2014.10.17 11:55} +\edef\contextversion{2014.10.17 20:10} \edef\contextkind {beta} %D For those who want to use this: diff --git a/tex/context/base/math-stc.mkvi b/tex/context/base/math-stc.mkvi index 158473305..6d1450f29 100644 --- a/tex/context/base/math-stc.mkvi +++ b/tex/context/base/math-stc.mkvi @@ -280,6 +280,7 @@ \fi} \unexpanded\def\math_stackers_triplet#method#category#codepoint#toptext#bottomtext% + %{\math_stackers_start_group{#category}% {\begingroup \edef\currentmathstackers{#category}% \mathstackersparameter\c!left\relax @@ -443,6 +444,7 @@ \dostoptagged \mathstackersparameter\c!right\relax \endgroup} + %\math_stackers_start_group} \unexpanded\def\definemathextensible {\dotripleempty\math_stackers_define_normal} @@ -500,14 +502,23 @@ % 1 0 name n 0 | 0 1 name n 0 | 1 1 name n n -\unexpanded\def\math_stackers_make_double#top#bottom#category#codepoint#codeextra#text% +\unexpanded\def\math_stackers_start_group#category% {\begingroup \edef\currentmathstackers{#category}% + \edef\p_limits{\mathstackersparameter\c!mathlimits}% + \ifx\p_limits\v!yes + \def\math_stackers_stop_group{\egroup\endgroup\limits}% + \mathop\bgroup + \else + \let\math_stackers_stop_group\endgroup + \fi} + +\unexpanded\def\math_stackers_make_double#top#bottom#category#codepoint#codeextra#text% + {\math_stackers_start_group{#category}% \mathstackersparameter\c!left\relax \dostarttagged\t!mathstacker\currentmathstackers \ifmmode\math_class_by_parameter\mathstackersparameter\else\dontleavehmode\fi - {\edef\currentmathstackers{#category}% - \edef\m_math_stackers_text_middle {#text}% + {\edef\m_math_stackers_text_middle {#text}% % \edef\p_offset {\mathstackersparameter\c!offset}% \edef\p_location {\mathstackersparameter\c!location}% @@ -558,40 +569,6 @@ \math_stackers_stop_tagged % \ifdim\htdp\scratchboxtwo>\zeropoint -% % -% \kern-\scratchwidth -% \math_stackers_start_tagged_top -% \ifcase#top\else -% \math_stackers_top\bgroup -% \raise\dimexpr -% \scratchheight -% +\dp\scratchboxtwo % new -% +\mathstackersparameter\c!distance % was \c!voffset -% \relax -% \box\scratchboxtwo -% \egroup -% \fi -% \math_stackers_stop_tagged -% % -% \scratchunicode#codeextra\relax -% \math_stackers_start_tagged_bot -% \ifcase\scratchunicode\else -% \kern-\scratchwidth -% \setbox\scratchboxtwo\csname\??mathstackersalternative\p_alternative\endcsname -% \fi -% \ifcase#bottom\else -% \math_stackers_bottom\bgroup -% \lower\dimexpr -% \scratchdepth -% +\ht\scratchboxtwo -% +\mathstackersparameter\c!distance % was \c!voffset -% \relax -% \box\scratchboxtwo -% \egroup -% \fi -% \math_stackers_stop_tagged -% % - % \ifcase#bottom\else \kern-\scratchwidth % under @@ -628,12 +605,7 @@ \fi}% \dostoptagged \mathstackersparameter\c!right\relax - \edef\p_limits{\mathstackersparameter\c!mathlimits}% - \ifx\p_limits\v!yes - \expandafter\endgroup\expandafter\limits - \else - \expandafter\endgroup - \fi} + \math_stackers_stop_group} \unexpanded\def\definemathoverextensible {\dotripleempty \math_extensibles_define_over } \unexpanded\def\definemathunderextensible {\dotripleempty \math_extensibles_define_under} @@ -680,8 +652,7 @@ %D A relative new one is a combination of accents and text (as needed in mathml): \unexpanded\def\math_stackers_make_double_text#where#category#codepoint#text#extra% - {\begingroup - \edef\currentmathstackers{#category}% + {\math_stackers_start_group{#category}% \mathstackersparameter\c!left\relax \dostarttagged\t!mathstacker\currentmathstackers \ifmmode\math_class_by_parameter\mathstackersparameter\else\dontleavehmode\fi @@ -805,12 +776,7 @@ }% \dostoptagged \mathstackersparameter\c!right\relax - \edef\p_limits{\mathstackersparameter\c!mathlimits}% - \ifx\p_limits\v!yes - \expandafter\endgroup\expandafter\limits - \else - \expandafter\endgroup - \fi} + \math_stackers_stop_group} \unexpanded\def\definemathovertextextensible {\dotripleempty\math_extensibles_define_over_text } \unexpanded\def\definemathundertextextensible{\dotripleempty\math_extensibles_define_under_text} diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf index 5b24ba2ad..a2de04db8 100644 Binary files a/tex/context/base/status-files.pdf and b/tex/context/base/status-files.pdf differ diff --git a/tex/context/base/status-lua.pdf b/tex/context/base/status-lua.pdf index 0c0895ff7..2dc325d92 100644 Binary files a/tex/context/base/status-lua.pdf and b/tex/context/base/status-lua.pdf differ diff --git a/tex/context/base/strc-sec.mkiv b/tex/context/base/strc-sec.mkiv index bce3448cc..fc02a208a 100644 --- a/tex/context/base/strc-sec.mkiv +++ b/tex/context/base/strc-sec.mkiv @@ -1105,7 +1105,7 @@ {\dodoubleargument\strc_sectioning_setup_number} \def\strc_sectioning_setup_number[#1][#2]% todo: reset if at other level - {\setstructurenumber{\thenamedheadlevel{#1}}{#2}} + {\setstructurenumber{\thenamedheadlevel{#1}}{\number#2}} \def\currentheadnumber{0} % ==> \currentheadnumber diff --git a/tex/context/base/x-asciimath.lua b/tex/context/base/x-asciimath.lua index b4177ddd3..f50b61d85 100644 --- a/tex/context/base/x-asciimath.lua +++ b/tex/context/base/x-asciimath.lua @@ -720,6 +720,8 @@ local p_utf = C(p_utf_base) local p_entity_base = P("&") * ((1-P(";"))^2) * P(";") local p_entity = P("&") * (((1-P(";"))^2) / entities) * P(";") +local p_onechar = p_utf_base * P(-1) + ----- p_number = Cs((patterns.cpnumber or patterns.cnumber or patterns.number)/function(s) return (gsub(s,",","{,}")) end) local sign = P("-")^-1 @@ -1026,7 +1028,7 @@ local function collapse_pairs(t) end i = i + 2 elseif current == "," or current == ";" then - t[i] = current .. "\\thinspace" + -- t[i] = current .. "\\thinspace" -- look sbad in (a,b) i = i + 1 else i = i + 1 @@ -1582,23 +1584,25 @@ asciimath.cleanedup = cleanedup -- sin(x) = 1 : 3.3 uncached 1.2 cached , so no real gain (better optimize the converter then) local function convert(str) - if #str == 1 then - ctx_mathematics(str) - else + if #str > 0 then local unicoded = lpegmatch(u_parser,str) - local texcoded = collapse(lpegmatch(a_parser,unicoded)) - if trace_mapping then - show_result(str,unicoded,texcoded) - end - if #texcoded == 0 then - report_asciimath("error in asciimath: %s",str) + if lpegmatch(p_onechar,unicoded) then + ctx_mathematics(unicoded) else - local message = invalidtex(texcoded) - if message then - report_asciimath("%s: %s",message,str) - ctx_type(formatters["<%s>"](message)) + local texcoded = collapse(lpegmatch(a_parser,unicoded)) + if trace_mapping then + show_result(str,unicoded,texcoded) + end + if #texcoded == 0 then + report_asciimath("error in asciimath: %s",str) else - ctx_mathematics(texcoded) + local message = invalidtex(texcoded) + if message then + report_asciimath("%s: %s",message,str) + ctx_type(formatters["<%s>"](message)) + else + ctx_mathematics(texcoded) + end end end end diff --git a/tex/context/base/x-mathml-basics.mkiv b/tex/context/base/x-mathml-basics.mkiv index 3bd164c7c..244b8df80 100644 --- a/tex/context/base/x-mathml-basics.mkiv +++ b/tex/context/base/x-mathml-basics.mkiv @@ -1,3 +1,5 @@ +% macros=mkvi + % makes sense (but rel vs op ...): % \unexpanded\def\stackrel#1#2{\mathematics{\mathop{\let\limits\relax\mover{#2}{#1}}}} @@ -78,7 +80,9 @@ \mexecuteifdefined\movercommand \relax {#1} \stoptexdefinition \starttexdefinition unexpanded movertext #1#2 - \mathtriplet {#1} {#2} {} + % \mathtriplet {\mathstylehbox{#1}} {#2} {} + \mathtriplet {\mathematics{#1}} {#2} {} +\stoptexdefinition \stoptexdefinition \starttexdefinition unexpanded moveraccentchecker #1#2 \edef\movertoken{\tochar{#2}} @@ -112,7 +116,8 @@ \mexecuteifdefined\mundercommand \relax {#1} \stoptexdefinition \starttexdefinition unexpanded mundertext #1#2 - \mathtriplet {#1} {} {#2} + % \mathtriplet {\mathstylehbox{#1}} {} {#2} + \mathtriplet {\mathematics{#1}} {} {#2} \stoptexdefinition \starttexdefinition unexpanded munderaccentchecker #1#2 \edef\mundertoken{\tochar{#2}} @@ -160,35 +165,35 @@ \starttext -$\mover{←}{test}$\par -$\mover{\utfchar{"2190}}{test}$\par -$\mover{e:leftarrow}{test}$\par -$\mover{x:2190}{test}$\par +% $\mover{←}{test}$\par +% $\mover{\utfchar{"2190}}{test}$\par +% $\mover{e:leftarrow}{test}$\par +% $\mover{x:2190}{test}$\par -$\mover{test}{⏞}$\par -$\mover{test}{\utfchar{"23DE}}$\par -$\mover{test}{e:overbrace}$\par -$\mover{test}{x:23DE}$\par -$\mover{test}{over}$\par +% $\mover{test}{⏞}$\par +% $\mover{test}{\utfchar{"23DE}}$\par +% $\mover{test}{e:overbrace}$\par +% $\mover{test}{x:23DE}$\par +% $\mover{test}{over}$\par \mover{test}{⏞}\par -\mover{test}{\utfchar{"23DE}}\par -\mover{test}{e:overbrace}\par -\mover{test}{x:23DE}\par +% \mover{test}{\utfchar{"23DE}}\par +% \mover{test}{e:overbrace}\par +% \mover{test}{x:23DE}\par -$\munder{←}{test}$\par -$\munder{\utfchar{"2190}}{test}$\par -$\munder{e:leftarrow}{test}$\par -$\munder{x:2190}{test}$\par +% $\munder{←}{test}$\par +% $\munder{\utfchar{"2190}}{test}$\par +% $\munder{e:leftarrow}{test}$\par +% $\munder{x:2190}{test}$\par -$\munder{test}{⏟}$\par -$\munder{test}{\utfchar{"23DF}}$\par -$\munder{test}{e:underbrace}$\par -$\munder{test}{x:23DF}$\par -$\munder{test}{under}$\par +% $\munder{test}{⏟}$\par +% $\munder{test}{\utfchar{"23DF}}$\par +% $\munder{test}{e:underbrace}$\par +% $\munder{test}{x:23DF}$\par +% $\munder{test}{under}$\par -\math{{\msup{x}{2}\mo{+}\mn{2}\mi{x}\mo{+}\mi{b}}} +% \math{{\msup{x}{2}\mo{+}\mn{2}\mi{x}\mo{+}\mi{b}}} -\mrow{\msup{x}{2}\mo{+}\mn{2}\mi{x}\mo{+}\mi{b}} +% \mrow{\msup{x}{2}\mo{+}\mn{2}\mi{x}\mo{+}\mi{b}} \stoptext diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index 6155d18d7..7592a0908 100644 --- a/tex/generic/context/luatex/luatex-fonts-merged.lua +++ b/tex/generic/context/luatex/luatex-fonts-merged.lua @@ -1,6 +1,6 @@ -- merged file : luatex-fonts-merged.lua -- parent file : luatex-fonts.lua --- merge date : 10/17/14 11:55:51 +-- merge date : 10/17/14 20:10:26 do -- begin closure to overcome local limits and interference -- cgit v1.2.3