[NTG-context] Why does startlines not work in a function

2013-04-26 Thread Cecil Westerhof
I have the following code:
\startlines
  \startalignment[center]
\setupindenting[no]
\doifelse {\getvariable{meta}{personalInfo}} {long} {
  longline 1
  longline 2
  longline 3
  longline 4
  longline 5
  longline 6
  longline 7
  longline 8
} {
  shortline 1
  shortline 2
  shortline 3
  shortline 4
}
  \stopalignment
\stoplines

I wanted to put this in a function. So I wrote:
\def\Foo{
  \startlines
\startalignment[center]
  \setupindenting[no]
  \doifelse {\getvariable{meta}{personalInfo}} {long} {
longline 1
longline 2
longline 3
longline 4
longline 5
longline 6
longline 7
longline 8
  } {
shortline 1
shortline 2
shortline 3
shortline 4
  }
\stopalignment
  \stoplines
}

But then the text becomes one line instead of several lines.


So I had to rewrite it to:
\def\FooTwo{
  \startalignment[center]
\setupindenting[no]
\doifelse {\getvariable{meta}{personalInfo}} {long} {
  longline 1

  longline 2

  longline 3

  longline 4

  longline 5

  longline 6

  longline 7

  longline 8
} {
  shortline 1

  shortline 2

  shortline 3

  shortline 4
}
  \stopalignment
}


I called it first Foo2, but that worked havoc on Foo.

-- 
Cecil Westerhof
___
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] Why does startlines not work in a function

2013-04-26 Thread Hans Hagen

On 4/26/2013 5:19 PM, Cecil Westerhof wrote:

I have the following code:

 ...

But then the text becomes one line instead of several lines.


because catcode changes are involved

\startbuffer [meta:personalInfo:long]
\startlines
longline 1
longline 2
longline 3
longline 4
longline 5
longline 6
longline 7
longline 8
\stoplines
\stopbuffer

\startbuffer [meta:personalInfo:]
\startlines
shortline 1
shortline 2
shortline 3
shortline 4
\stoplines
\stopbuffer

\starttext

\getbuffer[meta:personalInfo:\getvariable{meta}{personalInfo}]

\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] Why does startlines not work in a function

2013-04-26 Thread Cecil Westerhof
2013/4/26 Hans Hagen pra...@wxs.nl:
 On 4/26/2013 5:19 PM, Cecil Westerhof wrote:

 I have the following code:

 ...

 But then the text becomes one line instead of several lines.


 because catcode changes are involved

 \startbuffer [meta:personalInfo:long]
 \startlines

 longline 1
 longline 2
 longline 3
 longline 4
 longline 5
 longline 6
 longline 7
 longline 8
 \stoplines
 \stopbuffer

 \startbuffer [meta:personalInfo:]
 \startlines

 shortline 1
 shortline 2
 shortline 3
 shortline 4
 \stoplines
 \stopbuffer

 \starttext

 \getbuffer[meta:personalInfo:\getvariable{meta}{personalInfo}]

 \stoptext

Works. Thanks.

-- 
Cecil Westerhof
___
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
___