ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Hans Hagen <pragma@wxs.nl>
Subject: Re: using \doifnumberelse in a ToC numbercommand=
Date: Wed, 16 Aug 2006 23:36:34 +0200	[thread overview]
Message-ID: <44E38FE2.9020805@wxs.nl> (raw)
In-Reply-To: <1155754139.3406.14.camel@vision.buscaluz.org>

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@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
-----------------------------------------------------------------

  parent reply	other threads:[~2006-08-16 21:36 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-16 18:48 Stuart Jansen
2006-08-16 19:46 ` Mojca Miklavec
2006-08-16 20:28   ` Stuart Jansen
2006-08-16 21:36 ` Hans Hagen [this message]
2006-08-16 23:16   ` Stuart Jansen

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=44E38FE2.9020805@wxs.nl \
    --to=pragma@wxs.nl \
    --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).