Hi,

But I'm at a bit of a loss about your notion of a StaffMonoid. All sorts of math puns aside (a CommutativeStaffRing of nonzero characteristic especially for engraving _Le Spec de la Rose_ by Berlioz) - what do you mean by a StaffMonoid?
There is absolutely nothing besides the math pun. It was too tempting given that I know both Kieren and yourself have some background in that.

:-)

Just goes to show that it's possible to both get a joke completely and still miss it anyway. Lack of facial expressions is helpful in that regard.

I would put Span_arpeggio_engraver in StaffCollection. It makes sense for something intended at logically grouping staves, and doesn't harm after all: as long as the user does not \set StaffCollection.connectArpeggios, it has no effect.

Ok, done.

I also noticed that StaffCollection probably shouldn't have the Vertical_align_engraver, since this causes vertical spacing to be different. The original idea was that uncommenting in

\version "2.23.4"

bla = \repeat unfold 30 c'1

<<
  \new Staff \bla
%{
  \new StaffCollection \with {
    \override StaffSymbol.color = #blue
    instrumentName = Test
  }
%}
  <<
    \new Staff \bla
    \new Staff \bla
  >>
  \new Staff \bla
>>

shouldn't change spacing at all.

Also, don't forget \alias StaffCollection in the definition of StaffGroup so users can write commands as \set StaffCollection.whatever = ... or \override StaffCollection.Whatever.whatnot = ... and have them work in all contexts that group staves.

Is that really desirable? I notice that PianoStaff is \alias'ed to GrandStaff, which makes sense somehow, but GrandStaff is _not_ \alias'ed to StaffGroup, and neither is ChoirStaff. (I have no preference in that regard, it's just I'm unsure about the consequences.)

Lukas


Reply via email to