3 lsrtags = "contexts-and-engravers, staff-notation"
5 Using @code{MarkLine} contexts (such as in
6 @uref{http://lsr.di.unimi.it/LSR/Item?id=1010, LSR1010}) in a
7 Frenched score can be problematic if all the staves between two
8 @code{MarkLine}s are removed in one system. The
9 @code{Keep_alive_together_engraver} can be used within each
10 @code{StaffGroup} to keep the @code{MarkLine} alive only as long
11 as the other staves in the group stay alive.
13 doctitle = "Using marklines in a Frenched score"
16 \tempo "Allegro" 4=120
18 \repeat unfold 5 { \mark \default s1*2 }
22 \repeat unfold 8 { \mark \default s1*2 }
25 winds = \repeat unfold 120 { c''4 }
26 trumpet = { \repeat unfold 8 g'2 R1*16 \repeat unfold 4 g'2 R1*8 }
27 trombone = { \repeat unfold 4 c'1 R1*8 d'1 R1*17 }
28 strings = \repeat unfold 240 { c''8 }
30 #(set-global-staff-size 16)
33 ragged-last-bottom = ##f
42 \consists Output_property_engraver
43 \consists Axis_group_engraver
44 \consists Mark_engraver
45 \consists Metronome_mark_engraver
46 \override VerticalAxisGroup.remove-empty = ##t
47 \override VerticalAxisGroup.remove-layer = #'any
48 \override VerticalAxisGroup.staff-affinity = #DOWN
49 \override VerticalAxisGroup.nonstaff-relatedstaff-spacing.basic-distance = 1
50 keepAliveInterfaces = #'()
54 \override VerticalAxisGroup.remove-empty = ##t
55 \override VerticalAxisGroup.remove-layer = ##f
60 \consists Keep_alive_together_engraver
65 \remove Metronome_mark_engraver
71 \new StaffGroup = "winds" \with {
72 instrumentName = "Winds"
73 shortInstrumentName = "Winds"
78 \new StaffGroup = "brass" <<
80 \new Staff = "trumpet" \with {
81 instrumentName = "Trumpet"
82 shortInstrumentName = "Tpt"
84 \new Staff = "trombone" \with {
85 instrumentName = "Trombone"
86 shortInstrumentName = "Tbn"
89 \new StaffGroup = "strings" \with {
90 instrumentName = "Strings"
91 shortInstrumentName = "Strings"
94 \new Staff = "strings" { \strings }