[ << Running lilypond ] | [Top][Contents][Index] | [ Updating files with convert-ly >> ] |
[ < Music runs off the page ] | [ Up : Common errors ] | [ Error message Unbound variable % > ] |
An extra staff appears
If contexts are not created explicitly with \new
or
\context
, they will be silently created as soon as a
command is encountered which cannot be applied to an existing
context. In simple scores the automatic creation of contexts is
useful, and most of the examples in the LilyPond manuals take
advantage of this simplification. But occasionally the silent
creation of contexts can give rise to unexpected new staves or
scores. For example, it might be expected that the following code
would cause all note heads within the following staff to be
colored red, but in fact it results in two staves with the note
heads remaining the default black in the lower staff.
\override Staff.NoteHead.color = #red \new Staff { a' }
This is because a Staff
context does not exist when the
override is processed, so one is implicitly created and the override
is applied to it, but then the \new Staff
command creates
another, separate, staff into which the notes are placed. The
correct code to color all note heads red is
\new Staff { \override Staff.NoteHead.color = #red a' }
[ << Running lilypond ] | [Top][Contents][Index] | [ Updating files with convert-ly >> ] |
[ < Music runs off the page ] | [ Up : Common errors ] | [ Error message Unbound variable % > ] |