On Wed, 12 Aug 2020 at 14:10, Hwaen Ch'uqi <[email protected]> wrote: > > Greetings All, > > In preparing an orchestral score, I am running into a very practical > question that others surely must have encountered. I have removed > Mark_engraver from the score context and placed it in the appropriate > staff contexts - that is, in the uppermost staff of each instrument > family. Furthermore, in order to reduce space, I have invoked > \RemoveEmptyStaves in the staff context of the layout block. However, > there are then many occasions when rehearsal marks naturally do not > appear, because the relevant staff is appropriately hidden. In fact, I > have entire pages where no rehearsal marks appear, even though more > than one has actually occurred! Of course, I could get around this by > including Mark_engraver in all staves, but this sort of duplication is > precisely what I am trying to avoid. Has anyone a solution? This > question also applies to Metronome_mark_engraver. Could the answer lie > somehow in the StaffGroup context? Having trouble to wrap my head > around it!
Hello, Exactly! Including Mark_engraver in the StaffGroup problem is the solution. Actually I was about to say that this is unfortunately a bug, but thanks to your message I learned that this bug was actually fixed in 2.21.0 ! Many thanks to Dan Eble for fixing this. https://gitlab.com/lilypond/lilypond/-/issues/2199 See the minimal example to show this in action. \version "2.21" music = \repeat unfold 5 { \repeat unfold 5 c'1 \mark \default } rests = \repeat unfold 5 { \repeat unfold 5 R1 \mark \default } \score { << \new Staff { s1*0^"Marks should NOT be above this Staff (i.e. above the Score)!" \music } \new StaffGroup { << \new Staff { s1*0^"Marks are above the StaffGroup (also when the first staff is removed)" \rests } \new Staff { \music } >> } >> \layout { \context { \Score \remove "Mark_engraver" \remove "Staff_collecting_engraver" } \context { \StaffGroup \consists "Mark_engraver" \consists "Staff_collecting_engraver" } \context { \Staff \RemoveEmptyStaves } } } Cheers, Xavier -- Xavier Scheuer <[email protected]>
