2.4.1 Notazione comune per strumenti a corde con tasti

Questa sezione presenta la notazione comune che riguarda esclusivamente gli strumenti a corde con tasti.


Riferimenti per strumenti a corde con tasti

La musica per strumenti a corde con tasti viene normalmente scritta su un rigo singolo, o nella notazione musicale tradizionale o in intavolatura. Talvolta i due tipi sono combinati; nella musica popolare è molto comune usare i diagrammi degli accordi sopra un rigo di notazione tradizionale. La chitarra e il banjo sono strumenti traspositori, che suonano un’ottava più bassa di quella in cui vengono scritti. Le partiture per questi strumenti devono usare la chiave "treble_8" (per ottenere l’output MIDI corretto usare \transposition c). Altri elementi relativi agli strumenti a corde con tasti sono trattati altrove:

Vedi anche

Guida alla notazione: Indicazioni di diteggiatura, Legature di valore, Risoluzione delle collisioni, Nomi degli strumenti, Scrivere la musica in parallelo, Arpeggio, Elenco delle articolazioni, Chiave, Trasporto strumentale.


Indicazioni di numero di corda

La corda sulla quale suonare una nota può essere indicata aggiungendo \numero a una nota.

\clef "treble_8"
c4\5 e\4 g2\3
<c\5 e\4 g\3>1

[image of music]

Se si usano insieme diteggiature e indicazioni di corda, il loro posizionamento è regolato dall’ordine in cui i due elementi appaiono nel codice solo se si trovano all’interno di un accordo esplicito: se applicate a un intero accordo o a singole note fuori da un accordo, le diteggiature vengono posizionate con un meccanismo diverso.

\clef "treble_8"
g4\3-0
g-0\3
<g\3-0>
<g-0\3>

[image of music]

I numeri di corda possono anche essere rappresentati da numeri romani, come è abituale con gli strumenti a corde senza tasti, e posizionati sotto il rigo invece che sopra.

\clef "treble_8"
c'2\2
a\3
\romanStringNumbers
c'\2
\set stringNumberOrientations = #'(down)
a\3
\arabicStringNumbers
g1\4

[image of music]

Frammenti di codice selezionati

La maggior parte dei comportamenti relativi alle indicazioni di numero di corda (oggetto StringNumber), incluso il loro posizionamento, possono essere impostati nello stesso modo valido per le diteggiature: vedi Indicazioni di diteggiatura.

Comandi predefiniti

\arabicStringNumbers, \romanStringNumbers.

Vedi anche

Guida alla notazione: Indicazioni di diteggiatura.

Frammenti: Fretted strings.

Guida al funzionamento interno: StringNumber, Fingering.


Intavolature predefinite

La musica per gli strumenti a corde pizzicate si scrive con un sistema di notazione basato sulle dita/tocco ovvero l’intavolatura (o tablatura). Diversamente dalla notazione tradizionale, le altezze non sono rappresentate da teste di nota, ma da numeri (o da simboli simili a lettere nell’intavolatura antica). Le linee del rigo nell’intavolatura indicano la corda su cui suonare la nota, mentre un numero posto su una linea del rigo indica il tasto su cui premere la corda corrispondente. Le note da suonare simultaneamente sono allineate verticalmente. Per impostazione predefinita, la corda 1 è la corda più alta e corrisponde alla linea più alta del rigo dell’intavolatura (TabStaff). L’accordatura predefinita delle corde di TabStaff è l’accordatura standard per chitarra (a sei corde). Le note appaiono in intavolatura, usando i contesti TabStaff e TabVoice. Viene aggiunta automaticamente una chiave calligrafica per l’intavolatura.

\new TabStaff \relative {
  a,8 a' <c e> a
  d,8 a' <d f> a
}

[image of music]

L’aspetto predefinito per le intavolature non prevede alcun simbolo di durata né altri simboli musicali, come per esempio i segni di espressione.

symbols = {
  \time 3/4
  c4-.^"Allegro" d( e)
  f4-.\f g a^\fermata
  \mark \default
  c8_.\<\( c16 c~ 2\!
  c'2.\prall\)
}

\score {
  <<
    \new Staff { \clef "G_8" \symbols }
    \new TabStaff { \symbols }
  >>
}

[image of music]

Se si desidera che tutti i simboli usati nella notazione tradizionale appaiano anche nell’intavolatura, occorre applicare il comando \tabFullNotation in un contesto TabStaff. Tenere presente che nell’intavolatura le note da due quarti hanno un doppio gambo per distinguerle dalle note di un quarto.

symbols = {
  \time 3/4
  c4-.^"Allegro" d( e)
  f4-.\f g a^\fermata
  \mark \default
  c8_.\<\( c16 c~ 2\!
  c'2.\prall\)
}

\score {
  \new TabStaff {
    \tabFullNotation
    \symbols
  }
}

[image of music]

Di norma le altezze vengono assegnate alla posizione più bassa della tastiera (prima posizione). Viene data priorità alle corde a vuoto. Per far sì che una certa altezza venga suonata su una corda specifica, aggiungere un’indicazione di numero di corda al nome dell’altezza. Per nascondere le indicazioni di numero di corda nella notazione tradizionale, sovrascrivere lo stampo (stencil) corrispondente.

Spesso è più comodo definire la posizione sulla tastiera modificando la proprietà minimumFret, il cui valore predefinito è 0.

Anche quando minimumFret è impostato esplicitamente, vengono usate le corde a vuoto ogni volta che è possibile. È possibile modificare questo comportamento impostando restrainOpenStrings su #t.

\layout { \omit Voice.StringNumber }
\new StaffGroup <<
   \new Staff \relative {
     \clef "treble_8"
     \time 2/4
     c16 d e f g4
     c,16\5 d\5 e\4 f\4 g4\4
     c,16 d e f g4
   }
   \new TabStaff \relative {
     c16 d e f g4
     c,16\5 d\5 e\4 f\4 g4\4
     \set TabStaff.minimumFret = #5
     \set TabStaff.restrainOpenStrings = ##t
     c,16 d e f g4
   }
>>

[image of music]

Gli accordi possono essere ripetuti col simbolo di ripetizione accordo q, che però rimuove i numeri di corda e le diteggiature. Se usato nelle intavolature, può quindi creare problemi. Converrà quindi eseguire il comando

\chordRepeats #'(string-number-event fingering-event)

esplicitamente sulle espressioni musicali dell’intavolatura che usano la Ripetizione di un accordo. Questo comando è così comune che è disponibile come \tabChordRepeats.

guitar = \relative {
  r8 <gis-2 cis-3 b-0>~ q4 q8~ 8 q4
}

\new StaffGroup <<
  \new Staff {
    \clef "treble_8"
    \guitar
  }
  \new TabStaff {
    \tabChordRepeats \guitar
  }
>>

[image of music]

Le legature di valore spezzate da un a capo appaiono tra parentesi. Lo stesso vale per la seconda alternativa di una ripetizione.

ties = \relative {
  \repeat volta 2 {
    e'2. f4~
    2 g2~
  }
  \alternative {
     \volta 1 { g4 f2. }
     \volta 2 { g4\repeatTie c,2. }
  }
  b1~
  \break
  b1
  \bar "|."
}

\score {
  <<
    \new StaffGroup  <<
      \new Staff {
        \clef "treble_8"
        \ties
      }
      \new TabStaff {
        \ties
      }
    >>
  >>
  \layout {
  indent = #0
  ragged-right = ##t
  }
}

[image of music]

Il comando \hideSplitTiedTabNotes annulla il comportamento di racchiudere i numeri di tasto tra parentesi:

ties = \relative {
  \repeat volta 2 {
    e'2. f4~
    2 g2~ }
  \alternative {
    \volta 1 { g4 f2. }
    \volta 2 { g4\repeatTie c,2. }
  }
  b1~
  \break
  b1
  \bar "|."
}

\score {
  <<
    \new StaffGroup  <<
      \new Staff {
        \clef "treble_8"
        \ties
      }
      \new TabStaff {
      \hideSplitTiedTabNotes
        \ties
      }
    >>
  >>
  \layout {
  indent = #0
  ragged-right = ##t
  }
}

[image of music]

Gli armonici possono essere inseriti in un’intavolatura nelle altezze in cui suonano:

\layout { \omit Voice.StringNumber }
firstHarmonic = {
  d'4\4\harmonic
  g'4\3\harmonic
  b'2\2\harmonic
}
\score {
  <<
    \new Staff {
      \clef "treble_8"
      \firstHarmonic
    }
    \new TabStaff { \firstHarmonic }
  >>
}

[image of music]

Il comando \harmonic deve essere sempre attaccato a note singole (possibilmente dentro a un costrutto per accordo) invece che ad accordi interi. Ha senso usarlo solo per gli armonici sul dodicesimo tasto. Tutti gli altri armonici devono essere calcolati da LilyPond. Ciò si ottiene indicando il tasto in cui il dito della mano che preme i tasti debba toccare una corda.

fretHarmonics = {
  \harmonicByFret #5 d16\4
  \harmonicByFret #4 d16\4
  \harmonicByFret #3 d8\4
  \harmonicByFret #5 <g\3 b\2>2.
}
\score {
  <<
    \new Staff {
      \clef "treble_8"
      \fretHarmonics
    }
    \new TabStaff { \fretHarmonics }
  >>
}

[image of music]

Gli armonici possono essere calcolati anche definendo il rapporto delle lunghezze della corda sopra e sotto la diteggiatura dell’armonico.

ratioHarmonics = {
  \harmonicByRatio #1/2 <g\3 b\2 e'\1>4
  \harmonicByRatio #1/3 <g\3 b\2 e'\1>4
  \harmonicByRatio #1/4 { g8\3 b8\2 e'4\1 }
}
\score {
  <<
    \new Staff {
      \clef "treble_8"
      \ratioHarmonics
    }
    \new TabStaff { \ratioHarmonics }
  >>
}

[image of music]

I “bending” degli strumenti a corda sono supportati nell’intavolatura. Un bending – letteralmente, “piegatura” – viene introdotto aggiungendo \^ alla nota o accordo da piegare; termina automaticamente alla nota o accordo successivi. Sono disponibili i seguenti stili: quello predefinito produce una curva con una punta di freccia rivolta verso l’alto o verso il basso, 'hold una linea orizzontale tratteggiata, 'pre-bend una linea verticale con una punta di freccia e 'pre-bend-hold una linea verticale con una punta di freccia seguita da una linea tratteggiata.

bend-styles = {
  <>^"predefinito"
  f'4\^ g'4\^ f'2

  <>^"'hold"
  \grace f'4\^ g'1\bendHold \^ g'1

  <>^"'pre-bend"
  \grace f'4\preBend \^ g'1\bendHold \^ g'1

  <>^"'pre-bend-hold"
  \grace f'4\preBendHold \^ g'1\bendHold \^ g'1\^ f'

  \bar "|."
}

\score {
  \new StaffGroup
  <<
    \new Staff {
      \override TextScript.font-size = -2
      \clef "G_8"
      \bend-styles
    }
    \new TabStaff \bend-styles
  >>
  \layout {
    \context {
      \Voice
      \omit StringNumber
    }
    \context {
      \TabStaff
      minimumFret = #5
    }
    \context {
      \TabVoice
      \consists "Bend_spanner_engraver"
    }
  }
}

[image of music]

I bending generalmente non si applicano alle corde vuote. Per piegarle occorre impostare la proprietà 'bend-me su #t. Per evitare che altre note siano piegate impostarla su #f.

mus = {
  <>^"predefinito"
  <a b f'>4\^
  <ais b fis'>\^
  <a b f'>2

  <>^"piega le corde vuote"
  <a \tweak bend-me ##t b f'>4\^
  <ais \tweak bend-me ##t bis fis'>\^
  <a b f'>2

  <>^"escludi altre corde"
  <g \tweak bend-me ##f b\3 d'>4\^
  <a e'\2 >\^
  <g \tweak bend-me ##f b\3 d'>2

  \bar "|."
}

\score {
  \new StaffGroup
  <<
    \new Staff {
      \override TextScript.font-size = -2
      \clef "G_8"
      \mus
    }
    \new TabStaff \mus
  >>
  \layout {
    \context {
      \Voice
      \omit StringNumber
    }
    \context {
      \TabVoice
      \consists "Bend_spanner_engraver"
    }
  }
}

[image of music]

Per i bending consecutivi il bending iniziale potrebbe aver bisogno di un’impostazione appropriata per details.successive-level. Per comodità c’è la funzione bendStartLevel, che prende un numero intero.

printNext = -\tweak details.target-visibility ##t \etc

mus = {
  c'4\3\^ cis'\3 \^ d'2\3

  \grace bes4\3\preBendHold \bendStartLevel 2 \printNext \^
  d'4\3\bendHold \^ d'2\3\^ des'4\3 \^ c'1\3

  \bar "|."
}

\score {
  \new StaffGroup
  <<
    \new Staff {
      \override TextScript.font-size = -2
      \clef "G_8"
      \mus
    }
    \new TabStaff \mus
  >>
  \layout {
    \context {
      \Voice
      \omit StringNumber
    }
    \context {
      \TabVoice
      \consists "Bend_spanner_engraver"
    }
  }
}

[image of music]

Per impostazione predefinita l’oggetto BendSpanner termina alla nota o accordo successivi anche se connesso con legatura di valore alla nota o accordo iniziali. Si può saltare una singola “colonna di note” (NoteColumn) tramite \skipNC. Si può saltare anche un gruppo di oggetti NoteColumn usando \skipNCs all’inizio e \endSkipNCs alla fine.

bends-with-ties-and-skips = {
  a'4~\^ \skipNC a'4~ \skipNC a'4 b'4
  a'4~ a'4~\^ \skipNC a'4 b'4
  a'4~ a'4~ a'4\^ b'4
  c'2\^ d'~ \bendHold \^ \skipNC d'~ d'\^ c'
  \grace { c'8-\preBendHold \^ }
  \skipNCs d'2~ d'2~ \endSkipNCs d'\^ c'2
  \bar "|."
}

\score {
  \new StaffGroup
  <<
    \new Staff {
      \clef "G_8"
      \bends-with-ties-and-skips
    }
    \new TabVoice \bends-with-ties-and-skips
  >>
  \layout {
    \context {
      \Voice
      \omit StringNumber
    }
    \context {
      \TabStaff
      minimumFret = #3
      restrainOpenStrings = ##t
    }
    \context {
      \TabVoice
      \consists "Bend_spanner_engraver"
    }
  }
}

[image of music]

Comandi predefiniti

\skipNCs, \skipNC, \endSkipNCs.

Frammenti di codice selezionati

Comportamento di gambi e travature in intavolatura

La direzione dei gambi nell’intavolatura è regolata nello stesso modo della notazione tradizionale. Le travature possono essere rese orizzontali, come illustrato in questo esempio.

\new TabStaff {
  \relative c {
    \tabFullNotation
    g16 b d g b d g b
    \stemDown
    \override Beam.concaveness = #10000
    g,,16 b d g b d g b
  }
}

[image of music]

Polifonia in intavolatura

La polifonia in TabStaff funziona proprio come nel rigo normale.

upper = \relative c' {
  \time 12/8
  \key e \minor
  \voiceOne
  r4. r8 e, fis g16 b g e e' b c b a g fis e
}

lower = \relative c {
  \key e \minor
  \voiceTwo
  r16 e d c b a g4 fis8 e fis g a b c
}

\score {
  <<
    \new StaffGroup = "tab with traditional" <<
      \new Staff = "guitar traditional" <<
        \clef "treble_8"
        \new Voice = "upper" \upper
        \new Voice = "lower" \lower
      >>
      \new TabStaff = "guitar tab" <<
        \new TabVoice = "upper" \upper
        \new TabVoice = "lower" \lower
      >>
    >>
  >>
}

[image of music]

Armonici su corde a vuoto in intavolatura

Questo frammento mostra come scrivere armonici su corde a vuoto.

openStringHarmonics = {
  \textSpannerDown
  \override TextSpanner.staff-padding = #3
  \override TextSpanner.dash-fraction = #0.3
  \override TextSpanner.dash-period = #1

  %first harmonic
  \override TextSpanner.bound-details.left.text =
    \markup\small "1st harm. "
  \harmonicByFret #12 e,2\6\startTextSpan
  \harmonicByRatio #1/2 e,\6\stopTextSpan

  %second harmonic
  \override TextSpanner.bound-details.left.text =
    \markup\small "2nd harm. "
  \harmonicByFret #7 e,\6\startTextSpan
  \harmonicByRatio #1/3 e,\6
  \harmonicByFret #19 e,\6
  \harmonicByRatio #2/3 e,\6\stopTextSpan
  %\harmonicByFret #19 < e,\6 a,\5 d\4 >
  %\harmonicByRatio #2/3 < e,\6 a,\5 d\4 >

  %third harmonic
  \override TextSpanner.bound-details.left.text =
    \markup\small "3rd harm. "
  \harmonicByFret #5 e,\6\startTextSpan
  \harmonicByRatio #1/4 e,\6
  \harmonicByFret #24 e,\6
  \harmonicByRatio #3/4 e,\6\stopTextSpan
  \break

  %fourth harmonic
  \override TextSpanner.bound-details.left.text =
    \markup\small "4th harm. "
  \harmonicByFret #4 e,\6\startTextSpan
  \harmonicByRatio #1/5 e,\6
  \harmonicByFret #9 e,\6
  \harmonicByRatio #2/5 e,\6
  \harmonicByFret #16 e,\6
  \harmonicByRatio #3/5 e,\6\stopTextSpan

  %fifth harmonic
  \override TextSpanner.bound-details.left.text =
    \markup\small "5th harm. "
  \harmonicByFret #3 e,\6\startTextSpan
  \harmonicByRatio #1/6 e,\6\stopTextSpan
  \break

  %sixth harmonic
  \override TextSpanner.bound-details.left.text =
    \markup\small "6th harm. "
  \harmonicByFret #2.7 e,\6\startTextSpan
  \harmonicByRatio #1/7 e,\6\stopTextSpan

  %seventh harmonic
  \override TextSpanner.bound-details.left.text =
    \markup\small "7th harm. "
  \harmonicByFret #2.3 e,\6\startTextSpan
  \harmonicByRatio #1/8 e,\6\stopTextSpan

  %eighth harmonic
  \override TextSpanner.bound-details.left.text =
    \markup\small "8th harm. "
  \harmonicByFret #2 e,\6\startTextSpan
  \harmonicByRatio #1/9 e,\6\stopTextSpan
}

\score {
  <<
    \new Staff
    \with { \omit StringNumber } {
      \new Voice {
        \clef "treble_8"
        \openStringHarmonics
      }
    }
    \new TabStaff {
      \new TabVoice {
        \openStringHarmonics
      }
    }
  >>
}

[image of music]

Armonici su corde premute in intavolatura

Questo frammento mostra come scrivere su intavolatura armonici su corde premute.

pinchedHarmonics = {
   \textSpannerDown
   \override TextSpanner.bound-details.left.text =
      \markup {\halign #-0.5 \teeny "PH" }
      \override TextSpanner.style =
         #'dashed-line
   \override TextSpanner.dash-period = #0.6
   \override TextSpanner.bound-details.right.attach-dir = #1
   \override TextSpanner.bound-details.right.text =
      \markup { \draw-line #'(0 . 1) }
   \override TextSpanner.bound-details.right.padding = #-0.5
}

harmonics = {
  %artificial harmonics (AH)
  \textLengthOn
  <\parenthesize b b'\harmonic>4_\markup { \teeny "AH 16" }
  <\parenthesize g g'\harmonic>4_\markup { \teeny "AH 17" }
  <\parenthesize d' d''\harmonic>2_\markup { \teeny "AH 19" }
  %pinched harmonics (PH)
  \pinchedHarmonics
  <a'\harmonic>2\startTextSpan
  <d''\harmonic>4
  <e'\harmonic>4\stopTextSpan
  %tapped harmonics (TH)
  <\parenthesize g\4 g'\harmonic>4_\markup { \teeny "TH 17" }
  <\parenthesize a\4 a'\harmonic>4_\markup { \teeny "TH 19" }
  <\parenthesize c'\3 c''\harmonic>2_\markup { \teeny "TH 17" }
  %touch harmonics (TCH)
  a4( <e''\harmonic>2. )_\markup { \teeny "TCH" }
}

frettedStrings = {
  %artificial harmonics (AH)
  \harmonicByFret #4 g4\3
  \harmonicByFret #5 d4\4
  \harmonicByFret #7 g2\3
  %pinched harmonics (PH)
  \harmonicByFret #7 d2\4
  \harmonicByFret #5 d4\4
  \harmonicByFret #7 a4\5
  %tapped harmonics (TH)
  \harmonicByFret #5 d4\4
  \harmonicByFret #7 d4\4
  \harmonicByFret #5 g2\3
  %touch harmonics (TCH)
  a4 \harmonicByFret #9 g2.\3
}

\score {
  <<
    \new Staff
    \with { \omit StringNumber } {
      \new Voice {
        \clef "treble_8"
        \harmonics
      }
    }
    \new TabStaff {
      \new TabVoice {
        \frettedStrings
      }
    }
  >>
}

[image of music]

Slides in tablature

Slides can be typeset in both Staff and TabStaff contexts:

slides = {
  c'8\3(\glissando d'8\3)
  c'8\3\glissando d'8\3
  \hideNotes
  \grace { g16\glissando }
  \unHideNotes
  c'4\3
  \afterGrace d'4\3\glissando {
  \stemDown \hideNotes
  g16 }
  \unHideNotes
}

\score {
  <<
    \new Staff { \clef "treble_8" \slides }
    \new TabStaff { \slides }
  >>
  \layout {
    \context {
      \Score
      \override Glissando.minimum-length = #4
      \override Glissando.springs-and-rods =
                          #ly:spanner::set-spacing-rods
      \override Glissando.thickness = #2
      \omit StringNumber
      % or:
      %\override StringNumber.stencil = ##f
    }
  }
}

[image of music]

Glissando di accordi in intavolatura

I glissati (o slide) di accordi vengono indicati sia nel rigo (contesto Staff) sia nell’intavolatura (contesto TabStaff). I numeri di corda sono necessari per TabStaff, perché i calcoli automatici della corda sono diversi per gli accordi e per le note singole.

myMusic = \relative c' {
  <c e g>1 \glissando <f a c>
}

\score {
  <<
    \new Staff {
      \clef "treble_8"
      \myMusic
    }
    \new TabStaff \myMusic
  >>
}

\score {
  <<
    \new Staff {
      \clef "treble_8"
      \myMusic
    }
    \new TabStaff \with { \override Glissando.style = #'none } {
      \myMusic
    }
  >>
}

[image of music]

Martellato e strappato

Il martellato (hammer on) e lo strappato (pull off) si possono ottenere con le legature di portamento.

\new TabStaff {
  \relative c' {
    d4( e\2)
    a( g)
  }
}

[image of music]

Martellato e strappato usando le voci

L’arco del martellato o dello strappato è rivolto in alto nella prima e terza voce, mentre è rivolto in basso nella seconda e quarta voce.

\new TabStaff {
  \relative c' {
    << { \voiceOne g2( a) }
    \\ { \voiceTwo a,( b) }
    >> \oneVoice
  }
}

[image of music]

Martellato e strappato usando accordi

Quando il martellato o lo strappato si applicano a delle note in un accordo, viene disegnato un solo arco. Ma è possibile avere un “doppio arco” impostando la proprietà doubleSlurs su #t.

\new TabStaff {
  \relative c' {
    % chord hammer-on and pull-off
    \set doubleSlurs = ##t
    <g' b>8( <a c> <g b>)
  }
}

[image of music]

Vedi anche

Guida alla notazione: Ripetizione di un accordo, Glissando, Armonici, Gambi, Ripetizioni ricopiate.

Frammenti: Fretted strings.

Guida al funzionamento interno: TabNoteHead, TabStaff, TabVoice, Beam.

Problemi noti e avvertimenti

Gli accordi non sono gestiti in un modo specifico, dunque il selettore automatico delle corde potrebbe selezionare la stessa corda per due note di un accordo.

Per poter gestire \partCombine, un rigo TabStaff deve usare voci create appositamente:

melodia = \partCombine { e4 g g g } { e4 e e e }
<<
  \new TabStaff <<
    \new TabVoice = "one" s1
    \new TabVoice = "two" s1
    \new TabVoice = "shared" s1
    \new TabVoice = "solo" s1
    { \melodia }
  >>
>>

[image of music]

Gli effetti speciali per chitarra sono limitati ad armonici e slide (glissati).


Intavolature personalizzate

L’intavolatura di LilyPond calcola automaticamente il tasto per una nota in base alla corda a cui è assegnata. Per far ciò, deve essere specificata l’accordatura usando la proprietà stringTunings.

LilyPond ha accordature predefinite per banjo, mandolino, chitarra, basso, ukulele, violino, viola, violoncello e contrabbasso. LilyPond imposta automaticamente la corretta trasposizione per le accordature predefinite. L’esempio seguente è per basso, che suona un’ottava più bassa di come è scritto.

<<
  \new Voice \with {
    \omit StringNumber
  } {
    \clef "bass_8"
    \relative {
      c,4 d e f
    }
  }
  \new TabStaff \with {
    stringTunings = #bass-tuning
  } {
    \relative {
      c,4 d e f
    }
  }
>>

[image of music]

L’accordatura predefinita è guitar-tuning, ovvero l’accordatura standard EADGBE. Altre accordature predefinite sono guitar-open-g-tuning, mandolin-tuning e banjo-open-g-tuning. Tutte le accordature predefinite si trovano in ‘ly/string-tunings-init.ly’.

Si può definire qualsiasi accordatura tramite la funzione \stringTuning, che imposta la proprietà stringTunings per il contesto corrente.

Prende come argomento un accordo che definisce le altezze di ciascuna corda dell’accordatura. Le note dell’accordo sono in modalità di ottava assoluta, vedi Ottava assoluta. La corda col numero più alto (generalmente la corda più grave) deve apparire per prima nell’accordo. Per esempio, possiamo definire un’accordatura per uno strumento a quattro corde con le altezze a'', d'', g' e c':

mynotes = {
  c'4 e' g' c'' |
  e''4 g'' b'' c'''
}

<<
  \new Staff {
    \clef treble
    \mynotes
  }
  \new TabStaff {
    \set Staff.stringTunings = \stringTuning <c' g' d'' a''>
    \mynotes
  }
>>

[image of music]

La proprietà stringTunings viene utilizzata anche da FretBoards per calcolare i diagrammi automatici dei tasti.

Le accordature vengono usate per calcolare i diagrammi dei tasti predefiniti (vedi Diagrammi dei tasti predefiniti).

L’esempio precedente può essere scritto anche così:

custom-tuning = \stringTuning <c' g' d'' a''>

mynotes = {
  c'4 e' g' c'' |
  e''4 g'' b'' c'''
}

<<
  \new Staff {
    \clef treble
    \mynotes
  }
  \new TabStaff {
    \set TabStaff.stringTunings = #custom-tuning
    \mynotes
  }
>>

[image of music]

Internamente un’accordatura è una lista Scheme di altezze, una per ciascuna corda, ordinata da un numero di corda che va da 1 a N, dove la corda 1 è in cima al rigo dell’intavolatura e la corda N è in fondo. Normalmente ciò significa che l’ordine va dall’altezza più alta a quella più bassa, con l’eccezione di alcuni strumenti (come l’ukulele) che non hanno corde ordinate per altezza.

Un’altezza in una lista per accordatura, nella terminologia di LilyPond, è un oggetto altezza, creato dalla funzione Scheme ly:make-pitch (vedi Scheme functions).

\stringTuning crea tale oggetto a partire da un accordo.

LilyPond calcola automaticamente il numero di linee del rigo dell’intavolatura (TabStaff) e il numero di corde in una tastiera (FretBoard) calcolata automaticamente in base al numero di elementi in stringTunings.

Per far sì che tutti i contesti TabStaff usino la stessa accordatura personalizzata, si può usare

\layout {
  \context {
    \TabStaff
    stringTunings = \stringTuning <c' g' d'' a''>
  }
}

Si può usare anche una chiave moderna per l’intavolatura.

\new TabStaff {
  \clef moderntab
  <a, e a>1
  \break
  \clef tab
  <a, e a>1
}

[image of music]

La chiave moderna per l’intavolatura supporta tablature da 4 a 7 corde.

TabStaff supporta i microtoni come i quarti di tono, che possono essere suonati piegando le corde (bending). Occorre impostare supportNonIntegerFret = ##t nel contesto Score. I microtoni tuttavia non sono supportati nel contesto FretBoards.

\layout {
  \context {
    \Score
    supportNonIntegerFret = ##t
  }
}

custom-tuning = \stringTuning <e, a, d ges beh eeh'>

mus = \relative {
  eeses'4
  eeseh
  ees
  eeh
  e
  eih
  eis
  eisih
  eisis
}

<<
  \new Staff << \clef "G_8" \mus >>
  \new TabStaff \with { stringTunings = \custom-tuning } \mus
>>

[image of music]

Vedi anche

Guida alla notazione: Ottava assoluta, Diagrammi dei tasti predefiniti.

File installati: ‘ly/string-tunings-init.ly’, ‘scm/tablature.scm’.

Frammenti: Fretted strings.

Guida al funzionamento interno: Tab_note_heads_engraver, Scheme functions.

Problemi noti e avvertimenti

I calcoli automatici dell’intavolatura non funzionano correttamente nella maggior parte dei casi per strumenti (come l’ukulele) in cui le altezze delle corde non variano in modo uniforme col numero di corda.


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.


Diagrammi dei tasti predefiniti

I diagrammi dei tasti possono essere visualizzati attraverso il contesto FretBoards. Per impostazione predefinita, il contesto FretBoards mostrerà i diagrammi dei tasti salvati in una tabella dati:

\include "predefined-guitar-fretboards.ly"
\new FretBoards {
  \chordmode {
    c1 d
  }
}

[image of music]

I diagrammi dei tasti predefiniti sono contenuti nel file ‘predefined-guitar-fretboards.ly’. Si basano sulle altezze di un accordo e sul valore di stringTunings in uso. ‘predefined-guitar-fretboards.ly’ contiene i diagrammi dei tasti predefiniti solo per l’accordatura standard per chitarra (guitar-tuning). Si possono aggiungere diagrammi predefiniti per altri strumenti o accordature seguendo l’esempio in ‘predefined-guitar-fretboards.ly’.

I diagrammi dei tasti per ukulele sono contenuti nel file ‘predefined-ukulele-fretboards.ly’.

\include "predefined-ukulele-fretboards.ly"

myChords = \chordmode { a1 a:m a:aug }

\new ChordNames {
  \myChords
}

\new FretBoards {
  \set Staff.stringTunings = #ukulele-tuning
  \myChords
}

[image of music]

I diagrammi dei tasti per mandolino sono contenuti nel file
predefined-mandolin-fretboards.ly’.

\include "predefined-mandolin-fretboards.ly"

myChords = \chordmode { c1 c:m7.5- c:aug }

\new ChordNames {
  \myChords
}

\new FretBoards {
  \set Staff.stringTunings = #mandolin-tuning
  \myChords
}

[image of music]

Le altezze degli accordi possono essere inserite sia come musica simultanea sia usando la modalità per accordi (vedi Panoramica sulla modalità accordo).

\include "predefined-guitar-fretboards.ly"
\new FretBoards {
  \chordmode { c1 }
  <c' e' g'>1
}

[image of music]

Di solito i nomi degli accordi e i diagrammi dei tasti appaiono insieme. Per farlo si pone un contesto ChordNames in parallelo con un contesto FretBoards assegnando a entrambi la stessa musica.

\include "predefined-guitar-fretboards.ly"
mychords = \chordmode {
  c1 f g
}

<<
  \new ChordNames {
    \mychords
  }
  \new FretBoards {
    \mychords
  }
>>

[image of music]

I diagrammi dei tasti predefiniti possono essere trasposti, purché un diagramma per l’accordo trasposto sia salvato nella tabella del diagramma.

\include "predefined-guitar-fretboards.ly"
mychords = \chordmode {
  c1 f g
}

mychordlist = {
  \mychords
  \transpose c e { \mychords }
}
<<
  \new ChordNames {
    \mychordlist
  }
  \new FretBoards {
    \mychordlist
  }
>>

[image of music]

La tabella dei diagrammi dei tasti predefiniti per chitarra contiene otto accordi (maggiore, minore, aumentato, diminuito, settima dominante, settima maggiore, settima minore, nona dominante) per ognuna delle 17 tonalità.

La tabella dei diagrammi dei tasti per ukulele contiene questi accordi più ulteriori tre accordi (sesta maggiore, seconda sospesa e quarta sospesa). Un elenco completo dei diagrammi dei tasti predefiniti si trova in Diagrammi degli accordi predefiniti. Se nella tabella non esiste una voce per un accordo, l’incisore FretBoards calcolerà un diagramma usando la funzionalità automatica descritta in Diagrammi dei tasti automatici.

\include "predefined-guitar-fretboards.ly"
mychords = \chordmode{
  c1 c:maj9
}

<<
  \new ChordNames {
    \mychords
  }
  \new FretBoards {
    \mychords
  }
>>

[image of music]

Si possono aggiungere diagrammi dei tasti alla tabella. Basta specificare la tabella del diagramma, l’accordo, l’accordatura e una definizione del diagramma. Di solito la tabella di riferimento sarà default-fret-table. La definizione di diagramma può essere una stringa di fret-diagram-terse o un elenco di fret-diagram-verbose.

\include "predefined-guitar-fretboards.ly"

\storePredefinedDiagram #default-fret-table
                        \chordmode { c:maj9 }
                        #guitar-tuning
                        "x;3-2;o;o;o;o;"

mychords = \chordmode {
  c1 c:maj9
}

<<
  \new ChordNames {
    \mychords
  }
  \new FretBoards {
    \mychords
  }
>>

[image of music]

Diagrammi diversi per accordi con lo stesso nome possono essere salvati usando un’altezza con unn’ottava diversa. L’ottava diversa deve essere almeno due ottave sopra o sotto l’ottava predefinita, perché le ottave sopra e sotto sono usate per trasporre le tastiere.

\include "predefined-guitar-fretboards.ly"

\storePredefinedDiagram #default-fret-table
                        \chordmode { c'' }
                        #guitar-tuning
                        #(offset-fret 2 (chord-shape 'bes guitar-tuning))

mychords = \chordmode {
  c1 c''
}

<<
  \new ChordNames {
    \mychords
  }
  \new FretBoards {
    \mychords
  }
>>

[image of music]

Oltre ai diagrammi dei tasti, LilyPond contiene un elenco interno di forme di accordo. Queste forme sono diagrammi dei tasti che possono essere spostati lungo il manico in diverse posizioni per fornire diversi accordi. Si possono aggiungere nuove forme di accordo all’elenco interno e poi usarle per definire diagrammi dei tasti predefiniti. Dato che possono essere spostate in varie posizioni sul manico, le forme di un accordo normalmente non contengono corde a vuoto. Come per i diagrammi dei tasti, le forme possono essere inserite come stringhe di fret-diagram-terse o come elenchi di fret-diagram-verbose.

\include "predefined-guitar-fretboards.ly"

% Add a new chord shape

\addChordShape #'powerf #guitar-tuning "1-1;3-3;3-4;x;x;x;"

% add some new chords based on the power chord shape

\storePredefinedDiagram #default-fret-table
                        \chordmode { f'' }
                        #guitar-tuning
                        #(chord-shape 'powerf guitar-tuning)
\storePredefinedDiagram #default-fret-table
                        \chordmode { g'' }
                        #guitar-tuning
                        #(offset-fret 2 (chord-shape 'powerf guitar-tuning))

mychords = \chordmode {
  f1 f'' g g''
}

<<
  \new ChordNames {
    \mychords
  }
  \new FretBoards {
    \mychords
  }
>>

[image of music]

L’aspetto grafico di un diagramma dei tasti può essere personalizzato in base alle proprie preferenze attraverso le proprietà dell’interfaccia fret-diagram-interface. I dettagli si trovano in fret-diagram-interface. Per un diagramma dei tasti predefinito, le proprietà dell’interfaccia appartengono a FretBoards.FretBoard.

Frammenti di codice selezionati

Personalizzare la tastiera del diagramma dei tasti

Le proprietà del diagramma dei tasti possono essere impostate tramite 'fret-diagram-details. Per i diagrammi dell’oggetto FretBoard, gli override vengono applicati all’oggetto FretBoards.FretBoard. Come Voice, FretBoards è un contesto di basso livello, dunque può essere omesso negli override delle proprietà.

\include "predefined-guitar-fretboards.ly"
\storePredefinedDiagram #default-fret-table \chordmode { c' }
                        #guitar-tuning
                        #"x;1-1-(;3-2;3-3;3-4;1-1-);"

% shorthand
oo = #(define-music-function
       (grob-path value)
       (list? scheme?)
       #{ \once \override $grob-path = #value #})

<<
  \new ChordNames {
    \chordmode { c1 | c | c | d }
  }
  \new FretBoards {
    % Set global properties of fret diagram
    \override FretBoards.FretBoard.size = #'1.2
    \override FretBoard.fret-diagram-details.finger-code = #'in-dot
    \override FretBoard.fret-diagram-details.dot-color = #'white
    \chordmode {
      c
      \oo FretBoard.size #'1.0
      \oo FretBoard.fret-diagram-details.barre-type #'straight
      \oo FretBoard.fret-diagram-details.dot-color #'black
      \oo FretBoard.fret-diagram-details.finger-code #'below-string
      c'
      \oo FretBoard.fret-diagram-details.barre-type #'none
      \oo FretBoard.fret-diagram-details.number-type #'arabic
      \oo FretBoard.fret-diagram-details.orientation #'landscape
      \oo FretBoard.fret-diagram-details.mute-string #"M"
      \oo FretBoard.fret-diagram-details.label-dir #LEFT
      \oo FretBoard.fret-diagram-details.dot-color #'black
      c'
      \oo FretBoard.fret-diagram-details.finger-code #'below-string
      \oo FretBoard.fret-diagram-details.dot-radius #0.35
      \oo FretBoard.fret-diagram-details.dot-position #0.5
      \oo FretBoard.fret-diagram-details.fret-count #3
      d
    }
  }
  \new Voice {
    c'1 | c' | c' | d'
  }
>>

[image of music]

Definire diagrammi dei tasti predefiniti per altri strumenti

Si possono aggiungere diagrammi dei tasti predefiniti per nuovi strumenti oltre a quelli standard per chitarra. Questo frammento mostra come farlo definendo una nuova accordatura e alcuni diagrammi predefiniti per il quatro venezuelano.

Mostra anche come includere le diteggiature negli accordi usati come punti di riferimento per la consultazione degli accordi e come mostrarle nel diagramma dei tasti e in TabStaff, ma non nella musica.

Questi diagrammi non sono trasponibili perché contengono informazioni sulle corde. È prevista una correzione in futuro.

% add FretBoards for the Cuatro
%   Note: This section could be put into a separate file
%      predefined-cuatro-fretboards.ly
%      and \included into each of your compositions

cuatroTuning = #`(,(ly:make-pitch 0 6 0)
                  ,(ly:make-pitch 1 3 SHARP)
		  ,(ly:make-pitch 1 1 0)
		  ,(ly:make-pitch 0 5 0))

dSix = { <a\4 b\1 d\3 fis\2> }
dMajor = { <a\4 d\1 d\3 fis \2> }
aMajSeven = { <a\4 cis\1 e\3 g\2> }
dMajSeven = { <a\4 c\1 d\3 fis\2> }
gMajor = { <b\4 b\1 d\3 g\2> }

\storePredefinedDiagram #default-fret-table \dSix
                        #cuatroTuning
                        #"o;o;o;o;"
\storePredefinedDiagram #default-fret-table \dMajor
                        #cuatroTuning
                        #"o;o;o;3-3;"
\storePredefinedDiagram #default-fret-table \aMajSeven
                        #cuatroTuning
                        #"o;2-2;1-1;2-3;"
\storePredefinedDiagram #default-fret-table \dMajSeven
                        #cuatroTuning
                        #"o;o;o;1-1;"
\storePredefinedDiagram #default-fret-table \gMajor
                        #cuatroTuning
                        #"2-2;o;1-1;o;"

% end of potential include file /predefined-cuatro-fretboards.ly


#(set-global-staff-size 16)

primerosNames = \chordmode {
  d:6 d a:maj7 d:maj7
  g
}
primeros = {
  \dSix \dMajor \aMajSeven \dMajSeven
  \gMajor
}

\score {
  <<
    \new ChordNames {
      \set chordChanges = ##t
      \primerosNames
    }

    \new Staff {
      \new Voice \with {
        \remove "New_fingering_engraver"
      }
      \relative c'' {
        \primeros
      }
    }

    \new FretBoards {
      \set Staff.stringTunings = #cuatroTuning
%      \override FretBoard
%        #'(fret-diagram-details string-count) = 4
      \override FretBoard.fret-diagram-details.finger-code = #'in-dot
      \primeros
    }

    \new TabStaff \relative c'' {
      \set TabStaff.stringTunings = #cuatroTuning
      \primeros
    }

  >>

  \layout {
    \context {
      \Score
      \override SpacingSpanner.base-shortest-duration =
        #(ly:make-moment 1 16)
    }
  }
  \midi { }
}

[image of music]

Cambi di accordo nei diagrammi dei tasti

Si può impostare il contesto FretBoards in modo che mostri il diagramma solo quando l’accordo cambia o all’inizio di una nuova linea.

\include "predefined-guitar-fretboards.ly"

myChords = \chordmode {
  c1 c1 \break
  \set chordChanges = ##t
  c1 c1 \break
  c1 c1
}

<<
  \new ChordNames { \myChords }
  \new FretBoards { \myChords }
  \new Staff { \myChords }
>>

[image of music]

Tabelle alternative per i diagrammi dei tasti

Si possono creare tabelle alternative per i diagrammi dei tasti. Queste possono essere usate per avere diagrammi alternativi per uno stesso accordo.

Per poter usare una tabella alternativa, deve prima essere creata. Quindi si aggiungono i diagrammi alla tabella.

La tabella può essere vuota oppure ricopiata da una tabella esistente.

La tabella da usare nel mostrare i diagrammi predefiniti viene selezionata dalla proprietà \predefinedDiagramTable.

\include "predefined-guitar-fretboards.ly"

% Make a blank new fretboard table
#(define custom-fretboard-table-one
   (make-fretboard-table))

% Make a new fretboard table as a copy of default-fret-table
#(define custom-fretboard-table-two
   (make-fretboard-table default-fret-table))

% Add a chord to custom-fretboard-table-one
\storePredefinedDiagram #custom-fretboard-table-one
                        \chordmode {c}
                        #guitar-tuning
                        "3-(;3;5;5;5;3-);"

% Add a chord to custom-fretboard-table-two
\storePredefinedDiagram #custom-fretboard-table-two
                        \chordmode {c}
                        #guitar-tuning
                        "x;3;5;5;5;o;"

<<
  \chords {
    c1 | d1 |
    c1 | d1 |
    c1 | d1 |
  }
  \new FretBoards {
    \chordmode {
      \set predefinedDiagramTable = #default-fret-table
      c1 | d1 |
      \set predefinedDiagramTable = #custom-fretboard-table-one
      c1 | d1 |
      \set predefinedDiagramTable = #custom-fretboard-table-two
      c1 | d1 |
    }
  }
  \new Staff {
    \clef "treble_8"
    <<
      \chordmode {
        c1 | d1 |
        c1 | d1 |
        c1 | d1 |
      }
      {
        s1_\markup "Default table" | s1 |
        s1_\markup \column {"New table" "from empty"} | s1 |
        s1_\markup \column {"New table" "from default"} | s1 |
      }
    >>
  }
>>

[image of music]

Vedi anche

Guida alla notazione: Intavolature personalizzate, Diagrammi dei tasti automatici, Panoramica sulla modalità accordo, Diagrammi degli accordi predefiniti.

File installati: ‘ly/predefined-guitar-fretboards.ly’,
ly/predefined-guitar-ninth-fretboards.ly’,
ly/predefined-ukulele-fretboards.ly’,
ly/predefined-mandolin-fretboards.ly’.

Frammenti: Fretted strings.

Guida al funzionamento interno: fret-diagram-interface.


Diagrammi dei tasti automatici

I diagrammi dei tasti possono essere creati automaticamente dalle note inserite usando il contesto FretBoards. Se non è disponibile un diagramma predefinito per le note inserite nell’accordatura (stringTunings) attiva, questo contesto calcola le corde e i tasti che possono essere usati per suonare le note.

<<
  \new ChordNames {
    \chordmode {
      f1 g
    }
  }
  \new FretBoards {
    <f, c f a c' f'>1
    <g,\6 b, d g b g'>1
  }
  \new Staff {
    \clef "treble_8"
    <f, c f a c' f'>1
    <g, b, d g b' g'>1
  }
>>

[image of music]

Dato che nessun diagramma predefinito viene caricato senza impostarlo esplicitamente, il calcolo automatico dei diagrammi è il comportamento predefinito. Quando i diagrammi predefiniti vengono caricati, il calcolo automatico può essere abilitato e disabilitato con dei comandi predefiniti:

\storePredefinedDiagram #default-fret-table
                        <c e g c' e'>
                        #guitar-tuning
                        "x;3-1-(;5-2;5-3;5-4;3-1-1-);"
<<
  \new ChordNames {
    \chordmode {
      c1 c c
    }
  }
  \new FretBoards {
    <c e g c' e'>1
    \predefinedFretboardsOff
    <c e g c' e'>1
    \predefinedFretboardsOn
    <c e g c' e'>1
  }
  \new Staff {
    \clef "treble_8"
    <c e g c' e'>1
    <c e g c' e'>1
    <c e g c' e'>1
  }
>>

[image of music]

Talvolta il calcolatore dei diagrammi non sarà in grado di trovare un diagramma accettabile. Di solito il rimedio consiste nell’assegnare manualmente una nota a una corda. In molti casi, solo una nota deve essere posta esplicitamente su una corda; tutte le altre note verranno posizionate correttamente dal contesto FretBoards.

Si possono aggiungere le diteggiture ai diagrammi dei tasti dell’oggetto FretBoard.

<<
  \new ChordNames {
    \chordmode {
      c1 d:m
    }
  }
  \new FretBoards {
    <c-3 e-2 g c'-1 e'>1
    <d a-2 d'-3 f'-1>1
  }
  \new Staff {
    \clef "treble_8"
    <c e g c' e'>1
    <d a d' f'>1
  }
>>

[image of music]

Il tasto minimo da usare per calcolare le corde e i tasti per il contesto FretBoard si può impostare con la proprietà minimumFret.

<<
  \new ChordNames {
    \chordmode {
      d1:m d:m
    }
  }
  \new FretBoards {
    <d a d' f'>1
    \set FretBoards.minimumFret = #5
    <d a d' f'>1
  }
  \new Staff {
    \clef "treble_8"
    <d a d' f'>1
    <d a d' f'>1
  }
>>

[image of music]

Le corde e i tasti per il contesto FretBoards dipendono dalla proprietà stringTunings, che funziona proprio come nel contesto TabStaff. Si rimanda a Intavolature personalizzate per informazioni sulla proprietà stringTunings.

L’aspetto grafico di un diagramma dei tasti può essere personalizzato secondo le proprie preferenze tramite le proprietà dell’interfaccia fret-diagram-interface. I dettagli si trovano in fret-diagram-interface. Per un diagramma dei tasti del contesto FretBoards, le proprietà dell’interfaccia appartengono a FretBoards.FretBoard.

Comandi predefiniti

\predefinedFretboardsOff, \predefinedFretboardsOn.

Vedi anche

Guida alla notazione: Intavolature personalizzate.

Frammenti: Fretted strings.

Guida al funzionamento interno: fret-diagram-interface.

Problemi noti e avvertimenti

I calcoli automatici dei tasti non funzionano correttamente per gli strumenti con accordature non monotoniche.


Diteggiature della mano destra

Le diteggiature della mano destra p-i-m-a si inseriscono col comando \rightHandFinger seguito da un numero.

Nota: Se si inserisce il numero in notazione Scheme, ricordarsi di aggiungere uno spazio prima del > di chiusura o simili.

\clef "treble_8"
c4\rightHandFinger #1
e\rightHandFinger #2
g\rightHandFinger #3
c'\rightHandFinger #4
<c\rightHandFinger #1 e\rightHandFinger #2
 g\rightHandFinger #3 c'\rightHandFinger #4 >1

[image of music]

Per comodità, si può abbreviare \rightHandFinger in un comando più breve, per esempio RH, aggiungendo la definizione nel livello più alto del file sorgente:

RH = \rightHandFinger \etc

La maggior parte dei comportamenti delle diteggiature della mano destra (oggetto StrokeFinger) si impostano nello stesso modo delle normali diteggiature: vedi Indicazioni di diteggiatura.

Frammenti di codice selezionati

Posizionamento delle diteggiature della mano destra

È possibile avere un maggior controllo sul posizionamento delle diteggiature della mano destra impostando una specifica proprietà, come illustrato nell’esempio seguente.

#(define RH rightHandFinger)

\relative c {
  \clef "treble_8"

  \set strokeFingerOrientations = #'(up down)
  <c\RH #1 e\RH #2 g\RH #3 c\RH #4 >4

  \set strokeFingerOrientations = #'(up right down)
  <c\RH #1 e\RH #2 g\RH #3 c\RH #4 >4

  \set strokeFingerOrientations = #'(left)
  <c\RH #1 e\RH #2 g\RH #3 c\RH #4 >2

  \set strokeFingerOrientations = #'(right)
  c\RH #1
}

[image of music]

Diteggiature, indicazioni di corda e diteggiature della mano destra

Questo esempio combina la diteggiatura per la mano sinistra, le indicazioni di stringa e la diteggiatura della mano destra.

#(define RH rightHandFinger)

\relative c {
  \clef "treble_8"
  <c-3\5\RH #1 >4
  <e-2\4\RH #2 >4
  <g-0\3\RH #3 >4
  <c-1\2\RH #4 >4
}

[image of music]

Vedi anche

Guida alla notazione: Indicazioni di diteggiatura.

Frammenti: Fretted strings.

Guida al funzionamento interno: StrokeFinger.


LilyPond — Guida alla Notazione v2.23.82 (ramo di sviluppo).