diff options
Diffstat (limited to 'tex/context/base/s-pre-60.mkiv')
-rw-r--r-- | tex/context/base/s-pre-60.mkiv | 134 |
1 files changed, 28 insertions, 106 deletions
diff --git a/tex/context/base/s-pre-60.mkiv b/tex/context/base/s-pre-60.mkiv index 70f8978b0..b39a06311 100644 --- a/tex/context/base/s-pre-60.mkiv +++ b/tex/context/base/s-pre-60.mkiv @@ -13,8 +13,6 @@ % use lua instead of global mess -\unprotect - \startmode[paper,print] \let\StartSteps\relax \let\StopSteps \relax @@ -25,31 +23,22 @@ \endinput \stopmode -\newcount\c_module_pre_steps_current -\newcount\c_module_pre_steps_maximum -\newcount\c_module_pre_steps_nesting_step -\newcount\c_module_pre_steps_nesting_steps -\newcount\c_module_pre_steps_nesting_busy - -\def\StepCounter {\the\c_module_pre_steps_current} -\def\StepMaximum {\the\c_module_pre_steps_maximum} -\def\StepLayer {step:\the\c_module_pre_steps_current} -\def\NextStepLayer {step:\the\numexpr\c_module_pre_steps_current+\plusone\relax} -\def\FirstStepLayer{step:1} +\newcounter\StepCounter +\newcounter\StepMaximum \useJSscripts[stp] \startsetups[set-stepper] - \ifnum\getvariable{stepper}{nofsteps}>\c_module_pre_steps_maximum + \ifnum\getvariable{stepper}{nofsteps}>\StepMaximum - \dostepwiserecurse {\numexpr\c_module_pre_steps_maximum+\plusone\relax} {\getvariable{stepper}{nofsteps}} {1} { + \dostepwiserecurse {\numexpr\StepMaximum+1\relax} {\getvariable{stepper}{nofsteps}} {1} { \doifnotmode{nosteps,nostep} { \expanded{\defineviewerlayer[step:\recurselevel][state=stop,scope=global]} } } - \global\c_module_pre_steps_maximum\getvariable{stepper}{nofsteps}\relax + \xdef\StepMaximum{\getvariable{stepper}{nofsteps}} \fi @@ -69,100 +58,25 @@ % todo: roll back blank -\unexpanded\def\ResetStep - {\iftrialtypesetting\else - \global\c_module_pre_steps_current\zerocount - \fi} - -\unexpanded\def\NextStep - {\iftrialtypesetting\else - \global\advance\c_module_pre_steps_current\plusone - \fi} - -\unexpanded\def\PrevStep - {\iftrialtypesetting\else - \global\advance\c_module_pre_steps_current\minusone - \fi} - -\unexpanded\def\FlushStep - {\iftrialtypesetting\else - \StopStep - \NextStep - \StartStep - \fi} - -\unexpanded\def\StartStep - {\iftrialtypesetting\else - \global\advance\c_module_pre_steps_nesting_step\plusone - \ifcase\c_module_pre_steps_nesting_step\or - \startviewerlayer[\StepLayer]% - \fi - \fi - \ignorespaces} - -\unexpanded\def\StopStep - {\removeunwantedspaces - \iftrialtypesetting\else - \ifcase\c_module_pre_steps_nesting_step\or - \stopviewerlayer - \fi - \global\advance\c_module_pre_steps_nesting_step\minusone - \fi} - -\unexpanded\def\StartSteps - {\iftrialtypesetting\else - \global\advance\c_module_pre_steps_nesting_steps\plusone - \ifcase\c_module_pre_steps_nesting_steps\or - \ResetStep - \NextStep - \StartStep - \fi - \fi} - -\unexpanded\def\StopSteps - {\iftrialtypesetting\else - \ifcase\c_module_pre_steps_nesting_steps\or - \StopStep - \PrevStep - \fi - \global\advance\c_module_pre_steps_nesting_steps\minusone - \fi} - -\unexpanded\def\StartBusy - {\iftrialtypesetting\else - \global\advance\c_module_pre_steps_nesting_busy\plusone - \ifcase\c_module_pre_steps_nesting_busy\or - \startviewerlayer[step:busy] - \fi - \fi - \ignorespaces} - -\unexpanded\def\StopBusy - {\removeunwantedspaces - \iftrialtypesetting\else - \ifcase\c_module_pre_steps_nesting_busy\or - \stopviewerlayer - \fi - \global\advance\c_module_pre_steps_nesting_busy\minusone - \fi} - -%D Handy: - -\unexpanded\def\StartLocalSteps - {\ResetStep} +\def\ResetStep {\doglobal\newcounter\StepCounter} +\def\NextStep {\doglobal\increment \StepCounter} +\def\PrevStep {\doglobal\decrement \StepCounter} -\unexpanded\def\StopLocalSteps - {} +\def\StepLayer {step:\StepCounter} +\def\NextStepLayer {step:\the\numexpr\StepCounter+1\relax} +\def\FirstStepLayer{step:1} -\unexpanded\def\StartLocalStep - {\NextStep - \StartStep} +\def\StartStep {\startviewerlayer[\StepLayer]\ignorespaces} +\def\StopStep {\removeunwantedspaces\stopviewerlayer} +\def\StartSteps {\iftrialtypesetting\else\ResetStep\NextStep\StartStep\fi} +\def\StopSteps {\iftrialtypesetting\else\StopStep \PrevStep \fi} +\def\FlushStep {\iftrialtypesetting\else\StopStep \NextStep\StartStep\fi} -\unexpanded\def\StopLocalStep - {\StopStep} +\def\StartBusy {\startviewerlayer[step:busy]\ignorespaces} +\def\StopBusy {\removeunwantedspaces\stopviewerlayer} \appendtoks - \ResetStep + \ResetStep \to \everyaftershipout \setupinteraction @@ -198,6 +112,14 @@ [symbol={attach-normal,attach-down}, textlayer=\StepLayer] +%D Handy: + +\def\StartLocalSteps{\ResetStep} +\def\StopLocalSteps {} + +\def\StartLocalStep {\NextStep\StartStep} +\def\StopLocalStep {\StopStep} + %D used as (given some definitions): %D %D \starttyping @@ -209,4 +131,4 @@ %D \StopLocalSteps %D \stoptyping -\protect \endinput +\endinput |