[SOLVED] drummode & couleurs

Bonsoir (ou bonjour c'est selon),

J'ai été sollicité par mon prof de batterie pour coloriser une partition de batterie. J'ai trouvé pas mal de choses sur comment faire avec des notes de musiques classiques mais rien de bien convaincant concernant la batterie.

J'ai bien trouvé le moyen en utilisant des override des propriétés NoteHead, Stem et Beam mais c'est juste invivable pour une partition complète (exemple ci-dessous)


up = \drummode {
  \override NoteHead.color = #red \override Stem.color = #red \override Beam.color = #red 
  hh8 hh hh hh hh hh \once \override NoteHead.color = #red \once \override Stem.color = #red \override Beam.color = #red  hh hh
  \revert NoteHead.color \revert Stem.color \revert Beam.color 
  hh8 hh hh hh hh hh hh hh 
}
down = \drummode {
  \once \override NoteHead.color = #blue \once \override Stem.color = #blue \once \override Beam.color = #blue
  bd4
  \once \override NoteHead.color = #green \once \override Stem.color = #green \once \override Beam.color = #green
  sn
  \once \override NoteHead.color = #blue \once \override Stem.color = #blue \once \override Beam.color = #blue
  bd
  \once \override NoteHead.color = #green \once \override Stem.color = #green \once \override Beam.color = #green
  sn
  bd4 sn bd sn
}

\score {
  \new DrumStaff \with { }
    <<
      \new DrumVoice { \voiceOne \up }
      \new DrumVoice { \voiceTwo \down }
    >>
    \layout { indent = 0 }
}

La question "à 100 balles" : y a t-il moyen d'automatiser cela pour écrire les notes comme d'habitude et laisser la magie de lilypond opérer ?

Bonne soirée (?) / journée (!)

Le 17/10/2025 à 01:25, Sébastien Richard via LilyPond a écrit :

down = \drummode {
\once \override NoteHead.color = #blue \once \override Stem.color = #blue \once \override Beam.color = #blue
bd4
\once \override NoteHead.color = #green \once \override Stem.color = #green \once \override Beam.color = #green
sn
\once \override NoteHead.color = #blue \once \override Stem.color = #blue \once \override Beam.color = #blue
bd
\once \override NoteHead.color = #green \once \override Stem.color = #green \once \override Beam.color = #green
sn
bd4 sn bd sn
}

La question "à 100 balles" : y a t-il moyen d'automatiser cela pour écrire les notes comme d'habitude et laisser la magie de lilypond opérer ?

Ça je ne sais pas, mais tu peux déjà simplifier comme ceci :

blue = {
\once \override NoteHead.color = #blue
\once \override Stem.color = #blue
\once \override Beam.color = #blue
}
green = {
\once \override NoteHead.color = #green
\once \override Stem.color = #green
\once \override Beam.color = #green
}

down = \drummode {
\blue bd4
\green sn
\blue bd
\green sn
bd4 sn bd sn
}

Bonjour
même solution sans once

bleu = { \override NoteHead.color = #blue \override Stem.color = #blue  \override Beam.color = #blue }
rouge = { \override NoteHead.color = #red \override Stem.color = #red  \override Beam.color = #red }
vert = { \override NoteHead.color = #green \override Stem.color = #green  \override Beam.color = #green }
noir= { \revert NoteHead.color \revert  Stem.color  \revert  Beam.color }


up = \drummode {
  \rouge
  hh8 hh hh hh hh hh  hh hh
  \noir
  hh8 hh hh hh hh hh hh hh 
}
down = \drummode {
  \bleu
  bd4
  \vert
  sn
  \bleu  
  bd 
  \vert
  sn
  \noir
  bd4 sn bd sn
}

\score {
  \new DrumStaff \with { }
  <<
    \new DrumVoice { \voiceOne \up }
    \new DrumVoice { \voiceTwo \down }
  >>
  \layout { indent = 0 }
}

Si la partition est sur 3 niveaux je ferai ainsi

\version "2.25.29"

bleu = { 
  \override NoteHead.color = #blue 
  \override Stem.color = #blue  
  \override Beam.color = #blue 
  \override Flag.color = #blue 
}

rouge = { 
  \override NoteHead.color = #red 
  \override Stem.color = #red  
  \override Beam.color = #red
  \override Flag.color = #red 
}

vert = {
  \override NoteHead.color = #green 
  \override Stem.color = #green  
  \override Beam.color = #green 
  \override Flag.color = #green 
}

noir= { 
  \revert NoteHead.color 
  \revert Stem.color  
  \revert Beam.color 
  \revert Flag.color 
}


up = \drummode {
   hh8 hh hh hh hh hh  hh hh
  \noir
 hh8 hh hh hh hh hh hh hh 
}


middle = \drummode { 
  \stemDown
  s4 sn s4 sn s4
 \noir sn s4 sn 
}

down = \drummode {
  bd4
  s4
  bd 
  s4
  \noir
  bd4 s4 bd s4
}

\score {
  \new DrumStaff \with { }
  <<
    \new DrumVoice {  \rouge \voiceOne \up }
    \new DrumVoice {  \vert \voiceOne \middle }
    \new DrumVoice {  \bleu  \voiceTwo \down }
  >>
  \layout { indent = 0 }
}

Cordialement

Merci omiak & MartialR,

c'est effectivement plus concis

Merci pour vos réponses :grinning_face_with_smiling_eyes: