[NTG-context] using \doifnumberelse in a ToC numbercommand=

Hans Hagen pragma at wxs.nl
Wed Aug 16 23:36:34 CEST 2006


Stuart Jansen wrote:
> I asked this question a couple of days ago, but didn't get any takers. I
> don't want to be a pest, but it's frustrating to be so close yet unable
> to solve this final problem. Let's see if rephrasing the question helps.
>
> I'm trying to use \doifnumberelse in a \setuplist numbercommand= but it
> isn't working.
>   
as mojca said ... #1 is not a simple thing (try \showargument{#1})

here's a solution, tricky but in this case ok

\definesymbol[list][whatever][\DoWhatever]

\def\DoWhatever{\doifnumberelse{\currentlistnumber}{Chapter}{Appendix} 
\currentlistnumber}

\setuplist[chapter][width=fit,distance=1em,numberstyle=bold,textstyle=bold,symbol=whatever]

\starttext
    \startfrontmatter
        \title{Table of Contents}
        \placelist[chapter,section][criterium=text,alternative=b]
    \stopfrontmatter
    \startbodymatter
        \chapter{Foo} \section{Bar} \input knuth
    \stopbodymatter
    \startappendices
        \chapter{Corge} \section{Grault} \input zapf
    \stopappendices
\stoptext

some time ago i made this plugable so you're lucky

a better solution would be something

\placelist[chapter,section][criterium=frontmatter,alternative=b,numbercommand=....]
\placelist[chapter,section][criterium=bodymatter,alternative=b,numbercommand=....]
etc

so you may register that (at the collector or the wiki) as a feature 
request


wikifyable anyway
> The simplified example below shows the very specific table of contents
> layout I'm trying to accomplish. You will note that both the chapter
> number and the appendix letter are labeled with "Appendix" when in fact
> I want the chapter to be labeled "Chapter".
>
> Does anyone know either (a) how to get \doifnumberelse to work in this
> situation or (b) if there's a better way I should have done this
> instead.
>
> -----
>
> \def\mychapterlistnumber#1{\vbox{%
>   \doifnumberelse{#1}{Chapter}{Appendix} #1\crlf}}
> \def\mysectionlistnumber#1{\emspace\emspace}
> \def\mysectionlisttext#1{%
>   \doifelse{#1}{Lab Tasks}{\hskip-1em\bf#1\hfilll}{#1}}
> \setuplist[chapter][width=1em,numberstyle=bold,%
>   numbercommand=\mychapterlistnumber,textstyle=bold]
> \setuplist[section][width=2em,numbercommand=\mysectionlistnumber,%
>   textcommand=\mysectionlisttext]
>
> \starttext
> \bgroup{}Table of Contents\egroup\par
> \startcolumns[n=2,distance=.3in,balance=no]
> \bgroup
> \placelist[chapter,section][criterium=all,alternative=b]
> \egroup
> \stopcolumns
> \page
> \chapter{Foo}
> \section{Bar}
> \input knuth
> \startappendices
> \chapter{Corge}
> \section{Grault}
> \input zapf
> \stopappendices
> \stoptext
>
> -----
>
>
>   
> ------------------------------------------------------------------------
>
> _______________________________________________
> ntg-context mailing list
> ntg-context at ntg.nl
> http://www.ntg.nl/mailman/listinfo/ntg-context
>   


-- 

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



More information about the ntg-context mailing list