Re: [NTG-context] Fwd: Need help with \definetabulate

2012-10-16 Thread Sietse Brouwer
The problem is that \starttabulate does not accept a format parameter.

Cheap solution (only figured it out now, or I'd have replied before): use

\setuptabulate[alpha][format={}]

before every \startalpha call.
It's not very contexty syntax, but on the other hand it requires no
new definitions at all.

Full example below.
Cheers,
Sietse

\definetabulate[alpha][|l|] % dummy format
\setuptabulate[alpha][style=bold]

\setuptabulate[alpha][format={|r|r|r|}]
\startalpha
\NC r \NC r \NC r \NC \NR
\NC test \NC test \NC test \NC \NR
\stopalpha

\setuptabulate[alpha][format={|c|c|}]
\startalpha
\NC c \NC c \NC \NR
\NC test \NC test \NC \NR
\stopalpha
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] Fwd: Need help with \definetabulate

2012-10-16 Thread Hans Hagen

On 16-10-2012 12:52, Sietse Brouwer wrote:

The problem is that \starttabulate does not accept a format parameter.

Cheap solution (only figured it out now, or I'd have replied before): use

\setuptabulate[alpha][format={}]

before every \startalpha call.
It's not very contexty syntax, but on the other hand it requires no
new definitions at all.

Full example below.
Cheers,
Sietse

\definetabulate[alpha][|l|] % dummy format
\setuptabulate[alpha][style=bold]

\setuptabulate[alpha][format={|r|r|r|}]
\startalpha
\NC r \NC r \NC r \NC \NR
\NC test \NC test \NC test \NC \NR
\stopalpha

\setuptabulate[alpha][format={|c|c|}]
\startalpha
\NC c \NC c \NC \NR
\NC test \NC test \NC \NR
\stopalpha


There's also:

\starttext

\definetabulate
  [whatever]
  [|l|r|]

\definetabulate
  [whatever][else]
  [|l|c|r|]

\startwhatever
\NC l\NC r \NC \NR
\NC left \NC right \NC \NR
\stopwhatever

\startwhatever[else]
\NC l\NC m  \NC r \NC \NR
\NC left \NC middle \NC right \NC \NR
\stopwhatever

\stoptext

-
  Hans Hagen | PRAGMA ADE
  Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com
 | www.pragma-pod.nl
-
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] Fwd: Need help with \definetabulate

2012-10-16 Thread Wolfgang Schuster

Am 16.10.2012 um 13:08 schrieb Hans Hagen :

> On 16-10-2012 12:52, Sietse Brouwer wrote:
>> The problem is that \starttabulate does not accept a format parameter.
>> 
>> Cheap solution (only figured it out now, or I'd have replied before): use
>> 
>> \setuptabulate[alpha][format={}]
>> 
>> before every \startalpha call.
>> It's not very contexty syntax, but on the other hand it requires no
>> new definitions at all.
>> 
>> Full example below.
>> Cheers,
>> Sietse
>> 
>> \definetabulate[alpha][|l|] % dummy format
>> \setuptabulate[alpha][style=bold]
>> 
>> \setuptabulate[alpha][format={|r|r|r|}]
>> \startalpha
>> \NC r \NC r \NC r \NC \NR
>> \NC test \NC test \NC test \NC \NR
>> \stopalpha
>> 
>> \setuptabulate[alpha][format={|c|c|}]
>> \startalpha
>> \NC c \NC c \NC \NR
>> \NC test \NC test \NC \NR
>> \stopalpha
> 
> There's also:
> 
> \starttext
> 
> \definetabulate
>  [whatever]
>  [|l|r|]
> 
> \definetabulate
>  [whatever][else]
>  [|l|c|r|]
> 
> \startwhatever
> \NC l\NC r \NC \NR
> \NC left \NC right \NC \NR
> \stopwhatever
> 
> \startwhatever[else]
> \NC l\NC m  \NC r \NC \NR
> \NC left \NC middle \NC right \NC \NR
> \stopwhatever
> 
> \stoptext

Can you add a second argument to custom tabulation which would allow one to 
write

  \startwhatever[format={…}]

or

  \startwhatever[else][format={…}]

to change the number of columns and format for a certain table.

Wolfgang
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] Fwd: Need help with \definetabulate

2012-10-16 Thread Hans Hagen

On 16-10-2012 13:23, Wolfgang Schuster wrote:


Am 16.10.2012 um 13:08 schrieb Hans Hagen :


On 16-10-2012 12:52, Sietse Brouwer wrote:

The problem is that \starttabulate does not accept a format parameter.

Cheap solution (only figured it out now, or I'd have replied before): use

\setuptabulate[alpha][format={}]

before every \startalpha call.
It's not very contexty syntax, but on the other hand it requires no
new definitions at all.

Full example below.
Cheers,
Sietse

\definetabulate[alpha][|l|] % dummy format
\setuptabulate[alpha][style=bold]

\setuptabulate[alpha][format={|r|r|r|}]
\startalpha
\NC r \NC r \NC r \NC \NR
\NC test \NC test \NC test \NC \NR
\stopalpha

\setuptabulate[alpha][format={|c|c|}]
\startalpha
\NC c \NC c \NC \NR
\NC test \NC test \NC \NR
\stopalpha


There's also:

\starttext

\definetabulate
  [whatever]
  [|l|r|]

\definetabulate
  [whatever][else]
  [|l|c|r|]

\startwhatever
\NC l\NC r \NC \NR
\NC left \NC right \NC \NR
\stopwhatever

\startwhatever[else]
\NC l\NC m  \NC r \NC \NR
\NC left \NC middle \NC right \NC \NR
\stopwhatever

\stoptext


Can you add a second argument to custom tabulation which would allow one to 
write

   \startwhatever[format={…}]

or

   \startwhatever[else][format={…}]

to change the number of columns and format for a certain table.


I wonder is someone can remember this ...

\unprotect

\unexpanded\def\tabl_start_defined[#1]%
  {\bgroup
   \edef\currenttabulationparent{#1}%
   \let\currenttabulation\currenttabulationparent
   \dodoubleargument\tabl_start_defined_indeed}

\def\tabl_start_defined_indeed
  {\iffirstargument
 \ifsecondargument
   \doubleexpandafter\tabl_start_defined_two
 \else
   \doubleexpandafter\tabl_start_defined_one
 \fi
   \else
  \singleexpandafter\tabl_start_defined_zero
   \fi}

\def\tabl_start_defined_one[#1][#2]%
  {\doifassignmentelse{#1}
 {\setuptabulation[\currenttabulation][#1]}%
 {\edef\currenttabulation{\currenttabulation:#1}}%
   \tabl_tabulate_start_building}

\def\tabl_start_defined_two[#1][#2]%
  {\edef\currenttabulation{\currenttabulation:#1}%
   \setuptabulation[\currenttabulation][#2]%
   \tabl_tabulate_start_building}

\def\tabl_start_defined_zero[#1][#2]%
  {\tabl_tabulate_start_building}


\protect

\starttext

\definetabulate
  [whatever]
  [|l|r|]

\definetabulate
  [whatever][else]
  [|l|c|r|]

\startwhatever
\NC l\NC r \NC \NR
\NC left \NC right \NC \NR
\stopwhatever

\startwhatever[else]
\NC l\NC m  \NC r \NC \NR
\NC left \NC middle \NC right \NC \NR
\stopwhatever

\startwhatever[else][format={|c|c|c|c|}]
\NC l\NC m  \NC m  \NC r \NC \NR
\NC left \NC middle \NC middle \NC right \NC \NR
\stopwhatever

\stoptext

-
  Hans Hagen | PRAGMA ADE
  Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com
 | www.pragma-pod.nl
-
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___