Referencia de la notación de GNU LilyPond: 2.7.2 Imprimir los acordes

### 2.7.2 Imprimir los acordes

Los acordes se pueden imprimir por su nombre, además de la impresión estándar como notas sobre un pentagrama.

#### Impresión de los nombres de acorde

Los nombres de acorde se imprimen dentro del contexto `ChordNames`:

>     \new ChordNames {
>       \chordmode {
>         c2 f4. g8
>       }
>     }

Los acordes se pueden escribir como notas simultáneas o a través del uso del modo de acordes. El nombre de acorde que se imprime es el mismo independientemente del modo de entrada, a no ser que existan inversiones o bajos añadidos:

>     chordmusic = \relative {
>       <c' e g>2 <f bes c>
>       <f c' e g>1
>       \chordmode {
>         c2 f:sus4 c1:/f
>       }
>     }
>     <<
>       \new ChordNames {
>         \chordmusic
>       }
>       {
>         \chordmusic
>       }
>     >>

Los silencios pasados a un contexto `ChordNames` hacen que se imprima el elemento de marcado `noChordSymbol` (símbolo de N.C., Sin Acorde).

>     <<
>       \new ChordNames \chordmode {
>         c1
>         r1
>         g1
>         c1
>       }
>       \chordmode {
>         c1
>         r1
>         g1
>         c1
>       }
>     >>

`\chords { … }` es una forma abreviada de escribir `\new ChordNames \chordmode { … }`.

>     \chords {
>       c2 f4.:m g8:maj7
>     }

>     \new ChordNames {
>       \chordmode {
>         c2 f4.:m g8:maj7
>       }
>     }

#### Fragmentos de código seleccionados

#### Imprimir los acordes cuando se produce un cambio

De forma predeterminada se imprimen todos los acordes que aparecen en el código de entrada; se puede modificar este comportamiento de tal manera que los acordes se impriman exclusivamente al comienzo de las líneas y cuando cambia el acorde.

>     harmonies = \chordmode {
>       c1:m c:m \break c:m c:m d
>     }

>     <<
>       \new ChordNames {
>         \set chordChanges = ##t
>         \harmonies
>       }
>       \new Staff {
>         \relative c' { \harmonies }
>       }
>     >>

#### Hoja guía de acordes o «lead sheet» sencilla

Al juntar nombres de acorde en cifrado americano, melodía y letra, obtenemos una hoja guía de acordes o «lead sheet»:

>     <<
>       \chords { c2 g:sus4 f e }
>       \new Staff \relative c'' {
>         a4 e c8 e r4
>         b2 c4( d)
>       }
>       \addlyrics { One day this shall be free __ }
>     >>

#### Véase también

Glosario musical: chord.

Referencia de la notación: Escribir música en paralelo.

Fragmentos de código: Chords.

Referencia de funcionamiento interno: ChordNames, ChordName, Chord_name_engraver, Volta_engraver, Bar_engraver.

#### Advertencias y problemas conocidos

Los acordes que contienen inversiones o bajos alterados no reciben un nombre adecuado si se escriben usando música simultánea.

#### Nombres de acorde personalizados

No hay un sistema único para nombrar acordes. Las distintas tradiciones musicales usan distintos nombres para el mismo conjunto de acordes. También hay distintos símbolos impresos para un nombre de acorde dado. Los nombres y símbolos que se imprimen para los nombres de acorde dados se pueden personalizar.

El esquema de nomenclatura de acordes predeterminado es un sistema para música de Jazz, propuesto por Klaus Ignatzek (véase Lista de referencias bibliográficas. Se pueden implementar otros sistemas de nomenclatura de acordes mediante funciones de Scheme, como se muestra en el fragmento de código “Chord names alternative” dentro de la sección Chords.)). Hay una lista de notaciones comunes para acordes de jazz en la tabla de la sección Cuadro de nombres de acordes.

Se puede trucar fácilmente el sistema de nomenclatura de acordes predeterminado. Para empezar, ciertas órdenes predefinidas permiten la utilización de distintos idiomas para la nota fundamental. Entre ellos están `\germanChords`, `\semiGermanChords`, `\italianChords` y `\frenchChords`:

Algunos cancioneros alemanes indican los acordes menores como letras minúsculas, sin el sufijo m. Esto se puede conseguir estableciendo la propiedad `chordNameLowercaseMinor`:

>     \chords {
>       \set chordNameLowercaseMinor = ##t
>       c2 d:m e:m f
>     }

También se puede afinar la presentación de los nombres de acorde a través de las siguientes propiedades.

`chordRootNamer`

  El nombre de acorde se imprime normalmente como una letra para la fundamental con una alteración opcional. La transformación de la nota en la letra se realiza por parte de esta función. Los nombres de nota especiales (por ejemplo, la ‘H’ alemana para un acorde de Si) se pueden producir almacenando una función nueva en esta propiedad.

`majorSevenSymbol`

  Esta propiedad contiene el objeto de marcado que se usa para hacer el seguimiento de la salida de `chordRootNamer` para identificar un acorde de séptima mayor. Las opciones predefinidas son `whiteTriangleMarkup` (triángulo blanco) y `blackTriangleMarkup` (triángulo negro).

`additionalPitchPrefix`

  Cuando el acorde contiene notas añadidas, se pueden prefijar opcionalmente por un texto. Por omisión no hay ningún prefijo, para evitar la sobrecarga visual, pero para pequeñas cantidades de notas añadidas puede ser visualmente efectivo.

  >     \new ChordNames {
  >       <c e g d'>    % add9
  >       \set additionalPitchPrefix = "add"
  >       <c e g d'>    % add9
  >     }

`chordNoteNamer`

  Cuando el nombre del acorde contiene notas adicionales aparte de la fundamental (p.ej., un bajo añadido), se utiliza esta función para imprimir la nota adicional. De forma predeterminada se imprime la nota usando `chordRootNamer`. La propiedad `chordNoteNamer` se puede establecer a una función especializada para cambiar este comportamiento. Por ejemplo, el bajo se puede imprimir en minúscula.

`chordNameSeparator`

  Las diferentes partes del nombre de un acorde se separan normalmente mediante un pequeño espacio en blanco. Mediante el ajuste de `chordNameSeparator`, podemos usar cualquier marcado que deseemos como separador. Esto no afecta al separador entre un acorde y la nota del bajo: para personalizar eso, utilice `slashChordSeparator`.

  >     \chords {
  >       c4:7.9- c:7.9-/g
  >       \set chordNameSeparator = \markup { "/" }
  >       \break
  >       c4:7.9- c:7.9-/g
  >     }

`slashChordSeparator`

  Los acordes se pueden tocar sobre una nota del bajo distinta a la fundamental. Se llaman "inversiones" o "acordes de barra inclinada" porque la manera predeterminada de efectuar su notación es con una barra inclinada entre el acorde y la nota del bajo. Por tanto, el valor de `slashChordSeparator` es, por omisión, una barra inclinada, pero podemos cambiarlo a cualquier elemento de marcado que queramos.

  >     \chords {
  >       c4:7.9- c:7.9-/g
  >       \set slashChordSeparator = \markup { " over " }
  >       \break
  >       c4:7.9- c:7.9-/g
  >     }

`chordNameExceptions`

  Esta propiedad es una lista de parejas. El primer elemento de cada pareja es un conjunto de notas utilizadas para identificar los elementos presentes en el acorde. El segundo elemento es un elemento de marcado que sigue a la salida de `chordRootNamer` para crear el nombre del acorde.

`minorChordModifier`

  La notación de los acordes menores se suele hacer por medio del sufijo ‘m’ a la derecha de la letra que indica la fundamental del acorde. Sin embargo, otras convenciones dan preferencia a sufijos diferentes, como un signo menos.

  >     \chords {
  >       c4:min f:min7
  >       \set minorChordModifier = \markup { "-" }
  >       \break
  >       c4:min f:min7
  >     }

`chordPrefixSpacer`

  El modificador de los acordes menores tal y como viene determinado por `minorChordModifier` se imprime por lo general inmediatamente a la derecha de la fundamental. Se puede insertar un símbolo separador entre la fundamental y el modificador estableciendo `chordPrefixSpacer`. El símbolo separador no se usa cuando el acorde está alterado.

#### Instrucciones predefinidas

`\whiteTriangleMarkup`, `\blackTriangleMarkup`, `\germanChords`, `\semiGermanChords`, `\italianChords`, `\frenchChords`.

#### Fragmentos de código seleccionados

#### Excepciones para los nombres de acorde

Se puede usar la propiedad `chordNameExceptions` para almacenar una lista de notaciones espaciales para acordes específicos.

>     % modify maj9 and 6(add9)
>     % Exception music is chords with markups
>     chExceptionMusic = {
>       <c e g b d'>1-\markup { \super "maj9" }
>       <c e g a d'>1-\markup { \super "6(add9)" }
>     }

>     % Convert music to list and prepend to existing exceptions.
>     chExceptions = #(append
>       (sequential-music-to-chord-exceptions chExceptionMusic #t)
>       ignatzekExceptions)

>     theMusic = \chordmode {
>       g1:maj9 g1:6.9
>       \set chordNameExceptions = #chExceptions
>       g1:maj9 g1:6.9
>     }

>     \layout {
>       ragged-right = ##t
>     }

>     <<
>        \new ChordNames \theMusic
>        \new Voice \theMusic
>     >>

#### Nombre de acorde maj7

La presentación del acorde de séptima mayor se puede ajustar mediante majorSevenSymbol.

>     \chords {
>       c:7+
>       \set majorSevenSymbol = \markup { j7 }
>       c:7+
>     }

#### Añadir barras de compás al contexto de nombres de acorde (ChordNames)

Para añadir indicaciones de línea divisoria dentro del contexto de los nombres de acorde `ChordNames`, incluya el grabador `Bar_engraver`.

>     \new ChordNames \with {
>       \override BarLine.bar-extent = #'(-2 . 2)
>       \consists "Bar_engraver"
>     }

>     \chordmode {
>       f1:maj7 f:7 bes:7
>     }

#### Corchetes de primera y segunda vez debajo de los acordes

Mediante la adición del grabador `Volta_engraver` al pentagrama pertinente, se pueden poner los corchetes de primera y segunda vez debajo de los acordes.

>     \score {
>       <<
>         \chords {
>           c1
>           c1
>         }
>         \new Staff \with {
>           \consists "Volta_engraver"
>         }
>         {
>           \repeat volta 2 { c'1 }
>           \alternative { c' }
>         }
>       >>
>       \layout {
>         \context {
>           \Score
>           \remove "Volta_engraver"
>         }
>       }
>     }

#### Modificación del separador de acordes

Se puede establecer el separador entre las distintas partes del nombre de un acorde para que sea cualquier elemento de marcado.

>     \chords {
>       c:7sus4
>       \set chordNameSeparator
>         = \markup { \typewriter | }
>       c:7sus4
>     }

#### Véase también

Referencia de la notación: Cuadro de nombres de acordes, Modificadores de acorde más usuales.

El ensayo sobre grabado musical automatizado: Lista de referencias bibliográficas.

Archivos instalados: ‘`scm/chords-ignatzek-names.scm`’, ‘`scm/chord-entry.scm`’, ‘`ly/chord-modifiers-init.ly`’.

Fragmentos de código: Chords.

#### Advertencias y problemas conocidos

Los nombres de acorde se determinan a partir de las notas que están presentes en el mismo y de la información acerca de la estructura del acorde que ha podido ser introducida en `\chordmode`. Si el método de las notas simultáneas se usa para introducir los acordes, pueden resultar nombres no deseados a partir de las inversiones o de las notas del bajo.

>     myChords = \relative c' {
>       \chordmode { c1 c/g c/f }
>       <c e g>1 <g c e> <f c' e g>
>     }
>     <<
>       \new ChordNames { \myChords }
>       \new Staff { \myChords }
>     >>

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