lilypond-user
[Top][All Lists]
Advanced

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

Re: rehearsal marks above multiple staves


From: Torsten Hämmerle
Subject: Re: rehearsal marks above multiple staves
Date: Thu, 14 Jun 2018 07:55:56 -0700 (MST)

Hi Rick,

I think snippet 1010 is a bit overly complicated for this purpose: the new
context MarkLine there is just needed because they don't want rehearsal
marks above the top stave.

The basic trick behind all is that Rehearsal Marks normally are defined in
the Score context, i.e. they go on top of the score and not on individual
staves, stave groups, etc.

The vertical spacing in your case behaves differently, because you haven't
removed the Mark_engraver from the Score context and for this reason, the
topmost rehearsal mark obeys the Score padding settings, whereas the others
(MarkLine) obey the special MarkLine spacing.

*Proposed solution*
Remove the Mark_engraver (and Metronome_mark_engraver) from the Score
context (exactly as it is done in the snippet):

  \context {
    \Score
    \remove Mark_engraver
    \remove Metronome_mark_engraver
  }

and then just add it to the \Staff context (or \StaffGroup, whatever you
like).

  \context {
    \Staff
    \consists Mark_engraver
    \consists Metronome_mark_engraver
  }

That way, each stave (or stave group) will get its own rehearsal/metronome
marks.
The engravers can also be added to individual staves/stave groups using
\with { … }.
That would be the standard way of adding marks just above the string section
etc.


%%%%  modified example coding
\version "2.19.81"

global = {
  \tempo "Largo" 4=30
  s1*2
  \mark 3     %uncomment to see the spacing shrink on the first staff
  s1*10
  \mark 13
  s1*2
  \mark 15 %this will be 14 above the other staves
}

foo = \relative c' { \repeat unfold 4
  {c4 d e f |
  g f e d |
  c e g b |
  d2 c2 |}
}

\layout {
  \context {
    \Score
    \remove Mark_engraver
    \remove Metronome_mark_engraver
  }
  \context {
    \Staff
    \consists Mark_engraver
    \consists Metronome_mark_engraver
  }
}

\score {
  <<
    \set Score.markFormatter = #format-mark-box-numbers
    \new Staff << \global \foo >>
    \new Staff << \global \foo >>
    \new Staff << \global \foo >>
  >>
}

%%%%

HTH,
Torsten

PS: if you want bar numbers as rehearsal marks, you might use
\set Score.markFormatter = #format-mark-box-barnumbers 
and it is sufficient to say \mark \default without having to manually enter
the bar numbers.




--
Sent from: http://lilypond.1069038.n5.nabble.com/User-f3.html



reply via email to

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