Hello,

I'm working on a score for string ensemble that uses occasional extra
staves for solo parts and divisi parts. When an extra staff occurs, say a
solo Violin I part, it should be above the "main" Violin I staff and it
should be part of a StaffGroup with the main Violin I staff (with a square
bracket, barlines going through both staves, and, at the beginning of each
system, an instrument name markup that is centered on the two staves). Then
when the solo is over it should disappear, leaving only a single violin I
staff with no bracket. This is all within a larger score containing other
string section parts, possibly with their own temporary staves at the same
time.

I'm having trouble achieving this. The automatic behavior of a new staff is
to go below, so from the Notation Manual I got "AlignAboveContext". This
works when it's just a Staff, but doesn't do anything when it's a
StaffGroup, which is what I need. Is there a simple way I'm missing to do
this? Or a way to tweak the appearance of a Staff to get what I'm looking
for? Or (hopefully not) a way to completely reorganize the score with
disappearing staves to get this result?

I was really hoping other people have dealt with this exact problem but I
haven't found anything yet in my searches!

Thanks, Brian Lenth

\version "2.24.1"

global = {
  \tempo 4 = 116
  \time 4/4
  s1*21
  \bar "|."
}

violinIPart = \relative c'' {
  \clef treble
  \compressEmptyMeasures

  f4 g a g |
  \repeat unfold 6 { f g a g } | \break
  \repeat unfold 7 { g a b g } | \break
  <<
    {
      <>^"All others" \repeat unfold 7 { e a b a }
    }
    \new Staff \with {
      alignAboveContext = "VnI"
      \remove Time_signature_engraver
      \magnifyStaff #3/4
    } {
      <>^"Solo - should be above the other staff" \repeat unfold 7 { c2 d }
    }
  >>
  \break
  \repeat unfold 7 { f,4 d f d }
}

\score {
  \new StaffGroup = "VnI" \with {
   instrumentName = #"Violin I "
  }
  { << \global \violinIPart >> }
  \layout { }
}

Reply via email to