LilyPond: Agrupación de haces subdivididos para compases compuestos

Estoy tratando de escribir una partitura de batería de 12/8 en Lilypond, con muchas frases de notas 32, y la agrupación de vigas predeterminada me parece un poco fea:

Agrupación predeterminada de haces de notas 32( Aquí está el ejemplo anterior en LilyBin: http://lilybin.com/w0s4nh/2 )

Me gustaría que se subdividiera en grupos de corcheas, así:

ingrese la descripción de la imagen aquí

Como se puede ver en el enlace de LilyBin que pegué arriba (línea 36), intenté modificar el parámetro baseMoment según la documentación , pero no importa lo que configuré, la transmisión siempre permanece igual.

¿Hay algo más que debería estar haciendo aquí?

Er, solo curiosidad aquí, pero ¿no conseguiste que se emitiera de la manera que querías en la segunda imagen?
Jajaja, en realidad estoy copiando una hoja de batería para que quepa en menos páginas usando lilypond, y la transmisión original me parece mucho más bonita. La segunda imagen proviene del PDF original que estoy copiando =).
Ajá. Gracias. Eso es lo que me pasa por no prestar suficiente atención. :)

Respuestas (1)

Aquí hay un buen comienzo.

\layout {
  \context {
    \DrumStaff
      drumStyleTable = #(alist->hash-table drum-table)
      subdivideBeams = ##t
      baseMoment = #(ly:make-moment 1/8)
      beatStructure = #'(3 3 3 3)
  }
}
top = \drummode {
  cymc8 \repeat unfold 5 { cymr }
  cymr16 \repeat unfold 8 { sn32 }
  \repeat unfold 6 { toml }
  \repeat unfold 8 { tomfl }
}
bot = \drummode {
  bd4 bd16 bd
  sn bd sn bd sn bd
  bd8 \repeat unfold 5 { hhp }
}
\score {
  \new DrumStaff <<
    \new DrumVoice {
      \voiceOne \time 12/8 \top
    }
    \new DrumVoice {
      \voiceTwo \time 12/8 \bot
    }
  >>
  \layout {}
}

ingrese la descripción de la imagen aquí

Lo que esto termina haciendo es separar su código en partes más manejables: la música es solo música, el diseño es solo diseño y la partitura es solo partitura. (Bueno, en su mayor parte). Por lo tanto, cuando necesite hacer un cambio, puede identificar mucho más rápidamente dónde debe ocurrir el cambio.

En un caso como este, es posible que necesite entremezclar temporalmente la música y el diseño para una sola voz:

\layout {
  \context {
    \DrumStaff
      drumStyleTable = #(alist->hash-table drum-table)
  }
}
top = \drummode {
  \set Voice.subdivideBeams = ##t
  \set Voice.baseMoment = #(ly:make-moment 1/8)
  \set Voice.beatStructure = #'(3 3 3 3)
  cymc8 \repeat unfold 5 { cymr }
  cymr16 \repeat unfold 8 { sn32 }
  \repeat unfold 6 { toml }
  \repeat unfold 8 { tomfl }
}
bot = \drummode {
  bd4 bd16 bd
  sn bd sn bd sn bd
  bd8 \repeat unfold 5 { hhp }
}
\score {
  \new DrumStaff <<
    \new DrumVoice {
      \voiceOne \time 12/8 \top
    }
    \new DrumVoice {
      \voiceTwo \time 12/8 \bot
    }
  >>
  \layout {}
}

ingrese la descripción de la imagen aquí

En mi opinión, donde puedes lograr algo "programáticamente" como el primer ejemplo, eso es preferible. Pero, en un apuro, o cuando sea necesario, el segundo ejemplo puede funcionar.

¡Gracias! Siempre es bueno tener separación de preocupaciones. Veo que todavía tengo mucho que aprender sobre los diferentes contextos en LilyPond, esta no es la primera vez que me confundo tratando de cambiar las definiciones de partitura cuando en realidad deberían ser definiciones de pentagrama o voz. Actualicé el ejemplo de LilyBin ( lilybin.com/w0s4nh/3 ) para referencia futura. ¡Gracias de nuevo! =)