Referencia de la notación de GNU LilyPond: 1.1.2 Modificación de varias notas a la vez

### 1.1.2 Modificación de varias notas a la vez

Esta sección trata de la manera de modificar las alturas.

#### Comprobación de octava

En el modo relativo, es fácil olvidar una marca de cambio de octava. Las comprobaciones de octava hacen más fácil encontrar estos errores, mediante la presentación de una advertencia y corrigiendo la octava si la nota se encuentra en una octava distinta de lo esperado.

Para comprobar la octava de una nota, especifique la octava absoluta después del símbolo `=`. Este ejemplo genera un mensaje de advertencia (y corrige la altura) porque la segunda nota es la octava absoluta `d''` en lugar de `d'` como indica la corrección de octava.

>     \relative {
>       c''2 d='4 d
>       e2 f
>     }

La octava de las notas se puede comprobar también con la instrucción `\octaveCheck altura_de_control`. `altura_de_control` se especifica en modo absoluto. Esto comprueba que el intervalo entre la nota anterior y la `altura_de_control` se encuentra dentro de una cuarta (es decir, el cálculo normal para el modo relativo). Si esta comprobación fracasa, se imprime un mensaje de advertencia. Aunque la nota previa no se modifica, las notas posteriores están en relación al valor corregido.

>     \relative {
>       c''2 d
>       \octaveCheck c'
>       e2 f
>     }

Compare los dos compases siguientes. La primera y tercera comprobaciones de `\octaveCheck` fracasan, pero la segunda es correcta.

>     \relative {
>       c''4 f g f

>       c4
>       \octaveCheck c'
>       f
>       \octaveCheck c'
>       g
>       \octaveCheck c'
>       f
>     }

#### Véase también

Fragmentos de código: Pitches.

Referencia de funcionamiento interno: RelativeOctaveCheck.

#### Transposición

Una expresión musical se puede transportar mediante `\transpose`. La sintaxis es

>     \transpose nota_origen nota_destino expresión_musical

Esto significa que la `expresión_musical` se transporta el intervalo que hay entre las notas `nota_origen` y `nota_destino`: cualquier nota con la altura de `nota_origen` se cambia por `nota_destino` y cualquier otra nota se transporta el mismo intervalo. Las dos notas se introducen en modo absoluto.

Nota: La música que está dentro de un bloque `\transpose` es absoluta, a no ser que se incluya una instrucción `\relative` dentro del bloque.

Por ejemplo, tomemos una pieza escrita en la tonalidad de Re mayor. Se puede transportar hacia arriba a Mi mayor; observe que también la armadura de la tonalidad se transporta automáticamente.

>     \transpose d e {
>       \relative {
>         \key d \major
>         d'4 fis a d
>       }
>     }

Si una particella escrita en Do (afinación de concierto normal) se debe tocar con un clarinete en La (para el que un La se escribe como un Do, y que suena una tercera menor por debajo de lo que está escrito), la particella correspondiente se produce mediante:

>     \transpose a c' {
>       \relative {
>         \key c \major
>         c'4 d e g
>       }
>     }

Observe que especificamos `\key c \major` de forma explícita. Si no especificamos ninguna tonalidad, las notas se transportan pero no se imprime la armadura.

`\transpose` distingue entre notas enarmónicas: tanto `\transpose c cis` como `\transpose c des` transportan un semitono hacia arriba. La primera versión imprime sostenidos y las notas no se mueven de su lugar en la escala, en cambio la segunda imprime bemoles de la nota siguiente.

>     music = \relative { c' d e f }
>     \new Staff {
>       \transpose c cis { \music }
>       \transpose c des { \music }
>     }

`\transpose` también se puede usar para introducir notas escritas para un instrumento transpositor. Los ejemplos anteriores muestran cómo escribir alturas en Do (o en afinación de concierto) y tipografiarlas para un instrumento transpositor, pero también es posible el caso contrario si, por ejemplo, tenemos un conjunto de partes instrumentales y quiere hacer un guión en Do para el director. Por ejemplo, al introducir música para trompeta en Si bemol que comienza por un Mi en la partitura (Re de concierto), se puede escribir:

>     musicaEnSiBemol = { e4 … }
>     \transpose c bes, \musicaEnSiBemol

Para imprimir esta música en Fa (por ejemplo, al arreglarla para trompa) puede envolver la música existente con otro `\transpose`:

>     musicaEnSiBemol = { e4 … }
>     \transpose f c' { \transpose c bes, \musicaEnSiBemol }

Para ver más información sobre instrumentos transpositores, consulte Transposición de los instrumentos.

#### Fragmentos de código seleccionados

Transportar música con el menor número de alteraciones

Este ejemplo utiliza código de Scheme para forzar las modificaciones enarmónicas de las notas, y así tener el menor número de alteraciones accidentales. En este caso se aplican las siguientes reglas:

- Se quitan las dobles alteraciones
- Si sostenido -> Do
- Mi sistenido -> Fa
- Do bemol -> Si
- Fa bemol -> Mi

De esta forma se selecciona el mayor número de notas enarmónicas naturales.

>     #(define (naturalize-pitch p)
>        (let ((o (ly:pitch-octave p))
>              (a (* 4 (ly:pitch-alteration p)))
>              ;; alteration, a, in quarter tone steps,
>              ;; for historical reasons
>              (n (ly:pitch-notename p)))
>          (cond
>           ((and (> a 1) (or (eqv? n 6) (eqv? n 2)))
>            (set! a (- a 2))
>            (set! n (+ n 1)))
>           ((and (< a -1) (or (eqv? n 0) (eqv? n 3)))
>            (set! a (+ a 2))
>            (set! n (- n 1))))
>          (cond
>           ((> a 2) (set! a (- a 4)) (set! n (+ n 1)))
>           ((< a -2) (set! a (+ a 4)) (set! n (- n 1))))
>          (if (< n 0) (begin (set! o (- o 1)) (set! n (+ n 7))))
>          (if (> n 6) (begin (set! o (+ o 1)) (set! n (- n 7))))
>          (ly:make-pitch o n (/ a 4))))

>     #(define (naturalize music)
>        (let ((es (ly:music-property music 'elements))
>              (e (ly:music-property music 'element))
>              (p (ly:music-property music 'pitch)))
>          (if (pair? es)
>              (ly:music-set-property!
>               music 'elements
>               (map naturalize es)))
>          (if (ly:music? e)
>              (ly:music-set-property!
>               music 'element
>               (naturalize e)))
>          (if (ly:pitch? p)
>              (begin
>                (set! p (naturalize-pitch p))
>                (ly:music-set-property! music 'pitch p)))
>          music))

>     naturalizeMusic =
>     #(define-music-function (m)
>        (ly:music?)
>        (naturalize m))

>     music = \relative c' { c4 d e g }

>     \score {
>       \new Staff {
>         \transpose c ais { \music }
>         \naturalizeMusic \transpose c ais { \music }
>         \transpose c deses { \music }
>         \naturalizeMusic \transpose c deses { \music }
>       }
>       \layout { }
>     }

#### Véase también

Referencia de la notación: Transposición de los instrumentos, Inversión, Transformaciones modales, Escritura de octava relativa, Retrogradación.

Fragmentos de código: Pitches.

Referencia de funcionamiento interno: TransposedMusic.

#### Advertencias y problemas conocidos

La conversión relativa no afecta a las secciones `\transpose`, `\chordmode` ni `\relative` dentro de su argumento. Para usar el modo relativo dentro de música transportada, se debe colocar otro `\relative` dentro de `\transpose`.

No se imprimen alteraciones accidentales triples cuando se usa `\transpose`. En lugar de ello, se usará una nota ‘equivalente enarmónicamente’ (p.ej., Re bemol en lugar de Mi triple bemol).

#### Inversión

Una expresión musical se puede invertir y transportar en una sola operación con:

>     \inversion nota-pivote nota-destino expresión_musical

La `expresión_musical` se invierte intervalo a intervalo alrededor de `nota-pivote`, y después se transporta de manera que `nota-pivote` se hace corresponder con `nota-destino`.

>     music = \relative { c' d e f }
>     \new Staff {
>       \music
>       \inversion d' d' \music
>       \inversion d' ees' \music
>     }

Nota: Los motivos a invertir deberían venir expresados en modo absoluto o convertirse previamente a la forma absoluta encerrándolos en un bloque `relative`.

#### Véase también

Referencia de la notación: Transformaciones modales, Retrogradación, Transposición.

#### Retrogradación

Se puede revertir una expresión musical para producir su retrogradación:

>     music = \relative { c'8. ees16( fis8. a16 b8.) gis16 f8. d16 }

>     \new Staff {
>       \music
>       \retrograde \music
>     }

#### Advertencias y problemas conocidos

`\retrograde` es una herramienta más bien sencilla. Puesto que muchos eventos se invierten como en un espejo en lugar de intercambiarse, los trucajes y los modificadores direccionales tienen que añadirse en los elementos de cierre correspondientes: `^(` debe terminar con `^)`, todos y cada uno de los `\<` o `\cresc` han de terminar en `\!` o en `\endcr`, y todo `\>` o `\decr` debe terminar en `\enddecr`. Las instrucciones o sobreescrituras que cambien propiedades y que tengan un efecto duradero, probablemente produzcan sorpresas.

#### Véase también

Referencia de la notación: Inversión, Transformaciones modales, Transposición.

#### Transformaciones modales

En una composición musical que está basada en una escala, con frecuencia se transforman los motivos de diversas formas. Un motivo se puede transportar para que comience en distintos lugares de la escala o puede invertirse alrededor de una nota pivote de la escala. También se puede revertir para producir una retrogradación, véase Retrogradación.

Nota: Cualquier nota que no entre en la escada dada, se dejará sin transformar.

#### Transposición modal

Se puede transportar un motivo dentro de una escala dada con:

>     \modalTranspose nota-origen nota-destino escala motivo

Las notas del motivo se desplazan dentro de la escala el número de grados de la escala dados por el intervalo entre nota-destino y nota-origen:

>     diatonicScale = \relative { c' d e f g a b }
>     motif = \relative { c'8 d e f g a b c }

>     \new Staff {
>       \motif
>       \modalTranspose c f \diatonicScale \motif
>       \modalTranspose c b, \diatonicScale \motif
>     }

Se pueden especificar escalas ascendentes de cualquier longitud y con cualesquiera intervalos:

>     pentatonicScale = \relative { ges aes bes des ees }
>     motif = \relative { ees'8 des ges,4 <ges' bes,> <ges bes,> }

>     \new Staff {
>       \motif
>       \modalTranspose ges ees' \pentatonicScale \motif
>     }

Cuando se utiliza con una escala cromática, `\modalTranspose` tiene un efecto similar a `\transpose`, pero con la posibilidad de especificar los nombres de las notas que se quieren usar:

>     chromaticScale = \relative { c' cis d dis e f fis g gis a ais b }
>     motif = \relative { c'8 d e f g a b c }

>     \new Staff {
>       \motif
>       \transpose c f \motif
>       \modalTranspose c f \chromaticScale \motif
>     }

#### Inversión modal

Se puede invertir un motivo dentro de una escala dada alrededor de una nota pivote dada y transportada al mismo tiempo en una única operación, con:

>     \modalInversion nota-pivote nota-destino escala motivo

Las notas del motivo se colocan al mismo número de grados de distancia de la escala a partir de la nota-pivote dentro de la escala, pero en la dirección opuestoa, y el resultado se desplaza después dentro de la escala el número de grados de la escala dados por el intervalo entre la nota-destino y la nota-pivote.

Así pues, para invertir sencillamente alrededor de una nota de la escala, utilice el mismo valor para nota-pivote y nota-destino:

>     octatonicScale = \relative { ees' f fis gis a b c d }
>     motif = \relative { c'8. ees16 fis8. a16 b8. gis16 f8. d16 }

>     \new Staff {
>       \motif
>       \modalInversion fis' fis' \octatonicScale \motif
>     }

Para invertir alrededor de una nota pivote entre dos notas de la escala, invierta alrededor de una de las notas y después transporte en un grado de la escala. Las dos notas especificadas se pueden interpretar como que horquillan entre ellas a la nota pivote:

>     scale = \relative { c' g' }
>     motive = \relative { c' c g' c, }

>     \new Staff {
>       \motive
>       \modalInversion c' g' \scale \motive
>     }

La operación combinada de inversión y retrogradación produce la inversión retrógrada:

>     octatonicScale = \relative { ees' f fis gis a b c d }
>     motif = \relative { c'8. ees16 fis8. a16 b8. gis16 f8. d16 }

>     \new Staff {
>       \motif
>       \retrograde \modalInversion c' c' \octatonicScale \motif
>     }

#### Véase también

Referencia de la notación: Inversión, Retrogradación, Transposición.

#### LilyPond — Referencia de la notación v2.22.2 (rama estable).