%D \module %D [ file=math-pln, %D version=2001.11.16, %D title=\CONTEXT\ Math Macros, %D subtitle=Plain Helpers, %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. %D Here we collect some Plain \TEX\ leftovers. \writestatus{loading}{ConTeXt Math Macros / Plain Helpers} \unprotect % we need proper unicode: \def\relbar{\mathrel{\smash-}} % - has the same height as + .. no clue what this refers to % might change \unexpanded\def\hrulefill{\leaders\hrule\hfill} \unexpanded\def\dotfill {\cleaders\hbox{\normalstartimath\mathsurround\zeropoint\mkern1.5mu.\mkern1.5mu\normalstopimath}\hfill} % will move \def\oalign#1% {\leavevmode % plain tex uses this \vtop {\baselineskip\zeroskip \lineskip.25\exheight \ialign{\alignmark\alignmark\crcr#1\crcr}}} \def\ooalign % chars over each other {\lineskiplimit-\maxdimen \oalign} % needs checking \def\choose{\atopwithdelims()} \def\brack {\atopwithdelims[]} \def\brace {\atopwithdelims\{\}} % needs checking \unexpanded\def\buildrel#1\over#2% {\mathrel{\mathop{\kern\zeropoint#2}\limits^{#1}}} \unexpanded\def\bmod {\nonscript \mskip-\medmuskip \mkern5mu \mfunction{mod}% \penalty900 \mkern5mu \nonscript \mskip-\medmuskip} \unexpanded\def\pmod#1% {\allowbreak \mkern18mu (\mfunction{mod}\mskip\medmuskip#1)} \unexpanded\def\cases#1% {\left\{% \mskip\thinmuskip \vcenter {\normalbaselines \mathsurround\zeropoint \ialign{% \normalstartimath\alignmark\alignmark\hfil\normalstopimath \aligntab \quad\alignmark\alignmark\hfil \crcr #1% \crcr}}% \right.} \unexpanded\def\matrix#1% {\emptyhbox \mskip\thinmuskip \vcenter {\normalbaselines \mathsurround\zeropoint \ialign{% \hfil\normalstartimath\alignmark\alignmark\normalstopimath\hfil \aligntab \aligntab \quad\hfil\normalstartimath\alignmark\alignmark\normalstopimath\hfil \crcr \mathstrut \crcr \noalign{\kern-\baselineskip} #1\crcr \mathstrut \crcr \noalign{\kern-\baselineskip}}}% \mskip\thinmuskip} \unexpanded\def\pmatrix#1% {\left(\matrix{#1}\right)} % \unexpanded\def\openup % {\afterassignment\math_openup\scratchdimen=} % % \def\math_openup % {\advance\lineskip \scratchdimen % \advance\baselineskip \scratchdimen % \advance\lineskiplimit\scratchdimen} \let\math_closeup\relax \unexpanded\def\math_openup {\afterassignment\math_openup_indeed\scratchdimen} \def\math_openup_indeed {\unexpanded\edef\math_closeup {\lineskip \the\lineskip \baselineskip \the\baselineskip \lineskiplimit\the\lineskiplimit \relax}% \advance \lineskip \scratchdimen \advance \baselineskip \scratchdimen \advance \lineskiplimit \scratchdimen} \let\openup \math_openup \def\closeup{\math_closeup} % dynamic \unexpanded\def\displaylines#1% {\the\mathdisplayaligntweaks \tabskip\zeroskip \halign {\hbox to \displaywidth{% \normalstartimath\tabskip\zeroskip\everycr\emptytoks\hfil\displaystyle\alignmark\alignmark\hfil\normalstopimath}\crcr #1\crcr}} \protect \endinput