[NTG-context] Making text disappear depending on mode

Hans Hagen j.hagen at xs4all.nl
Thu Feb 4 17:50:50 CET 2021


On 2/4/2021 3:59 PM, Axel Kielhorn wrote:
> Hello,
> 
> I’m currently writing an article for „Die TeXnische Komödie“ and discovers that my code is not working.
> 
> When the mode „change“ is set, the text should appear with a red line on the side,
> that part is working.
> When the mode is not set, it should disappear,
> that’s the part that is not working.
> 
> My idea was to put the text into a buffer and ignore it, that didn’t work.
> 
> 
> % !TEX TS-program = ConTeXt (LuaTeX 1.0.9)
> % !TEX encoding = UTF-8 Unicode
> 
> %\enablemode[change]
> 
> % Paragraph removed
> \definestartstop[ChangePR][
>    before={\doifmodeelse{change}
>    {\startsidebar[rulecolor=red]}
>    {}},
>    after={\doifmodeelse{change}
>    {\stopsidebar}
>    {}},
>    ]
> % Paragraph removed
> %\definestartstop[ChangePR][
> %  before={\doifmodeelse{change}
> %    {\startsidebar[rulecolor=red]}
> %    {\startbuffer[ignore]}},
> %  after={\doifmodeelse{change}
> %    {\stopsidebar}
> %    {\stopbuffer}},
> %  ]
>    
> \starttext
> 
> Before
> 
> \startChangePR
> \input knuth
> \stopChangePR
> 
> After
> 
> \stoptext
\defineblock
   [ChangePR]

\defineblock
   [ChangeRP]

\setupblock
   [ChangePR]
   [before={\startsidebar[rulecolor=red]},
    after={\blank[overlay]\stopsidebar}]

\setupblock
   [ChangeRP]
   [before={\startsidebar[rulecolor=green]},
    after={\blank[overlay]\stopsidebar}]

% \hideblocks[ChangePR]
\keepblocks[ChangePR]
% \keepblocks[ChangePR,ChangeRP]

\enablemode[wipe]

\doifelsemode {wipe} {
     \definebuffer[ChangePP]
} {
     \definestartstop
       [ChangePP]
       [before={\startsidebar[rulecolor=red]},
        after={\blank[overlay]\stopsidebar}]
}

\starttext

Before

\beginChangePR
     \input knuth
\endChangePR

Inbetween

\beginChangeRP
     \input knuth
\endChangeRP

After

\startChangePP
     \input knuth
\stopChangePP

Done

\stoptext

-----------------------------------------------------------------
                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
        tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------


More information about the ntg-context mailing list