lilypond-user
[Top][All Lists]
Advanced

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

rehearsal marks above multiple staves


From: Rick Kimpel
Subject: rehearsal marks above multiple staves
Date: Thu, 14 Jun 2018 14:03:20 +0000

Greetings all,

Sorry if this is a duplicate, the first time didn't seem to go through.
I tried to use a snippet from the LSR to add rehearsal marks above each 
StaffGroup.
It nearly works as desired, but I can't figure out what I'm doing wrong in two 
areas:

1) The vertical spacing behaves differently depending on whether there are 
marks on the first system. I would like to get rid of the extra space between 
the staves when there's no mark on the first system. 

2) I would also like to use measure numbers as the rehearsal mark. It still 
works in the Score.markFormatter, but I am sure there's a different place to 
change it for the ones in a MarkLine. Oddly, the first mark seems to work no 
matter what.

Any ideas? I'm sure I'm missing something obvious. It's not urgent, as the 
conductor doesn't care for the extra marks anyway. But I'd like to have some 
idea about where I've gone wrong for future reference.
Thanks!

%%%%%minimal example based on http://lsr.di.unimi.it/LSR/Snippet?id=1010

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 {
    \name "MarkLine"
    \type "Engraver_group"
    \consists Output_property_engraver
    \consists Axis_group_engraver
    %\consists Metronome_mark_engraver %uncommenting this also makes the 
spacing shrink
    \consists Mark_engraver
    \override RehearsalMark.extra-spacing-width = #'(0 . 1)
    \override VerticalAxisGroup.minimum-Y-extent = #'(-2 . 2)
    \override VerticalAxisGroup.staff-staff-spacing =
    #'((basic-distance . 1)
       (minimum-distance . 1)
       (padding . 1)
       (stretchability . 3))
  }
  \context {
    \Score
    \accepts MarkLine
  }
}

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



reply via email to

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