lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Frenched score and rehearsal marks.


From: Xavier Scheuer
Subject: Re: Frenched score and rehearsal marks.
Date: Wed, 12 Aug 2020 21:45:21 +0200

On Wed, 12 Aug 2020 at 14:10, Hwaen Ch'uqi <hwaenchuqi@gmail.com> 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 <x.scheuer@gmail.com>


reply via email to

[Prev in Thread] Current Thread [Next in Thread]