3.3.2 Distintas ediciones a partir de una misma fuente

Se pueden usar varios métodos para generar la producción de distintas versiones de una partitura a partir de la misma fuente musical. Las variables son quizá el más útil para combinar secciones extensas de música y/o anotaciones. Las etiquetas son más útiles para seleccionar una sección de entre varias secciones de música alternativas, más cortas, y se pueden usar también para dividir piezas de música en distintos trozos.

Cualquiera que sea el método utilizado, la separación de la notación de la estructura de la partitura hará que sea más fácil cambiar la estructura dejando intacta la notación.


Uso de las variables

Si las secciones de la música se definen dentro de variables, se pueden reutilizar en distintas partes de la partitura, véase Organizar las piezas mediante variables. Por ejemplo, una partitura vocal a cappella con frecuencia incluye una reducción de piano de las partes para ensayar que es idéntica a la música vocal, por lo que ésta sólo se tiene que escribir una vez. Se puede combinar sobre un solo pentagrama la música de dos variables, véase Combinación automática de las partes. He aquí un ejemplo:

sopranoMusic = \relative c'' { a4 b c b8( a) }
altoMusic = \relative g' { e4 e e f }
tenorMusic = \relative c' { c4 b e d8( c) }
bassMusic = \relative c' { a4 gis a d, }
allLyrics = \lyricmode {King of glo -- ry }
<<
  \new Staff = "Soprano" \sopranoMusic
  \new Lyrics \allLyrics
  \new Staff = "Alto" \altoMusic
  \new Lyrics \allLyrics
  \new Staff = "Tenor" {
    \clef "treble_8"
    \tenorMusic
  }
  \new Lyrics \allLyrics
  \new Staff = "Bass" {
    \clef "bass"
    \bassMusic
  }
  \new Lyrics \allLyrics
  \new PianoStaff <<
    \new Staff = "RH" {
      \set Staff.printPartCombineTexts = ##f
      \partcombine
      \sopranoMusic
      \altoMusic
    }
    \new Staff = "LH" {
      \set Staff.printPartCombineTexts = ##f
      \clef "bass"
      \partcombine
      \tenorMusic
      \bassMusic
    }
  >>
>>

[image of music]

Se pueden producir partituras distintas que presenten sólo las partes vocales o sólo la parte de piano, cambiando solamente los enunciados estructurales, sin modificar la notación musical.

Para partituras extensas, las definiciones de variable se pueden poner en archivos separados que se incluyen más tarde, véase Inclusión de archivos de LilyPond.


Uso de etiquetas

La instrucción \tag #'parteA marca una expresión musical con el nombre parteA. Las expresiones etiquetadas de esta manera se pueden seleccionar o filtrar más tarde por su nombre, usando bien \keepWithTag #'nombre o bien \removeWithTag #'nombre. El resultado de la aplicación de estos filtros a la música etiquetada es como sigue:

FiltroResultado
Música etiquetada precedida de \keepWithTag #'nombreSe incluye la música no etiquetada y la música etiquetada con nombre; se excluye la música etiquetada con cualquier otro nombre de etiqueta.
Música etiquetada precedida de \removeWithTag #'nombreSe incluye la música no etiquetada y la música etiquetada con cualquier nombre de etiqueta distinto a nombre; se excluye la música etiquetada con nombre.
Música etiquetada no precedida de \keepWithTag ni de \removeWithTagSe incluye toda la música etiquetada y no etiquetada.

Los argumentos de las instrucciones \tag, \keepWithTag y \removeWithTag deben ser un símbolo (como #'partitura o #'parte), seguido de una expresión musical.

En el ejemplo siguiente vemos dos versiones de una pieza musical, una que muestra trinos con la notación usual y otra con los trinos expandidos explícitamente:

music = \relative g' {
  g8. c32 d
  \tag #'trills { d8.\trill }
  \tag #'expand { \repeat unfold 3 { e32 d } }
  c32 d
 }

\score {
  \keepWithTag #'trills \music
}
\score {
  \keepWithTag #'expand \music
}

[image of music]

De forma alternativa, a veces es más fácil excluir secciones de música:

music = \relative g' {
  g8. c32 d
  \tag #'trills { d8.\trill }
  \tag #'expand {\repeat unfold 3 { e32 d } }
  c32 d
 }

\score {
  \removeWithTag #'expand
  \music
}
\score {
  \removeWithTag #'trills
  \music
}

[image of music]

El filtrado con etiquetas se puede aplicar a articulaciones, textos, etc. anteponiendo

-\tag #'mi-etiqueta

a una articulación. Por ejemplo, esto define una nota con una indicación opcional de digitación y una nota con una anotación condicional:

c1-\tag #'finger ^4
c1-\tag #'warn ^"¡Ojo!"

Se pueden poner varias etiquetas sobre expresiones con varias entradas de \tag:

music = \relative c'' {
  \tag #'a \tag #'both { a4 a a a }
  \tag #'b \tag #'both { b4 b b b }
}
<<
\keepWithTag #'a \music
\keepWithTag #'b \music
\keepWithTag #'both \music
>>

[image of music]

Se pueden aplicar varios filtros \removeWithTag a una sola expresión musical para quitar varias secciones etiquetadas con nombres distintos:

music = \relative c'' {
\tag #'A { a4 a a a }
\tag #'B { b4 b b b }
\tag #'C { c4 c c c }
\tag #'D { d4 d d d }
}
{
\removeWithTag #'B
\removeWithTag #'C
\music
}

[image of music]

Dos o más filtros \keepWithTag aplicados a una sola expresión musical producen la eliminación de todas las secciones etiquetadas, porque el primer filtro quita todas las secciones etiquetadas excepto la que se nombra, y el segundo filtro elimina incluso esa sección etiquetada.

A vecespodemos desear dividir la música en un determinado lugar dentro de una expresión musical existente. Podemos usar \pushToTag y \appendToTag para añadir material delante o al final de los elements de una construcción musical existente. No toda construcción musical tiene la parte elements, pero las músicas secuenciaes y simultáneas son dos apuestas seguras:

test = { \tag #'here { \tag #'here <<c''>> } }

{
  \pushToTag #'here c'
  \pushToTag #'here e'
  \pushToTag #'here g' \test
  \appendToTag #'here c'
  \appendToTag #'here e'
  \appendToTag #'here g' \test
}

[image of music]

Las dos instrucciones admiten una etiqueta, el material que dividir en cada ocurrencia de la etiqueta, y la expresión etiquetada. Las instrucciones aseguran que se copia todo lo que cambian, de forma que el código original \test retiene su significado.

Véase también

Manual de aprendizaje: Organizar las piezas mediante variables.

Referencia de la notación: Combinación automática de las partes, Inclusión de archivos de LilyPond.


Uso de ajustes globales

Se pueden incluir ajustes globales a partir de un archivo distinto:

lilypond -dinclude-settings=MIS_AJUSTES.ly MI_PARTITURA.ly

En archivos diferentes se pueden almacenar grupos de ajustes como el tamaño de la página o las fuentes tipográficas. Ello permite hacer diferentes ediciones de la mism a partitura así como aplicar ajustes estándar a muchas partituras, simplemente por medio de la especificación del archivo de ajustes adecuado.

Esta técnica también funciona bien con el uso de hojas de estilo, como se estudia en Hojas de estilo.

Véase también

Manual de aprendizaje: Organizar las piezas mediante variables, Hojas de estilo.

Referencia de la notación: Inclusión de archivos de LilyPond.


Otros idiomas: English, deutsch, français, italiano, 日本語.
Acerca de la selección automática del idioma.

LilyPond — Referencia de la notación