Lo que me gustaría hacer es definir voces de acordes específicas y personalizadas en lilypond, y poder adjuntarles duraciones de notas, a lo largo de las líneas de
voicing = < g a c e a > % dom7, with 7th in bass
\new Staff {
% play the whole chord for two quarters, then a half
\voicing4 \voicing4 \voicing2
}
Sin embargo, este enfoque básico no funciona: no puede adjuntar las duraciones de las notas a las variables.
Estoy tratando de evitar tener que escribir todas las notas para todas las instancias de uso de los acordes.
¿Hay alguna manera de lograr este fin?
Por supuesto, puede escribir
< g a c e a >4 q q2
Si desea mezclar diferentes acordes, esto no es factible. Con la restricción de necesitar siempre una duración, puedes escribir algo como
makevoicing = #(definir-esquema-función (ubicación del analizador m) (ly:music?) (definir-función-musical (ubicación del analizador d) (ly:duration?) (mapa-algo-de-musica (lambda (m) (y (ly:duration? (ly:music-property m 'duration)) (empezar (set! (ly:music-property m 'duration) d) metro))) (ly:music-deep-copy m)))) voicing = \makevoicing < gacea > % dom7, con 7º en bajo \personal nuevo { % toque todo el acorde durante dos cuartos, luego la mitad \voicing4 \voicing4 \voicing2 }
Si bien es posible que la duración sea predeterminada, aún debe escribir \voicing\default
para obtener el valor predeterminado, lo que anula la idea de tener un valor predeterminado para ahorrar tipeo.
dave