From 7ccf84871bec62087336980c0578738715f881e6 Mon Sep 17 00:00:00 2001 From: Marius Date: Tue, 19 Feb 2013 21:00:28 +0200 Subject: beta 2013.02.19 19:38 --- tex/context/base/char-def.lua | 2 +- tex/context/base/cont-new.mkii | 2 +- tex/context/base/cont-new.mkiv | 2 +- tex/context/base/context-version.pdf | Bin 4125 -> 4129 bytes tex/context/base/context-version.png | Bin 40168 -> 40326 bytes tex/context/base/context.mkii | 2 +- tex/context/base/context.mkiv | 3 +- tex/context/base/math-del.mkiv | 2 + tex/context/base/math-fen.mkiv | 101 +++++++++++++++++++++ tex/context/base/math-stc.mkvi | 11 ++- tex/context/base/spac-ver.mkiv | 8 ++ tex/context/base/status-files.pdf | Bin 24740 -> 24749 bytes tex/context/base/status-lua.pdf | Bin 208784 -> 208700 bytes tex/context/base/status-mkiv.lua | 6 ++ tex/generic/context/luatex/luatex-fonts-merged.lua | 2 +- 15 files changed, 134 insertions(+), 7 deletions(-) create mode 100644 tex/context/base/math-fen.mkiv (limited to 'tex') diff --git a/tex/context/base/char-def.lua b/tex/context/base/char-def.lua index 940e3208a..76fcd99b2 100644 --- a/tex/context/base/char-def.lua +++ b/tex/context/base/char-def.lua @@ -443,12 +443,12 @@ characters.data={ adobename="slash", category="po", cjkwd="na", + comment="mathsymbol=0x2044", contextname="textslash", description="SOLIDUS", direction="cs", linebreak="sy", mathclass="ordinary", - mathsymbol=0x2044, unicodeslot=0x002F, }, { diff --git a/tex/context/base/cont-new.mkii b/tex/context/base/cont-new.mkii index 1a9d5f66e..0b5b8df02 100644 --- a/tex/context/base/cont-new.mkii +++ b/tex/context/base/cont-new.mkii @@ -11,7 +11,7 @@ %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. -\newcontextversion{2013.02.19 11:14} +\newcontextversion{2013.02.19 19:38} %D This file is loaded at runtime, thereby providing an %D excellent place for hacks, patches, extensions and new diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv index 6f0e0a030..d45cba489 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{2013.02.19 11:14} +\newcontextversion{2013.02.19 19:38} %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 51484e393..863b7b6da 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-version.png b/tex/context/base/context-version.png index 4cbe38448..dcd4ad222 100644 Binary files a/tex/context/base/context-version.png and b/tex/context/base/context-version.png differ diff --git a/tex/context/base/context.mkii b/tex/context/base/context.mkii index ec3971c66..9eba64cf0 100644 --- a/tex/context/base/context.mkii +++ b/tex/context/base/context.mkii @@ -20,7 +20,7 @@ %D your styles an modules. \edef\contextformat {\jobname} -\edef\contextversion{2013.02.19 11:14} +\edef\contextversion{2013.02.19 19:38} %D For those who want to use this: diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv index 6f7745361..dad7c3621 100644 --- a/tex/context/base/context.mkiv +++ b/tex/context/base/context.mkiv @@ -25,7 +25,7 @@ %D up and the dependencies are more consistent. \edef\contextformat {\jobname} -\edef\contextversion{2013.02.19 11:14} +\edef\contextversion{2013.02.19 19:38} %D For those who want to use this: @@ -422,6 +422,7 @@ \loadmarkfile{math-scr} \loadmarkfile{math-int} \loadmarkfile{math-del} +\loadmarkfile{math-fen} \loadmarkfile{math-inl} \loadmarkfile{math-dis} %loadmarkfile{math-lan} diff --git a/tex/context/base/math-del.mkiv b/tex/context/base/math-del.mkiv index 569b4cd3d..646572818 100644 --- a/tex/context/base/math-del.mkiv +++ b/tex/context/base/math-del.mkiv @@ -15,6 +15,8 @@ \unprotect +%D Old code that will be redone: +%D %D \macros %D {checkdelimiters, fakeleftdelimiter, fakerightdelimiter} %D diff --git a/tex/context/base/math-fen.mkiv b/tex/context/base/math-fen.mkiv new file mode 100644 index 000000000..bd6b6a75f --- /dev/null +++ b/tex/context/base/math-fen.mkiv @@ -0,0 +1,101 @@ +%D \module +%D [ file=math-fen, +%D version=2012.02.18, +%D title=\CONTEXT\ Math Macros, +%D subtitle=Fences, +%D author=Hans Hagen, +%D date=\currentdate, +%D copyright={PRAGMA ADE \& \CONTEXT\ Development Team}] +%C +%C This module is part of the \CONTEXT\ macro||package and is +%C therefore copyrighted by \PRAGMA. See mreadme.pdf for +%C details. + +\writestatus{loading}{ConTeXt Math Macros / Fences} + +\unprotect + +% \definemathfence [fancybracket] [bracket] [command=yes,color=blue] +% +% test $|x|$ test \par +% test $||x||$ test (okay) \par +% test $a\left|\frac{1}{b}\right|c$ test \par +% test $a\left||\frac{1}{b}\right||c$ test (not okay) \par +% +% \setupmathfences [color=red] +% +% test $a\fenced[bar]{\frac{1}{b}}c$ test \par +% test $a\fenced[doublebar]{\frac{1}{b}}c$ test \par +% test $a\fenced[bracket]{\frac{1}{b}}c$ test \par +% test $a\fancybracket{\frac{1}{b}}c$ test \par + +\installcorenamespace{mathfences} +\installcorenamespace{mathfencesleft} +\installcorenamespace{mathfencesmiddle} +\installcorenamespace{mathfencesright} + +\installcommandhandler \??mathfences {mathfence} \??mathfences + +\let\setupmathfences\setupmathfence + +\setupmathfences + [\c!left="002E, + \c!right="002E, + \c!middle="002E, + \c!color=, + \c!command=] + +\appendtoks + \edef\p_command{\mathfenceparameter\c!command}% + \ifx\p_command\v!yes + \setuevalue\currentmathfence{\math_fenced_fenced[\currentmathfence]}% + \fi +\to \everydefinemathfence + +\def\math_fenced_left {\normalleft \utfchar{\mathfenceparameter\c!left }} +\def\math_fenced_middle{\normalmiddle\utfchar{\mathfenceparameter\c!middle}} +\def\math_fenced_right {\normalright \utfchar{\mathfenceparameter\c!right }} + +\let\fence \relax +\let\fenced\relax + +\unexpanded\def\math_fenced_fenced[#1]% + {\begingroup + \edef\currentmathfence{#1}% + \let\fence\math_fenced_middle + \edef\p_math_fenced_color{\mathfenceparameter\c!color}% + \ifx\p_math_fenced_color\empty + \expandafter\math_fenced_normal + \else + \expandafter\math_fenced_colored + \fi} + +\def\math_fenced_normal#1% + {\math_fenced_left + #1% + \math_fenced_right + \endgroup} + +\def\math_fenced_colored#1% + {\pushcolor[\p_math_fenced_color]% + \math_fenced_left + \popcolor + #1% + \pushcolor[\p_math_fenced_color]% + \math_fenced_right + \popcolor + \endgroup} + +\appendtoks + \let\fenced\math_fenced_fenced +\to \everymathematics + +\definemathfence [parenthesis] [\c!left="0028,\c!right="0029] +\definemathfence [bracket] [\c!left="005B,\c!right="005D] +\definemathfence [braces] [\c!left="007B,\c!right="007D] +\definemathfence [bar] [\c!left="007C,\c!right="007C] +\definemathfence [doublebar] [\c!left="2016,\c!right="2016] + +%definemathfence [fancybracket] [bracket] [command=yes,color=red] + +\protect diff --git a/tex/context/base/math-stc.mkvi b/tex/context/base/math-stc.mkvi index 6e344cd62..2dc2b2c22 100644 --- a/tex/context/base/math-stc.mkvi +++ b/tex/context/base/math-stc.mkvi @@ -120,6 +120,8 @@ \c!mindepth=\zeropoint, \c!minwidth=\emwidth, \c!order=\v!normal, + \c!strut=, + %\c!color=, % todo: when I need it \c!topcommand=, \c!middlecommand=, \c!bottomcommand=, @@ -147,7 +149,10 @@ \def\math_stackers_flushtext#command#text% {\ifdim\scratchleftoffset >\zeropoint\math_stackers_skip\scratchleftoffset \fi - \strut\mathstackersparameter#command#text% + \ifx\p_strut\v!no \else + \strut + \fi + \mathstackersparameter#command#text% \ifdim\scratchrightoffset>\zeropoint\math_stackers_skip\scratchrightoffset\fi} \def\math_stackers_toptext {\math_stackers_flushtext\c!topcommand \m_math_stackers_text_top } @@ -222,6 +227,7 @@ {\edef\p_offset {\mathstackersparameter\c!offset}% \edef\p_location{\mathstackersparameter\c!location}% \edef\p_order {\mathstackersparameter\c!order}% + \edef\p_strut {\mathstackersparameter\c!strut}% \ifx\p_order\v!reverse \edef\m_math_stackers_text_top {#bottomtext}% \edef\m_math_stackers_text_bottom{#toptext}% @@ -399,6 +405,7 @@ % \edef\p_offset {\mathstackersparameter\c!offset}% \edef\p_location{\mathstackersparameter\c!location}% + \edef\p_strut {\mathstackersparameter\c!strut}% % \scratchleftoffset \zeropoint \scratchrightoffset\zeropoint @@ -554,6 +561,7 @@ [\v!top] [\v!mathematics] [\c!location=\v!top, + \c!strut=\v!no, \c!middlecommand=\mathematics, \c!hoffset=\zeropoint] @@ -561,6 +569,7 @@ [\v!bottom] [\v!mathematics] [\c!location=\v!top, + \c!strut=\v!no, \c!middlecommand=\mathematics, \c!hoffset=\zeropoint] diff --git a/tex/context/base/spac-ver.mkiv b/tex/context/base/spac-ver.mkiv index 667b3d00c..7c3604dd4 100644 --- a/tex/context/base/spac-ver.mkiv +++ b/tex/context/base/spac-ver.mkiv @@ -604,6 +604,7 @@ % % \setstrut : instellen \strut % \setnostrut : resetten \strut, \endstrut, \begstrut +% \setnonestrut : resetten \strut (fast one) % % \setteststrut : instellen zichtbare struts % \resetteststrut : instellen onzichtbare struts @@ -964,6 +965,13 @@ \setcharstrut\m_strut \fi} +\unexpanded\def\dosynchronizestrut#1% no [] parsing, faster for internal + {\ifcsname\??struts#1\endcsname + \csname\??struts#1\endcsname + \else + \setcharstrut\m_strut + \fi} + \unexpanded\def\showstruts {\setteststrut \settestcrlf} diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf index 411639630..4a97358a2 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 0e4300c4b..aad48ee2e 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/status-mkiv.lua b/tex/context/base/status-mkiv.lua index 2e833c3da..13ec83255 100644 --- a/tex/context/base/status-mkiv.lua +++ b/tex/context/base/status-mkiv.lua @@ -1837,6 +1837,12 @@ return { loading = "always", status = "okay", }, + { + category = "mkiv", + filename = "math-fen", + loading = "always", + status = "okay", + }, { category = "mkiv", comment = "code might move to here", diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index 117e0ced5..c4859243f 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 : 02/19/13 11:14:18 +-- merge date : 02/19/13 19:38:41 do -- begin closure to overcome local limits and interference -- cgit v1.2.3