Erik Sandberg wrote:
On Monday 06 November 2006 09:25, Mats Bengtsson wrote:
Victor Eijkhout wrote:
So, if you want a limited scope, you can explicitly create a short-lived
context.
Here's an example that uses smaller note heads for one measure:
\relative c'{ c d e f \new Voice {\tiny g f e d } c d e d c1 }
/Mats
Mats, do you think it would be useful with an operator \newClone to clone the
current context? E.g.
\new Staff \with {\consists Foo_engraver bar=#'baz}
{ c d \tiny e f \newClone Staff { g f e d} c d e }
would be equivalent to:
\new Staff \with {\consists Foo_engraver bar=#'baz}
{ c d \tiny e f \new Staff \with {\consists Foo_engraver bar=#'baz} { \tiny g
f e d} c d e }
(I think such operator can come out as a side-effect of some work I'm doing)
Would it even make sense to make this the default behaviour of \new?
At least, it would probably cause less surprise to a newbie than the
current implementation, in examples like:
\relative c'{ \tiny c d <<{e d} \\ {c b}>> }
On the other hand, it would probably make it less obvious for the advanced
user to predict exactly what LilyPond does, for example in situations like
\relative c' \new Voice{
c d e f
<<
c1
\new Lyrics \lyricmode {
Some4 text
<< \new Voice \notemode { c d e2 }
{some more text }
>>
}
>>
}
where it's not obvious if the inner Voice context would inherit anything
from the outer one (maybe this is already crystal clear to you).
/Mats
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user