diff options
author | Context Git Mirror Bot <phg42.2a@gmail.com> | 2016-01-12 17:15:07 +0100 |
---|---|---|
committer | Context Git Mirror Bot <phg42.2a@gmail.com> | 2016-01-12 17:15:07 +0100 |
commit | 8d8d528d2ad52599f11250cfc567fea4f37f2a8b (patch) | |
tree | 94286bc131ef7d994f9432febaf03fe23d10eef8 /tex/context/base/mkiv/core-dat.mkiv | |
parent | f5aed2e51223c36c84c5f25a6cad238b2af59087 (diff) | |
download | context-8d8d528d2ad52599f11250cfc567fea4f37f2a8b.tar.gz |
2016-01-12 16:26:00
Diffstat (limited to 'tex/context/base/mkiv/core-dat.mkiv')
-rw-r--r-- | tex/context/base/mkiv/core-dat.mkiv | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/tex/context/base/mkiv/core-dat.mkiv b/tex/context/base/mkiv/core-dat.mkiv new file mode 100644 index 000000000..26b1f14b5 --- /dev/null +++ b/tex/context/base/mkiv/core-dat.mkiv @@ -0,0 +1,101 @@ +%D \module +%D [ file=core-dat, +%D version=20122.04.17, % replaces core-two from 1997.03.31, +%D title=\CONTEXT\ Core Macros, +%D subtitle=Multipass Datasets, +%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 Core Macros / Multipass Datasets} + +%D \starttyping +%D \definedataset[test-1] +%D \definedataset[test-2][delay=yes] +%D +%D \startlines +%D set 1: \setdataset[test-1][whatever=this-or-that-1] +%D set 2: \setdataset[test-2][whatever=this-or-that-2] +%D set 3: \setdataset[test-2][whatever=this-or-that-3] +%D \stoplines +%D +%D \startlines +%D get 1: \datasetvariable{test-1}{1}{whatever} / \datasetvariable{test-1}{1}{realpage} +%D get 2: \datasetvariable{test-2}{1}{whatever} / \datasetvariable{test-2}{1}{realpage} +%D get 3: \datasetvariable{test-2}{2}{whatever} / \datasetvariable{test-2}{2}{realpage} +%D \stoplines +%D \stoptyping + +\unprotect + +\registerctxluafile{core-dat}{1.001} + +\installcorenamespace{dataset} + +\installcommandhandler \??dataset {dataset} \??dataset + +\unexpanded\def\setdataset + {\dotripleempty\syst_datasets_set} + +\def\syst_datasets_set + {\ifthirdargument + \expandafter\syst_datasets_set_named + \else + \expandafter\syst_datasets_set_indexed + \fi} + +\def\syst_datasets_set_named[#1][#2][#3]% + {\begingroup + \edef\currentdataset{#1}% + \clf_setdataset + name {\currentdataset}% + tag {#2}% + delay {\datasetparameter\c!delay}% + data {#3}% + \relax + \endgroup} + +\def\syst_datasets_set_indexed[#1][#2][#3]% + {\begingroup + \edef\currentdataset{#1}% + \clf_setdataset + name {\currentdataset}% + delay {\datasetparameter\c!delay}% + data {#2}% + \relax + \endgroup} + +\def\datasetvariable#1#2#3% + {\clf_datasetvariable{#1}{#2}{#3}} + +\installcorenamespace{pagestate} + +\installcommandhandler \??pagestate {pagestate} \??pagestate + +\setuppagestate + [\c!delay=\v!yes] + +\unexpanded\def\setpagestate + {\dodoubleempty\syst_pagestates_set} + +\def\syst_pagestates_set[#1][#2]% + {\begingroup + \edef\currentpagestate{#1}% + \clf_setpagestate + name {\currentpagestate}% + tag {#2}% + delay {\pagestateparameter\c!delay}% + \relax + \endgroup} + +\def\pagestaterealpage#1#2% + {\clf_pagestaterealpage{#1}{#2}} + +\def\setpagestaterealpageno#1#2% + {\clf_setpagestaterealpageno{#1}{#2}} + +\protect |