Diagrammi dei tasti

I diagrammi dei tasti possono essere collegati alla musica come testo (markup) attaccato alla nota desiderata. Il testo contiene l’informazione sul diagramma dei tasti desiderato. Esistono tre diverse interfacce per inserire un diagramma dei tasti (fret-diagram): standard, conciso (terse) e ridondante (verbose). Le tre interfacce producono testi graficamente equivalenti, ma hanno diverse quantità di informazioni nella stringa di testo. I dettagli sulla sintassi delle diverse stringhe di markup usate per definire i diagrammi dei tasti si trovano in Instrument-specific markup.

Il comando per il diagramma dei tasti standard, \fret-diagram, richiede il numero di corda e il numero di tasto per ogni punto da posizionare sulla corda. Per esempio 5-3 indica che la quinta corda è premuta sul terzo tasto. Si possono indicare anche corde a vuoto o non suonate (mute) attaccando rispettivamente -o e -x al numero di corda.

<<
  \new ChordNames {
    \chordmode {
      c1 d:m
    }
  }
  \new Staff {
    \clef "treble_8"
    <c e g c' e'>1^\markup {
      \fret-diagram "6-x;5-3;4-2;3-o;2-1;1-o;"
    }
    <d a d' f'>1^\markup {
      \fret-diagram "6-x;5-x;4-o;3-2;2-3;1-1;"
    }
  }
>>

[image of music]

Con fret-diagram si possono aggiungere indicazioni di barré al diagramma inserendo all’inizio della stringa, per esempio, c:4-1-3, che indica che il barré va dalla quarta alla prima corda e si trova sul terzo tasto.

<<
  \new ChordNames {
     \chordmode {
       f1 g
     }
  }
  \new Staff {
    \clef "treble_8"
    <f, c f a c' f'>1^\markup {
      \fret-diagram "c:6-1-1;6-1;5-3;4-3;3-2;2-1;1-1;"
    }
    <g, d g b d' g'>1^\markup {
      \fret-diagram "c:6-1-3;6-3;5-5;4-5;3-4;2-3;1-3;"
    }
  }
>>

[image of music]

La dimensione del diagramma dei tasti si può variare col modificatore s:. Un numero superiore a 1 aumenterà la dimensione predefinita, mentre uno inferiore a 1 la ridurrà. Il numero dei tasti del diagramma può essere cambiato col modificatore h: seguito dal numero di tasti desiderato.

<<
  \new ChordNames {
     \chordmode {
       f1 g
     }
  }
  \new Staff {
    \clef "treble_8"
    <f, c f a c' f'>1^\markup {
      \fret-diagram "s:1.5;c:6-1-1;6-1;5-3;4-3;3-2;2-1;1-1;"
    }
    <g, b, d g b g'>1^\markup {
      \fret-diagram "h:6;6-3;5-2;4-o;3-o;2-o;1-3;"
    }
  }
>>

[image of music]

Il numero di corde in un diagramma creato con \fret-diagram può essere cambiato per adattarsi a diversi strumenti come banjo e ukulele. Il modificatore è w: seguito dal numero di corde desiderato.

<<
  \new ChordNames {
    \chordmode {
      a1
    }
  }
  \new Staff {
    % An 'A' chord for ukulele
    a'1^\markup {
      \fret-diagram "w:4;4-2-2;3-1-1;2-o;1-o;"
    }
  }
>>

[image of music]

Si possono aggiungere indicazioni di diteggiatura appendendo un terzo numero, dopo quelli della corda e del tasto. La posizione delle diteggiature è controllata dal modificatore f:, che può prendere due valori: 1, per mostrare i numeri di diteggiatura sul tasto; 2 per mostrarli alla base della rispettiva corda (posizione predefinita).

<<
  \new ChordNames {
    \chordmode {
      c1 d:m
    }
  }
  \new Staff {
    \clef "treble_8"
    <c e g c' e'>1^\markup {
      \fret-diagram "f:1;6-x;5-3-3;4-2-2;3-o;2-1-1;1-o;"
    }
    <d a d' f'>1^\markup {
      \fret-diagram "f:2;6-x;5-x;4-o;3-2-2;2-3-3;1-1-1;"
    }
  }
>>

[image of music]

Il comando fret-diagram consente anche di modificare il raggio del punto (modificatore d:) e la sua posizione rispetto al tasto (modificatore p:).

<<
  \new ChordNames {
    \chordmode {
      c1 d:m
    }
  }
  \new Staff {
    \clef "treble_8"
    <c e g c' e'>1^\markup {
      \fret-diagram "d:0.35;6-x;5-3;4-2;3-o;2-1;1-o;"
    }
    <d a d' f'>1^\markup {
      \fret-diagram "p:0.2;6-x;5-x;4-o;3-2;2-3;1-1;"
    }
  }
>>

[image of music]

I diagrammi dei tasti possono essere adattati per i mancini

\markup
  \center-column {
    "C"
    "(left-handed)"
     \override #`(fret-diagram-details . ((handedness . ,LEFT)))
     \fret-diagram "6-x;5-3-3;4-2-2;3-o;2-1;1-o;"
  }

[image of music]

Il comando markup \fret-diagram-terse ha un formato più conciso perché omette i numeri di corda, che sono calcolati implicitamente in base al punto e virgola che separa ciascuna corda. Il primo punto e virgola corrisponde al numero di corda più alto e l’ultimo punto e virgola corrisponde alla prima corda. Si possono indicare anche corde a vuoto, mute e con tasto premuto, come visto prima.

<<
  \new ChordNames {
    \chordmode {
      c1 d:m
    }
  }
  \new Staff {
    \clef "treble_8"
    <c e g c' e'>1^\markup {
      \fret-diagram-terse "x;3;2;o;1;o;"
    }
    <d a d' f'>1^\markup {
      \fret-diagram-terse "x;x;o;2;3;1;"
    }
  }
>>

[image of music]

Nella stringa di \fret-diagram-terse si possono inserire indicazioni di barré:

<<
  \new ChordNames {
    \chordmode {
      f1 g
    }
  }
  \new Staff {
    \clef "treble_8"
    <f, c f a c' f'>1^\markup {
      \fret-diagram-terse "1-(;3;3;2;1;1-);"
    }
    <g, d g b d' g'>1^\markup {
      \fret-diagram-terse "3-(;5;5;4;3;3-);"
    }
  }
>>

[image of music]

\fret-diagram-terse accetta anche indicazioni di diteggiatura, che si troveranno in seconda posizione, dopo il numero del tasto.

<<
  \new ChordNames {
    \chordmode {
      c1 d:m
    }
  }
  \new Staff {
    \override Voice.TextScript.fret-diagram-details.finger-code = #'below-string
    \clef "treble_8"
    <c e g c' e'>1^\markup {
      \fret-diagram-terse "x;3-3;2-2;o;1-1;o;"
    }
    <d a d' f'>1^\markup {
      \fret-diagram-terse "x;x;o;2-2;3-3;1-1;"
    }
  }
>>

[image of music]

Quando si usa \fret-diagram-terse, altre proprietà del diagramma dei tasti possono essere regolate usando \override.

Solo un’indicazione per corda può essere inclusa in un markup fret-diagram-terse. Per avere indicazioni multiple per corda, usare una diagramma dei tasti o un markup fret-diagram-verbose.

Il comando \fret-diagram-verbose prende come argomento una lista Scheme. Ciascun elemento della lista indica un elemento da posizionare sul diagramma.

<<
    \new ChordNames {
      \chordmode {
        c1 d:m
      }
    }
  \new Staff {
    \clef "treble_8"
    <c e g c' e'>1^\markup {
      \fret-diagram-verbose #'(
        (mute 6)
        (place-fret 5 3)
        (place-fret 4 2)
        (open 3)
        (place-fret 2 1)
        (open 1)
      )
    }
    <d a d' f'>1^\markup {
      \fret-diagram-verbose #'(
        (mute 6)
        (mute 5)
        (open 4)
        (place-fret 3 2)
        (place-fret 2 3)
        (place-fret 1 1)
      )
    }
  }
>>

[image of music]

Nella lista di fret-diagram-verbose si possono inserire indicazioni di diteggiatura e barré. Solo in questa interfaccia è possibile inserire un’indicazione di capotasto per il diagramma. L’indicazione di capotasto è una barra spessa che copre tutte le corde. Il tasto col capotasto sarà il tasto più basso del diagramma.

I punti con le diteggiature possono essere colorati o racchiusi da parentesi; il colore delle parentesi può essere modificato in modo indipendente.

Si può anche inserire del testo di tipo markup dentro i punti.

<<
    \new ChordNames {
      \chordmode {
        f1 g c c b
      }
    }
  \new Staff {
    \clef "treble_8"
    \override Voice.TextScript.fret-diagram-details.finger-code = #'below-string
    <f, c f a c' f'>1^\markup {
      \fret-diagram-verbose #'(
        (place-fret 6 1)
        (place-fret 5 3)
        (place-fret 4 3)
        (place-fret 3 2)
        (place-fret 2 1)
        (place-fret 1 1)
        (barre 6 1 1)
      )
    }
    <g, b, d g b g'>1^\markup {
      \fret-diagram-verbose #'(
        (place-fret 6 3 2)
        (place-fret 5 2 1)
        (open 4)
        (open 3)
        (open 2)
        (place-fret 1 3 3)
      )
    }
    <c g c' e' g'>1^\markup {
      \fret-diagram-verbose #'(
        (capo 3)
        (mute 6)
        (place-fret 4 5 1)
        (place-fret 3 5 2)
        (place-fret 2 5 3)
      )
    }
    \override Voice.TextScript.size = 1.4
    <c g c' e' g'>1^\markup {
      \fret-diagram-verbose #'(
        (place-fret 6 3 1 red parenthesized default-paren-color)
        (place-fret 5 3 1 inverted)
        (place-fret 4 5 2 blue parenthesized)
        (place-fret 3 5 3 blue)
        (place-fret 2 5 4 blue)
        (place-fret 1 3 1 inverted)
      )
    }
    \override Voice.TextScript.size = 1.5
    <b, fis b dis' fis'>1^\markup
      \override #'(fret-diagram-details . ((finger-code . in-dot)))
      \fret-diagram-verbose #`(
        (place-fret 5 2 1)
        (place-fret 4 4 "fis" red)
        (place-fret 3 4 "b" red)
        (place-fret
          2 4
          ,#{ \markup
                \concat {
                  \vcenter "d"
                  \fontsize #-5
                  \musicglyph "accidentals.sharp"} #}
          red)
        (place-fret 1 2 1)
      )
  }
>>

[image of music]

Anche in questa interfaccia è possibile modificare tutte le altre proprietà del diagramma dei tasti tramite \override.

L’aspetto grafico di un diagramma dei tasti può essere personalizzato secondo le proprie preferenze attraverso le proprietà dell’interfaccia fret-diagram-interface. Tutti i dettagli si trovano in fret-diagram-interface. Per un diagramma dei tasti di tipo markup, le proprietà dell’interfaccia appartengono a Voice.TextScript.

Frammenti di codice selezionati

Cambiare l’orientamento della tastiera

I diagrammi dei tasti possono essere orientati in tre modi.

\include "predefined-guitar-fretboards.ly"

<<
  \chords {
    c1
    c1
    c1
  }
  \new FretBoards {
    \chordmode {
      c1
      \override FretBoard.fret-diagram-details.orientation =
        #'landscape
      c1
      \override FretBoard.fret-diagram-details.orientation =
        #'opposing-landscape
      c1
    }
  }
  \new Voice {
    c'1
    c'1
    c'
  }
>>

[image of music]

Personalizzare il diagramma dei tasti di tipo markup

Le proprietà del diagramma dei tasti si possono impostare tramite 'fret-diagram-details. Per diagrammi di tipo markup, gli override possono essere applicati all’oggetto Voice.TextScript o direttamente al markup.

<<
  \chords { c1 | c | c | d }

  \new Voice = "mel" {
    \textLengthOn
    % Set global properties of fret diagram
    \override TextScript.size = 1.2
    \override TextScript.fret-diagram-details.finger-code = #'in-dot
    \override TextScript.fret-diagram-details.dot-color = #'white

    %% C major for guitar, no barre, using defaults
       % terse style
    c'1^\markup { \fret-diagram-terse "x;3-3;2-2;o;1-1;o;" }

    %% C major for guitar, barred on third fret
       % verbose style
       % size 1.0
       % roman fret label, finger labels below string, straight barre
    c'1^\markup {
      % standard size
      \override #'(size . 1.0) {
        \override #'(fret-diagram-details . (
                     (number-type . roman-lower)
                     (finger-code . in-dot)
                     (barre-type . straight))) {
          \fret-diagram-verbose #'((mute 6)
                                   (place-fret 5 3 1)
                                   (place-fret 4 5 2)
                                   (place-fret 3 5 3)
                                   (place-fret 2 5 4)
                                   (place-fret 1 3 1)
                                   (barre 5 1 3))
        }
      }
    }

    %% C major for guitar, barred on third fret
       % verbose style
       % landscape orientation, arabic numbers, M for mute string
       % no barre, fret label down or left, small mute label font
    c'1^\markup {
      \override #'(fret-diagram-details . (
                   (finger-code . below-string)
                   (number-type . arabic)
                   (label-dir . -1)
                   (mute-string . "M")
                   (orientation . landscape)
                   (barre-type . none)
                   (xo-font-magnification . 0.4)
                   (xo-padding . 0.3))) {
        \fret-diagram-verbose #'((mute 6)
                                 (place-fret 5 3 1)
                                 (place-fret 4 5 2)
                                 (place-fret 3 5 3)
                                 (place-fret 2 5 4)
                                 (place-fret 1 3 1)
                                 (barre 5 1 3))
      }
    }

    %% simple D chord
       % terse style
       % larger dots, centered dots, fewer frets
       % label below string
    d'1^\markup {
      \override #'(fret-diagram-details . (
                   (finger-code . below-string)
                   (dot-radius . 0.35)
                   (dot-position . 0.5)
                   (fret-count . 3))) {
        \fret-diagram-terse "x;x;o;2-1;3-2;2-3;"
      }
    }
  }
>>

[image of music]

Vedi anche

Guida alla notazione: Instrument-specific markup.

Frammenti: Fretted strings.

Guida al funzionamento interno: fret-diagram-interface.


Guida alla Notazione di LilyPond v2.25.22 (development-branch).