On Sat, 25 Jul 2020 at 05:28, David Sumbler <[email protected]> wrote: > > The only orchestral piece I have set in Lilypond until now was for 12 > strings and a couple of other instruments. I had 2 versions of the > strings material, one of which kept all of the parts on separate staves > for the parts, and the other which combined them on to fewer staves > (where appropriate) for the score. This worked tolerably well: I wrote > one version first, then copied and edited it to produce the other. In > simpler sections I could even make the necessary changes by using tags. > > But I feel that there must be a better way. As I am now about to start > on a work for full orchestra, I have been experimenting with having > separate parts which can nonetheless be combined on to a single stave > using \partCombine and its cousins. For instance, I have: > > instOne = {c'4 d' e' f' | g' a' b' c'' | d'' e'' f'' g''} > instTwo = {a4 b c' d' | e' f' g' a' | b' c'' d'' e''} > instScore = ? > > The form of instOne and instTwo would be correct for the parts. I am > looking for a way of writing instScore so that it combines the parts on > to one staff in bar 2, while keeping them separate in bars 1 and 3. > (Obviously this would be senseless here, but imagine that each bar > represents a passage taking up a full page width or more.) > > Is this possible? Or am I approaching this in completely the wrong > way? > > David > >
I've been working on an old orchestral score of mine where flutes keep swapping to piccolo etc. I have something like this, the attached files. Being able to put variables in quotes is a godsend. Vaughan
\version "2.20.0"
scorePart =
#(define-music-function
(scoreMarkup partMarkup)
(markup? markup?)
#{ <<
\tag #'removeFromPart { <>^#scoreMarkup }
\tag #'removeFromScore { <>^#partMarkup }
>>
#}
)
\paper {
ragged-right = ##t
left-margin = 3\cm
}
global = {
\time 4/4
\key c \major
s1*5
\bar "|."
}
"Fl1 1-4" = \relative c''' {
c4 c c c |
R1
c8 b c b c b c b |
R1
}
"Fl1 5-5" = \relative g'' {
\tag #'removeFromPart <>^"Fl 1,2"
g4 g g g |
}
"Fl2 1-4" = \relative g'' {
g4 g g g |
R1
g4 g g g |
R1
}
"Fl2 5-5" = \relative g'' {
g4 g g g |
}
"Fl3 1-4" = \relative e'' {
e4 e e e |
R1
e4 e e e |
% scorePart takes two markups,
% one for the score and one for the part
\scorePart
\markup \left-column { "Flute 3" "to piccolo" }
"To piccolo"
R1
}
"Fl3 5-5" = \relative b' {
\transposition c'
b4^"Piccolo" b b b |
}
fluteOnePart = {
\"Fl1 1-4"
\"Fl1 5-5"
}
fluteTwoPart = {
\"Fl2 1-4"
\"Fl2 5-5"
}
fluteThreePart = {
\"Fl3 1-4"
\"Fl3 5-5"
}
\score {
\new Staff
\removeWithTag #'removeFromPart
<<
\global
\fluteOnePart
>>
\layout {}
}
\score {
\new Staff
\removeWithTag #'removeFromPart
<<
\global
\fluteTwoPart
>>
\layout {}
}
\score {
\new Staff
\removeWithTag #'removeFromPart
<<
\global
\fluteThreePart
>>
\layout {}
}
flutesTop = \new Staff <<
\global
{
\set Staff.instrumentName = "Fl. 1,2"
\partcombine \"Fl1 1-4" \"Fl2 1-4"
\break
\set Staff.shortInstrumentName = "Picc"
\"Fl3 5-5"
}
>>
flutesBottom = \new Staff <<
\global
{
\set Staff.instrumentName = "Fl. 3"
\"Fl3 1-4"
\break
\set Staff.shortInstrumentName = "Fl. 1,2"
\partcombine \"Fl1 5-5" \"Fl2 5-5"
}
>>
\score {
\removeWithTag #'removeFromScore
\new StaffGroup
<<
\flutesTop
\flutesBottom
>>
\layout {}
}
flutes.pdf
Description: Adobe PDF document
