diff options
Diffstat (limited to 'Master/texmf-dist/tex/context/base/x-calcmath.mkiv')
-rw-r--r-- | Master/texmf-dist/tex/context/base/x-calcmath.mkiv | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/context/base/x-calcmath.mkiv b/Master/texmf-dist/tex/context/base/x-calcmath.mkiv new file mode 100644 index 00000000000..29bc1af9a32 --- /dev/null +++ b/Master/texmf-dist/tex/context/base/x-calcmath.mkiv @@ -0,0 +1,89 @@ +% engine=luatex + +%D \module +%D [ file=m-calcmath, +%D version=2006.04.24, % 1999.11.06, +%D title=\CONTEXT\ Modules, +%D subtitle=Calculator Math, +%D author=Hans Hagen, +%D date=\currentdate, +%D copyright=PRAGMA] +%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 Lua code. + +\ctxloadluafile{x-calcmath}{} + +%D Interface: + +\unprotect + +\def\inlinecalcmath #1{\mathematics{\ctxlua{calcmath.tex("#1",1)}}} +\def\displaycalcmath#1{\startformula\ctxlua{calcmath.tex("#1",2)}\stopformula} + +\let\calcmath\inlinecalcmath + +\let\icm\inlinecalcmath +\let\dcm\displaycalcmath + +\startxmlsetups xml:cam:define + \xmlsetsetup {\xmldocument} {cam:*} {*} + \xmlsetsetup {\xmldocument} {(icm|dcm)} {cam:*} +\stopxmlsetups + +\xmlregisterns{cam}{calcmath} + +\xmlregistersetup{xml:cam:define} + +% tex -> lua -> tex -> lua -> tex +% \mathematics{\ctxlua{calcmath.xml(\!!bs\xmlflush{#1}\!!es,1)}} +% tex -> lua -> tex +% \mathematics{\ctxlua{calcmath.xml("#1",1)}}% + +\startxmlsetups cam:i + \mathematics{\ctxlua{calcmath.xml("#1",1)}}% +\stopxmlsetups + +\startxmlsetups cam:d + \startformula\ctxlua{calcmath.xml("#1",2)}\stopformula +\stopxmlsetups + +\startxmlsetups cam:icm + \mathematics{\ctxlua{calcmath.xml("#1",1)}} +\stopxmlsetups + +\startxmlsetups cam:dcm + \startformula\ctxlua{calcmath.xml("#1",2)}\stopformula +\stopxmlsetups + +\protect \endinput + +\starttext + +% \calcmath{sin(x) + x^2 + x^(1+x) + 1/x^2 + mean(x+mean(y))} +% \calcmath{int(a,b,c)} +% \calcmath{(1+x)/(1+x) + (1+x)/(1+(1+x)/(1+x))} +% \calcmath{10E-2} +% \calcmath{(1+x)/x} +% \calcmath{(1+x)/12} +% \calcmath{(1+x)/-12} +% \calcmath{1/-12} +% \calcmath{12x/(1+x)} +% \calcmath{exp(x+exp(x+1))} +% \calcmath{abs(x+abs(x+1)) + pi + inf} +% \calcmath{Dx Dy} +% \calcmath{D(x+D(y))} +% \calcmath{Df(x)} +% \calcmath{g(x)} + +\calcmath{sqrt(sin^2(x)+cos^2(x))} + +\startXMLdata +test <icm>sqrt(sin^2(x)+cos^2(x))</icm> test +test <dcm>sqrt(sin^2(x)+cos^2(x))</dcm> test +\stopXMLdata + +\stoptext |