2007/1/31, Wolfgang Schuster
2007/1/31, Hans Hagen
: Wolfgang Schuster wrote:
On Tue, 30 Jan 2007 10:05:23 -0500 (EST) Aditya Mahajan < adityam@umich.edu> wrote:
On Tue, 30 Jan 2007, Wolfgang Schuster wrote:
On Mon, 29 Jan 2007 10:15:34 -0500 (EST) Aditya Mahajan < adityam@umich.edu> wrote:
On Mon, 29 Jan 2007, Wolfgang Schuster wrote:
> Hi all, > > > I have a module with a envrionment defined in the following way: > > \def\startFOO#1\stopFOO{...#1...} > > > I try currently to write a command \defineFOO[MYFOO] that expands to my > already created environment. > > \startMYFOO#1\stopMYFOO -> \startFOO#1\stopFOO > > > I know it is possible to make this in the following way: > > \def\startMYFOO#1\stopMYFOO{\startFOO#1\stopFOO} > > but this not what I want. > Something like this
\def\defineFOO[#1]% {\setvalue{\c!start#1}{\startFOO} \setvalue{\c!stop#1} {\stopFOO}}
Hi Aditya,
this can only be used if you define your environment in this way:
\def\startFOO{...} \def\stopFoo{...}
I defined my environment in this way:
\def\startFOO#1\stopFOO{...}
This means TeX reads everything from \startFOO till \stopFOO and looks afterwards at the replacement text.
I am not sure how something like that you work.
I used tried the first way with saving the content into a buffer and
using the buffer content.
If you want to write to a buffer and later use it, there are low level macros to define your own buffer commands. Have a look at the R module to see an example. Depending on your usage, you will have to keep track of the buffer numbers on your own.
Aditya
Hi Aditya,
I tried to use a buffer but you cannot make something like this:
\starttext
\placefigure {} {\startbuffer{mybuffer} Floating text from a buffer \stopbuffer \getbuffer{mybuffer}}
\stoptext
with content saved in a buffer.
no, there is \setbuffer but in general (at least not in context mkii) buffers are to be defined at the outer level
It's not a real problem but I wanted to know if it is possible to define a environment in the way I wanted.
Hi Hans,
I looked into core-buf but this was not what I was looking for.
What I want is a command like this:
\def\defineFOO[#1]% {\expandafter\def\csname start#1\endcsname##1\csname stop#1\endcsname% {\startFOO##1\stopFOO}}
and after I wrote
\defineFOO[MYFOO]
I can use the next command
\startMYFOO...\stopMYFOO
Wolfgang
Hi all, I found now a solution for my problem. Thanks for all messages. Wolfgang