I appreciate the suggestion, but I don't think that helps.  I can see
that you are replacing whole bars of music, which is kinda cool in
fact.  However, it doesn't help me with my goal which is to not have to
define groovec at all.

Yes ok. Below a solution replacing only one note, all 4 measures. No groovec. Not perhaps the simplest solution however because you have to add \repeat unfold 16
in each voices. (Probably not what you whished...)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

A = \drummode { \voiceOne  \repeat unfold 8 hh8 }
B = \drummode { \voiceOne { s4 sn4 s4 sn4 } }
C = \drummode { \voiceTwo { bd8 bd8 r4 bd8 bd8 bd8 bd8 } }


grooveFinal = \drummode { <<
    \multiReplaceMusic \repeat unfold 16 \A
        { cymc8 s1*0
          cymc8 s1*4
          cymc8 s1*8
          cymc8 s1*12  }
    \\
    \repeat unfold 16 \B
    \\
    \repeat unfold 16 \C

}

\score { \new DrumStaff {
                   \set Staff.instrumentName = #"drums"
                   \grooveFinal }
\layout { \override NoteColumn.ignore-collision = ##t }
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


This other solution use a very small groovec. Perhaps it will not work in 2.18 (uses \voices). I think it is the lighter solution.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

A = \drummode { \repeat unfold 8 hh8 }
B = \drummode { s4 sn8 s s4 sn8 s } % <- little change here to avoid notes collision
C = \drummode {  bd8 bd8 r4 bd8 bd8 bd8 bd8 }

groovec = \drummode { \voices 1,1,2 << cymc8 \\ s8 \\  bd8  >> }

groove =  { \voices 1,1,2 << \A \\ \B \\ \C >> }

grooveFinal = \multiReplaceMusic \repeat unfold 16 \groove {
                \groovec s1*0
                \groovec s1*4
                \groovec s1*8
                \groovec s1*12 }


\score { \new DrumStaff {
                   \set Staff.instrumentName = #"drums"
                   \grooveFinal }
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Extended features are in preparation (in a few weeks ?). This will make more easier to deal with simultaneous music. Not ready for now. Sorry

--
Gilles

Reply via email to