On Friday 05 February 2010 18:05:52 you wrote:
On Fri, Feb 5, 2010 at 3:14 PM, Reinhold Kainhofer
<address@hidden> wrote:
> I found out the hard way that apparently adding
> \RemoveEmptyStaffContext
> globally to a score will erase some previous settings.
Yes. \removeEmptyStaffContext copies the new context over the
previous one. Or something like this.
Yes, it works as follows: The \removeEmptyStaffContext variable stores the
newly created Staff-derived context in the init file (i.e. when
removeEmptyStaffContext is defined, so it contains only the default
settings for
Staff). All subsequent changes to the Staff context are of couse not
applied to
the removeEMptyStaffContext variable.
When you insert RESC into your score, however, the current Staff context
is
replaced by the value of the RESC, which does not contain any of your
changes.
So, while it is clear how things work when you know the internals, I
definitely
regard this a bad bug, as something innocent as automatically removing
empty
staves has lethal side-effects (e.g. on figured bass and all different
unrelated
areas!).
So, from a developer perspective, the current behavior might be expected,
but
it is definitely not what any sane USER would expect. And for me this is
the
definition of a bug.
I think RESC should be somehow recoded to apply only the relevant changes
when
it is actually called, but not store the whole Staff context at definition
time.
Cheers,
Reinhold