Anterior: Combinación automática de las partes, Arriba: Varias voces
La música para varias partes se puede intercalar dentro del código de
entrada. La función \parallelMusic
admite una lista que
contiene los nombres de las variables que se van a crear, y una
expresión musical. El contenido de los compases alternativos
extraídos de la expresión se convierten en el valor de las variables
respectivas, de manera que podemos utilizarlas más tarde para imprimir
la música.
Nota: Es obligatorio utilizar comprobaciones de compás | , y
los compases deben tener la misma longitud.
|
\parallelMusic #'(voiceA voiceB voiceC) { % Compás 1 r8 g'16 c'' e'' g' c'' e'' r8 g'16 c'' e'' g' c'' e'' | r16 e'8.~ e'4 r16 e'8.~ e'4 | c'2 c'2 | % Compás 2 r8 a'16 d'' f'' a' d'' f'' r8 a'16 d'' f'' a' d'' f'' | r16 d'8.~ d'4 r16 d'8.~ d'4 | c'2 c'2 | } \new StaffGroup << \new Staff << \voiceA \\ \voiceB >> \new Staff { \clef bass \voiceC } >>
Se puede usar el modo relativo. Observe que la instrucción
\relative
no se utiliza dentro del propio bloque
\parallelMusic
. Las notas guardan relación con la nota
anterior en la misma voz, no con la nota anterior dentro del código de
entrada (dicho de otra manera, las notas relativas de vozA
ignoran a las notas que hay en vozB
.
\parallelMusic #'(voiceA voiceB voiceC) { % Compás 1 r8 g16 c e g, c e r8 g,16 c e g, c e | r16 e8.~ e4 r16 e8.~ e4 | c2 c | % Compás 2 r8 a,16 d f a, d f r8 a,16 d f a, d f | r16 d8.~ d4 r16 d8.~ d4 | c2 c | } \new StaffGroup << \new Staff << \relative c'' \voiceA \\ \relative c' \voiceB >> \new Staff \relative c' { \clef bass \voiceC } >>
Esto funciona aceptablemente bien para música de piano. El siguiente ejemplo asigna cada cuatro compases consecutivos a cuatro variables:
global = { \key g \major \time 2/4 } \parallelMusic #'(voiceA voiceB voiceC voiceD) { % Compás 1 a8 b c d | d4 e | c16 d e fis d e fis g | a4 a | % Compás 2 e8 fis g a | fis4 g | e16 fis g a fis g a b | a4 a | % Compás 3 ... } \score { \new PianoStaff << \new Staff { \global << \relative c'' \voiceA \\ \relative c' \voiceB >> } \new Staff { \global \clef bass << \relative c \voiceC \\ \relative c \voiceD >> } >> }
Manual de aprendizaje: Organizar las piezas mediante variables
Fragmentos de código: Notas simultáneas.
Esta página corresponde a LilyPond-2.11.58 (rama de desarrollo).
Informe de los fallos a través de la lista en español lilypond-es, o en inglés a través de http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs.
Se agradecen las sugerencias para la documentación.