ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: David Arnold <dwarnold45@cox.net>
Subject: Re: \useblocks in section
Date: Wed, 21 Dec 2005 10:57:10 -0800	[thread overview]
Message-ID: <42754BE3-0CE7-45BD-98EE-18AC47A348D8@cox.net> (raw)
In-Reply-To: <43A92091.8000700@wxs.nl>

Hans, that worked. Code below. Is this something you will fix in one  
of the core files?

%output=pdf

\unprotect

\def\getblockstatus#1% is this still ok
{\dosetfilterlevel{\@@bscriterium}\empty
   \expanded{\doifblklevelelse[#1\sectionseparator\sectionseparator0]}
     {\global\blockpermittedtrue}
     {\global\blockpermittedfalse}%
   \def\blockstatus{#1}}

\def\doselectblocks[#1][#2][#3]%
{\begingroup
   \doifelsenothing{#3}
     {\getparameters[\??bs][\c!criterium=\v!all,#2]%
      \dodouseblocks[#1][]}
     {\getparameters[\??bs][\c!criterium=\v!all,#3]%
      \dodouseblocks[#1][#2]}}%

\def\selectblocks
{\dotripleempty\doselectblocks}

\protect


\starttext

\defineenumeration[question][location=serried,text=Question]
\defineenumeration[answer][location=serried,text=Answer]
\defineblock[question,answer]
\hideblocks[answer]

\chapter{First Chapter}

\input tufte

\beginquestion
\startquestion
   What is the square root of 4?
\stopquestion
\endquestion

\beginanswer
\startanswer
   2
\stopanswer
\endanswer

\section{Answers}

\selectblocks[answer][criterium=chapter]

\chapter{Second Chapter}

\input tufte

\beginquestion
\startquestion
   What is the square root of 9?
\stopquestion
\endquestion

\beginanswer
\startanswer
   3
\stopanswer
\endanswer

\section{Answers}

\selectblocks[answer][criterium=chapter]

\stoptext


On Dec 21, 2005, at 1:29 AM, Hans Hagen wrote:

> David Arnold wrote:
>
>> All,
>>
>> This doesn't seem to work as expected. Replacing the \useblocks  
>> with  \selectblocks also produces an unexpected result. What am I  
>> doing  wrong? I am trying to have only the answers from the  
>> chapter show up.
>
> ah, old code, something got lost when i added parameter support ...
>
> \unprotect
>
> \def\getblockstatus#1% is this still ok
>  {\dosetfilterlevel{\@@bscriterium}\empty
>   \expanded{\doifblklevelelse[#1\sectionseparator\sectionseparator0]}
>     {\global\blockpermittedtrue}
>     {\global\blockpermittedfalse}%
>   \def\blockstatus{#1}}
>
> \def\doselectblocks[#1][#2][#3]%
>  {\begingroup
>   \doifelsenothing{#3}
>     {\getparameters[\??bs][\c!criterium=\v!all,#2]%
>      \dodouseblocks[#1][]}
>     {\getparameters[\??bs][\c!criterium=\v!all,#3]%
>      \dodouseblocks[#1][#2]}}%
>
> \def\selectblocks
>  {\dotripleempty\doselectblocks}
>
> \protect
>
> use \selectblocks when you want a criterium
>
>>
>> %output=pdf
>>
>> \defineenumeration[question][location=serried,text=Question]
>> \defineenumeration[answer][location=serried,text=Answer]
>> \defineblock[question,answer]
>> \hideblocks[answer]
>>
>> \starttext
>>
>> \chapter{First Chapter}
>>
>> \input tufte
>>
>> \beginquestion
>> \startquestion
>>   What is the square root of 4?
>> \stopquestion
>> \endquestion
>>
>> \beginanswer
>> \startanswer
>>   2
>> \stopanswer
>> \endanswer
>>
>> \section{Answers}
>>
>> \useblocks[answer][criterium=chapter]
>>
>> \chapter{Second Chapter}
>>
>> \input tufte
>>
>> \beginquestion
>> \startquestion
>>   What is the square root of 9?
>> \stopquestion
>> \endquestion
>>
>> \beginanswer
>> \startanswer
>>   3
>> \stopanswer
>> \endanswer
>>
>> \section{Answers}
>>
>> \useblocks[answer][criterium=chapter]
>>
>> \stoptext
>>
>> _______________________________________________
>> ntg-context mailing list
>> ntg-context@ntg.nl
>> http://www.ntg.nl/mailman/listinfo/ntg-context
>
>
> _______________________________________________
> ntg-context mailing list
> ntg-context@ntg.nl
> http://www.ntg.nl/mailman/listinfo/ntg-context

  reply	other threads:[~2005-12-21 18:57 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-12-21  3:16 David Arnold
2005-12-21  9:29 ` Hans Hagen
2005-12-21 18:57   ` David Arnold [this message]
2005-12-22  9:29     ` Hans Hagen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=42754BE3-0CE7-45BD-98EE-18AC47A348D8@cox.net \
    --to=dwarnold45@cox.net \
    --cc=ntg-context@ntg.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).