From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/24891 Path: news.gmane.org!not-for-mail From: Peter Rolf Newsgroups: gmane.comp.tex.context Subject: Re: serial definition Date: Mon, 02 Jan 2006 19:20:01 +0100 Message-ID: <43B96ED1.8040409@gmx.net> References: Reply-To: mailing list for ConTeXt users NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Trace: sea.gmane.org 1136226014 7283 80.91.229.2 (2 Jan 2006 18:20:14 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Mon, 2 Jan 2006 18:20:14 +0000 (UTC) Original-X-From: ntg-context-bounces@ntg.nl Mon Jan 02 19:20:10 2006 Return-path: Envelope-to: gctc-ntg-context-518@m.gmane.org Original-Received: from ronja.vet.uu.nl ([131.211.172.88] helo=ronja.ntg.nl) by ciao.gmane.org with esmtp (Exim 4.43) id 1EtUHu-0007ff-El for gctc-ntg-context-518@m.gmane.org; Mon, 02 Jan 2006 19:20:06 +0100 Original-Received: from localhost (localhost [127.0.0.1]) by ronja.ntg.nl (Postfix) with ESMTP id E29501283B; Mon, 2 Jan 2006 19:20:05 +0100 (CET) Original-Received: from ronja.ntg.nl ([127.0.0.1]) by localhost (smtp.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 13592-05; Mon, 2 Jan 2006 19:20:03 +0100 (CET) Original-Received: from ronja.vet.uu.nl (localhost [127.0.0.1]) by ronja.ntg.nl (Postfix) with ESMTP id F24DA127FD; Mon, 2 Jan 2006 19:20:02 +0100 (CET) Original-Received: from localhost (localhost [127.0.0.1]) by ronja.ntg.nl (Postfix) with ESMTP id 4F74D127FD for ; Mon, 2 Jan 2006 19:20:02 +0100 (CET) Original-Received: from ronja.ntg.nl ([127.0.0.1]) by localhost (smtp.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 13404-05 for ; Mon, 2 Jan 2006 19:20:01 +0100 (CET) Original-Received: from mail.gmx.net (mail.gmx.de [213.165.64.21]) by ronja.ntg.nl (Postfix) with SMTP id 3372A127B4 for ; Mon, 2 Jan 2006 19:20:00 +0100 (CET) Original-Received: (qmail invoked by alias); 02 Jan 2006 18:20:00 -0000 Original-Received: from i577B96D2.versanet.de (EHLO [192.168.1.3]) [87.123.150.210] by mail.gmx.net (mp026) with SMTP; 02 Jan 2006 19:20:00 +0100 X-Authenticated: #24293357 User-Agent: Thunderbird 1.5 (Windows/20051201) Original-To: mailing list for ConTeXt users In-Reply-To: X-Enigmail-Version: 0.93.0.0 X-Y-GMX-Trusted: 0 X-Virus-Scanned: amavisd-new at ntg.nl X-BeenThere: ntg-context@ntg.nl X-Mailman-Version: 2.1.5 Precedence: list List-Id: mailing list for ConTeXt users List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: ntg-context-bounces@ntg.nl Errors-To: ntg-context-bounces@ntg.nl X-Virus-Scanned: amavisd-new at ntg.nl Xref: news.gmane.org gmane.comp.tex.context:24891 Archived-At: Hi ho Hraban, Henning Hraban Ramm wrote: > Hi ho! >=20 > This is a part of Holger Sch=F6ner's letter style (see > http://wiki.contextgarden.net/Letter_style): >=20 > \def\lettersenderkeyone{} > \def\lettersendervalone{} > \def\lettersenderkeytwo{} > \def\lettersendervaltwo{} > % etc. > \def\lettersenderkeynine{} > \def\lettersendervalnine{} >=20 > \def\senderone#1#2{\def\lettersenderkeyone{#1}\def\lettersendervalone{#= 2}} > \def\sendertwo#1#2{\def\lettersenderkeytwo{#1}\def\lettersendervaltwo{#= 2}} > % etc. > \def\sendernine#1#2{\def\lettersenderkeynine{#1}\def\lettersendervalnin= e{#2}} >=20 >=20 > \startsetups sendertablesetup > \bTABLE > \setupTABLE[frame=3Doff] > \setupTABLE[x][1][width=3D\senderkeywidth, align=3Dleft, > style=3D{\keystyle\strut}] > \setupTABLE[x][2][width=3D\sendervalwidth, align=3Dright, > style=3D{\valstyle\strut}] > \bTR\bTD\doiftextelse{\lettersenderkeyone} =20 > {\lettersenderkeyone:}{}\eTD\bTD\lettersendervalone\eTD\eTR > \bTR\bTD\doiftextelse{\lettersenderkeytwo} =20 > {\lettersenderkeytwo:}{}\eTD\bTD\lettersendervaltwo\eTD\eTR > % etc. > \bTR\bTD\doiftextelse{\lettersenderkeynine} =20 > {\lettersenderkeynine:}{}\eTD\bTD\lettersendervalnine \eTD\eTR > \eTABLE > \stopsetups >=20 > Is there a more programmatical way for such? (Does TeX know something > like arrays or dicts?) > Sorry, I still can't program in TeX... >=20 Welcome to the club ;) You can use \newcounter for such stuff or the context recurse functions (with \recurselevel). \starttext \dostepwiserecurse{1}{9}{1}{% count from 1 to 9, step 1 \setvalue{PREFIX\recurselevel}{\recurselevel} } % or all by hand (not useful for simple loops) \newcounter\Row % Row=3D0 \increment\Row % Row+=3D1 \doloop{% \setvariables[PREFIX\Row][foo=3Dfoo\Row] \increment\Row \ifnum\Row>9 \exitloop\fi } % reset to one by hand \newcounter\Row \increment\Row \dostepwiserecurse{1}{9}{1}{% \getvariable{PREFIX\Row}{foo}=3D \getvalue{PREFIX\recurselevel}\crlf \increment\Row } \stoptext You can combine x counters to simulate a x-dimensional array (but you better wait for lua). Hope that helps. Greetings, Peter >=20 > Gr=FC=DFlis vom Hraban! > --- > http://www.fiee.net/texnique/ > http://contextgarden.net > http://www.cacert.org (I'm an assurer) >=20 > _______________________________________________ > ntg-context mailing list > ntg-context@ntg.nl > http://www.ntg.nl/mailman/listinfo/ntg-context >=20 >=20