Andre Poenitz <[EMAIL PROTECTED]> writes:
| I think I know what's going on...
|
| Suppose we have a macro corresponding to
|
| \newcommand\t[1]{(#1)}
|
| and an inset that looks like:
|
| \t{\t{x}}
|
| This should render as ((x)) but it currently renders as (x)...
|
| The problem is that t's argument takes two different values during one call
| to the "outer" drawing ( \t{x} in the first level, and only x in the
| second), so results get overwritten.
yes, this was part of my wish to use shared_ptr... but I am not sure
that would have worked anyway...
| Note that the error does only occur if one nests the _same_ macro:
|
| \newcommand\a[1]{a#1a}
| \newcommand\b[1]{b#1b}
|
| \b{\a{x}}
|
| renders just fine!
|
| I think the proper solution of this is indeed to create a temporary deep
| copy of the template and to replace every MathMacroArgument by the real
| argument.
mmm
| Furthermore, I think it is not really necessary to fix this _now_. This
| particular thing seemingly has never worked, so nobody could possibly
| depend on it, and I'd rather cleanup the tool box (MathIter etc) first
| before building something that needs to be cleaned up later again.
|
| Comments?
|
We need to get the cursor working properly before we do a lot of new
things.
Lgb