2 % dynamics should not collide with staff
3 % dynamics (of two voices) should not collide with eachother
4 % strange stem through beam bug in bar 8 on viola staff
5 % 1-staff-high brace should collapse
8 texidoc="Template for part-combining orchestral scores";
14 violaI = \notes\relative c'' {
15 c1 \break c c c c\break
18 [\!f8\sf(\>as f as][f g d)\!g]|
19 r [es'\p(c)es] r [d(bes)d]|
23 violaII = \notes\relative c'' {
27 [\!f8\sf(\>as f as][f g d)\!g]|
28 r [c\p(g)c] r [bes(g)bes]|
32 violoncello = \notes\relative c {
35 \property Voice.crescendoText = #"cresc."
36 \property Voice.crescendoSpanner = #'dashed-line
37 [g8\p\<(bes' g bes][d bes g)d~]|
38 [d8(a' fis a][d a fis)d]|
39 [\!f!8\sf\>(as f as][f g d)g]|
44 contrabasso = \notes\relative c {
47 \property Voice.crescendoText = #"cresc."
48 \property Voice.crescendoSpanner = #'dashed-line
55 violeStaff = \notes \context Staff = viole <
56 \context Voice=oneViole <
57 \property Staff.instrument = #"Viola"
58 \property Staff.instr = #"Vla."
62 \context Voice=twoViole <
63 \property Staff.instrument = #"Viola II"
64 \property Staff.instr = #"Vla. II"
67 \context Voice=oneViole \partcombine Voice
68 \context Thread=oneViole \violaI
69 \context Thread=twoViole \violaII
72 staffCombinePianoStaffProperties = {
73 \property PianoStaff.devNullThread = #'()
74 \property PianoStaff.soloADue = ##t
75 \property PianoStaff.soloText = #""
76 \property PianoStaff.soloIIText = #""
77 % This is non-conventional, but currently it is
78 % the only way to tell the difference.
79 \property PianoStaff.aDueText = #"\\`a2"
80 \property PianoStaff.splitInterval = #'(1 . 0)
81 \property PianoStaff.changeMoment = #`(,(make-moment 1 1) . ,(make-moment 1 1))
90 \context PianoStaff = bassi_group \notes <
91 \staffCombinePianoStaffProperties
92 \context Staff=oneBassi < \clef bass;
93 \property Staff.instrument = #'(lines
94 "Violoncello" " e" "Contrabasso")
96 \property Staff.instr = #"Vc."
98 \context Staff=twoBassi < \clef bass;
99 \property Staff.instrument = #"Contrabasso"
100 \property Staff.instr = #"Cb."
104 \context Staff=oneBassi \partcombine Staff
105 \context Voice=oneBassi { \violoncello }
106 \context Voice=twoBassi { \contrabasso }
112 linewidth = 80 * \staffspace;
113 textheight = 200 * \staffspace;
116 \consists "Rest_engraver";
118 % Set value for engraver at thread level,
119 % to override the default that is set in ScoreContext
120 % for added engraver at Voice level
125 \remove "Rest_engraver";
127 % The staff combine (bassi part) needs a
128 % thread_devnull_engraver here.
129 % Instead of maintaining two separate hierarchies,
130 % we switch add it, but switch it off immideately.
131 % The staff combine parts switch it on.
132 % devNullThread = #'never
133 \consists "Thread_devnull_engraver";
136 \HaraKiriStaffContext
137 \consists "Mark_engraver";
140 \OrchestralScoreContext
144 % By default, turn off the Thread_devnull_engraver
146 devNullThread = #'never
149 currentBarNumber = #218
150 BarNumber \override #'padding = #3
151 RestCollision \override #'maximum-rest-count = #1
152 marginScriptHorizontalAlignment = #1
153 TimeSignature \override #'style = #'C