diff options
author | Taco Hoekwater <taco@elvenkind.com> | 2008-06-12 10:42:53 +0000 |
---|---|---|
committer | Taco Hoekwater <taco@elvenkind.com> | 2008-06-12 10:42:53 +0000 |
commit | 0d01365d53c456d246da0ca1f0b3cd9868f02b35 (patch) | |
tree | 01a655c8028e17cfb371456b299c1848fe08c05b /Master/texmf-dist/tex/context/base/core-two.mkiv | |
parent | 44f3714442da07fdfc36a7f2a8dcd5d4294c5d26 (diff) |
ConTeXt release 2008.05.21
git-svn-id: svn://tug.org/texlive/trunk@8691 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/context/base/core-two.mkiv')
-rw-r--r-- | Master/texmf-dist/tex/context/base/core-two.mkiv | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/context/base/core-two.mkiv b/Master/texmf-dist/tex/context/base/core-two.mkiv new file mode 100644 index 00000000000..bbdc6d4890a --- /dev/null +++ b/Master/texmf-dist/tex/context/base/core-two.mkiv @@ -0,0 +1,83 @@ +%D \module +%D [ file=core-two, % moved from core-uti +%D version=2006.09.24, +%D title=\CONTEXT\ Core Macros, +%D subtitle=Two Pass Data, +%D author=Hans Hagen, +%D date=\currentdate, +%D copyright={PRAGMA / Hans Hagen \& Ton Otten}] +%C +%C This module is part of the \CONTEXT\ macro||package and is +%C therefore copyrighted by \PRAGMA. See mreadme.pdf for +%C details. + +\unprotect + +\registerctxluafile{core-two}{1.001} + +\appendtoks + \immediatewriteutilitytua{if not job.twopass then job.twopass = { } end}% + \immediatewriteutilitytua{local tp = job.twopass}% +\to \everyopenutilities + +%D I'm not that sure if this behaves exactly like mkii. This needs a cleanup. + +% \def\immediatesavetwopassdata #1#2#3{\immediatewriteutilitycommand{\twopassentry{#1}{#2}{#3}}} +% \def\savetwopassdata #1#2#3{\writeutilitycommand{\twopassentry{#1}{#2}{#3}}} +% \def\lazysavetwopassdata #1#2#3{\expanded{\writeutilitycommand{\noexpand\twopassentry{#1}{#2}{#3}}}} % expanded ! +% \def\savetaggedtwopassdata #1#2#3#4{\immediatewriteutilitycommand{\twopassentry{#1}{#2}{#3::#4}}} +% \def\lazysavetaggedtwopassdata#1#2#3#4{\expanded{\writeutilitycommand{\noexpand\twopassentry{#1}{#2}{#3::#4}}}} % expanded ! + +\def\immediatesavetwopassdata #1#2#3{\expanded{\immediatewriteutilitytua{ti(tp['#1'],"#3")}}} +\def\savetwopassdata #1#2#3{\expanded{\writeutilitytua {ti(tp['#1'],"#3")}}} +\def\lazysavetwopassdata #1#2#3{\expanded{\writeutilitytua {ti(tp['#1'],"#3")}}} +\def\savetaggedtwopassdata #1#2#3#4{\expanded{\immediatewriteutilitytua{tp['#1']['#3']="#4"}}} +\def\lazysavetaggedtwopassdata #1#2#3#4{\expanded{\writeutilitytua {tp['#1']['#3']="#4"}}} + +% temp hack: needs a proper \starteverytimeluacode + +\def\dodefinetwopasslist#1% + {\ctxlua{job.definetwopassdata('#1')}% + \immediatewriteutilitytua{job.definetwopassdata('#1')}} + +\def\definetwopasslist#1% + {\dodefinetwopasslist{#1}% + \doglobal\addtocommalist{#1}\alltwopasslists} + +\appendtoks + \processcommacommand[\alltwopasslists]\dodefinetwopasslist + \globallet\alltwopasslists\empty +\to \everyopenutilities + +\def\testtwopassdata + {\ifx\twopassdata\empty\twopassdatafoundfalse\else\twopassdatafoundtrue\fi} + +\def\gettwopassdata#1% + {\edef\twopassdata{\ctxlua{job.gettwopassdata("#1")}}\testtwopassdata} + +\def\checktwopassdata#1% + {\edef\twopassdata{\ctxlua{job.checktwopassdata("#1")}}\testtwopassdata} + +\def\findtwopassdata#1#2% + {\edef\twopassdata{\ctxlua{job.findtwopassdata("#1","#2")}}\testtwopassdata} + +\let\getfirsttwopassdata\checktwopassdata + +\def\getlasttwopassdata#1% + {\edef\noftwopassitems{\ctxlua{job.noftwopassitems("#1")}}% + \edef\twopassdata {\ctxlua{job.getlasttwopassdata("#1")}}% + \testtwopassdata} + +\def\getfromtwopassdata#1#2% + {\edef\twopassdata{\ctxlua{job.getfromtwopassdata("#1",#2)}}\testtwopassdata} + +\def\gettwopassdatalist + {\getnamedtwopassdatalist\twopassdatalist} + +\def\getnamedtwopassdatalist#1#2% \cs tag + {\edef#1{\ctxlua{job.twopassdatalist("#2")}}} + +\def\doifelseintwopassdata#1#2% tag dat + {\ctxlua{job.doifelseintwopassdata("#1","#2"))}} + +\protect \endinput |