2.4.1 Notació comuna per a cordes amb trasts

Aquesta secció s’ocupa de la notació comuna exclusiva dels instruments de corda amb trasts.


Referències per a cordes amb trasts

La notació musical per a instruments de corda amb trasts es realitza normalment a una sola pauta, ja sigui en notació musical tradicional o en tabulatura. A vegades es combinen ambdós tipus, i és habitual a la música popular utilitzar diagrames d’acords a sobre d’un pentagrama de notació tradicional. La guitarra i el banjo són instruments transpositors, que sonen una octava per sota del que està escrit. Les partitures per a aquests instruments han d’usar la clau de Sol octava baixa "treble_8" (o \transposition c per obtenir una sortida MIDI correcta). D’altres elements relatius als instruments de corda amb trasts s’estudien a d’altres parts del manual:

Vegeu també

Referència de la notació: Indicacions de digitació, Lligadures d’unió, Resolució de les col·lisions, Noms d’instruments, Escriptura de música en paral·lel, Arpegi, Llista d’articulacions, Clau, Transposició dels instruments.


Indicació dels números de corda

Es pot indicar la corda en la qual s’ha de tocar una nota afegint \ número a una nota.

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

[image of music]

Quan s’usen al mateix temps digitacions i indicacions del número de corda, la seva col·locació es pot controlar per l’ordre en el qual apareixen aquests elements al codi sols si apareixen dins d’un acord explícit: aplicat a acords complets o notes individuals fora d’acords, les digitacions es col·loquen usant un mecanisme diferent.

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

[image of music]

Els números de corda (així com als instruments sense trasts, on és obligatori) també es poden imprimir en nombres romans i col·locar-se a sota del pentagrama, en comptes de a sobre d’ell.

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

[image of music]

Fragments de codi seleccionats

Controlar la col·locación de les digitacions d’acords

Es pot controlar amb precisió la col·locació dels números de digitació. Perquè es tingui en compte l’orientació de les digitacions, es pot utilitzar una construcció d’acord <> tot i que siguin una sola nota.

\relative c' {
  \set fingeringOrientations = #'(left)
  <c-1 e-3 a-5>4
  \set fingeringOrientations = #'(down)
  <c-1 e-3 a-5>4
  \set fingeringOrientations = #'(down right up)
  <c-1 e-3 a-5>4
  \set fingeringOrientations = #'(up)
  <c-1 e-3 a-5>4
  \set fingeringOrientations = #'(left)
  <c-1>2
  \set fingeringOrientations = #'(down)
  <e-3>2
  \set stringNumberOrientations = #'(up left down)
  <f\3 a\2 c\1>1
  \set strokeFingerOrientations = #'(down right up)
  <c\rightHandFinger #1 e\rightHandFinger #2 c'\rightHandFinger #4 >
}

[image of music]

Permetre que les digitacions s’imprimeixen del pentagrama

Les xifres de digitació orientades verticalment es col·loquen de forma predeterminada fora del pentagrama. Malgrat això, aquest comportament es pot desactivar. Nota: s’ha d’usar una construcció d’acord <>, tot i que sigui una sola nota.

\relative c' {
  <c-1 e-2 g-3 b-5>2
  \override Fingering.staff-padding = #'()
  <c-1 e-2 g-3 b-5>4 g'-0
  a8[-1 b]-2 g-0 r
  \override Fingering.add-stem-support = ##f
  a[-1 b]-2 g-0 r
  \override Fingering.add-stem-support = ##t
  a[-1 b]-2 g-0 r
  \override Fingering.add-stem-support = #only-if-beamed
  a[-1 b]-2 g-0 r
}

[image of music]

Instruccions predefinides

\arabicStringNumbers, \romanStringNumbers.

Vegeu també

Referència de la notació: Indicacions de digitació.

Fragments de codi: Fretted strings.

Referència de funcionament intern: StringNumber, Fingering.


Tabulatures predeterminades

La notació per a instruments de corda polsada es realitza sovint utilitzant un sistema de dits i xifres, o tabulatura. A diferència de la notació tradicional, les notes no es designen mitjanant figures, sinó mitjanant números (o símbols semblants a lletres de la intavolatura històrica). Les línies de la tabulatura indiquen sobre quina corda s’ha de tocar la nota, i el número sobre la línia indica el trast en la quan la corda corresponent s’ha de trepitjar. Les notes que s’han de tocar simultàniament s’alineen en sentit vertical.

De forma predeterminada, la corda 1 és la més aguda i correspon a la línia superior de la pauta TabStaff. La afinació predeterminada de les cordes del TabStaff és l’afinació estàndard de guitarra (amb 6 cordes). Les notes s’imprimeixen com a tabulatura, usant els contextos TabStaff i TabVoice. S’afegeix automàticament una clau cal·ligràfica de tabulatura.

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

[image of music]

Les tabulatures predeterminades no contenen símbols per a la duració de les notes ni cap altre símbol musical, com ara indicacions expressives.

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]

Si volem que tots els símbols musicals que s’usen a la notació tradicional apareguin també a la tabulatura, hem d’aplicar l’ordre \tabFullNotation dins d’un context contexto TabStaff. Teniu en compte que, a la tabulatura, les blanques tenen doble plica per poder distingir-les de les negres.

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]

De forma predeterminada, les notes s’assignen a la posició més baixa del mànec (primera posició). Les cordes a l’aire s’agafen com a preferència, automàticament. Si volem que una nota determinada es toqui sobre una corda concreta, podem afegir una indicació de número de corda al nom de la nota. Si no volem que les indicacions de número de corda apareguin a la notació tradicional, podem sobreescriure el segell corresponent. Generalment és molt més còmode definir una posició utilitzant el valor de minimumFret. El valor predeterminat és 0.

Fins is tot si minimumFret està establert, s’usen les cordes a l’aire sempre que sigui possible. Aquest comportament es pot canviar fixant restrainOpenStrings al valor #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]

Les construccions d’acord es pot repetir mitjançant el símbol de repetició d’acords q. En combinació amb les tabulatures, el seu comportament d’eliminar números de corda i de dits junt a d’altres esdeveniments és fastigós, per la qual cosa potser voleu executar

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

explícitament sobre expressions musicals en les tabulatures que utilitzin Repetició d’acords. Aquesta ordre particular és tan comuna que estigui disponible com particular es tan comuna que estigui disponible \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]

Les lligadures d’unió que creuen salts de línia porten parèntesis de forma predeterminada. EL mateix regeix per a la capseta de segona vegada d’una repetició.

ties = \relative {
  \repeat volta 2 {
    e'2. f4~
    2 g2~
  }
  \alternative {
     { g4 f2. }
     { 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]

L’ordre \hideSplitTiedTabNotes cancel·la el comportament de gravar els números de trast entre parèntesis:

ties = \relative {
  \repeat volta 2 {
    e'2. f4~
    2 g2~ }
  \alternative {
    { g4 f2. }
    { 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]

Es poden afegir indicacions d’harmònics a la notació de tabulatura en forma de les seves alçades de so:

\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]

Observeu que l’ordre \harmonic s’ha d’adjuntar sempre a notes individuals (possiblement dins d’un acord) en lloc d’adjuntar-la a acords complets. Sols té sentit per a harmònics sobre una corda oberta al dotzè trast. Qualsevol altre harmònic ha de ser calculat per par del LilyPond. Es pot aconseguir això indicant el trast al qual ha de fregar la corda el dit de la ma que trepitja.

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]

De forma alternativa, es poden calcular els harmònics definint la raó de les longituds de corda per sobre i per sota de la digitació d’harmònic.

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]

Fragments de codi seleccionats

Comportament de les pliques i les barres de corxera en tabulatures

La direcció de les pliques es controla de la mateixa forma a la tabulatura que en la notació tradicional. Les barres es poden posar horitzontals, com es mostra en aquest exemple.

\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 en tabulatures

La polifonia es crea de la mateixa forma en un TabStaff que en una pauta normal.

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]

Referència per a armònics sobre cordes a l’aire

Referència per a armònics sobre cordes a l’aire (armònics naturals):

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]

Harmònics sobre cordes pisades en tabulatura

Harmònics sobre cordes trepitjades (harmònics artificials):

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]

Lliscats en tabulatura

Els lliscats es poden gravar tant als contextos de Staff como en los de TabStaff:

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 d’acords en tabulatura

Els lliscaments per a acords s’indiquen per omissió tant al context Staff com a TabStaff. Els nombres de corda són necessaris per a TabStaff perquè els càlculs de corda automàtics són diferents per als acords i per a les notes soltes.

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]

Hammer on and pull off

Hammer-on and pull-off can be obtained using slurs.

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

[image of music]

Hammer on and pull off using voices

The arc of hammer-on and pull-off is upwards in voices one and three and downwards in voices two and four:

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

[image of music]

Hammer on and pull off using chords

When using hammer-on or pull-off with chorded notes, only a single arc is drawn. However “double arcs” are possible by setting the doubleSlurs property to #t.

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

[image of music]

Vegeu també

Referencia de la notació: Repetició d’acords, Repeticions explícites, Pliques, Harmònics, Glissando.

Fragments de codi: Fretted strings.

Referència de funcionament intern: TabNoteHead, TabStaff, TabVoice, Beam.

Advertiments i problemes coneguts

Els acords no es tracten d’una manera especial, i d’aquí que el selector automàtic de la corda pot escollir fàcilment la mateixa corda per a dues notes de l’acord.

Per utilitzar \partCombine, cal que TabStaff faci servir veus especialment creades:

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]

els efectes especials de guitarra es limiten a harmònics i arrosegaments.


Tabulatures personalitzades

La tabulatura al LilyPond calcula automàticament el trast per a cada nota, basant-se en la corda a la qual està assignada la nota. Per fer-lo, cal especificar l’afinació de les cordes. L’afinació de les cordes es dóna a la propietat stringTunings.

El LilyPond porta afinacions predefinides per al banjo, la mandolina, la guitarra, el baix, l’ukelele, el violí, la viola, el violoncel i el contrabaix. El LilyPond estableix automàticament la transposició correcxta per a les afinacions predefinides. L’exemple següent és per a banjo, que sona una octava per sota del que està escrit.

<<
  \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’afinació per defecte és guitar-tuning (l’afinació estàndard Mi-La-Re-Sol-Si-Mi). D’altres afinacions predefinides són guitar-open-g-tuning (Sol Major a l’aire, Re-Sol-Re-Sol-Si-Re), mandolin-tuning (mandolina) i banjo-open-g-tuning (banjo amb Sol Major a l’aire). Les afinacions predefinides estan a ‘ly/string-tunings-init.ly’.

És possible crear qualsevol afinació de cordes que es desitgi. Es pot usar la funció \stringTuning per definir una afinació de cordes i que pot usar-se per establir-la com el valor de stringTunings per al context actual.

El seu argument és una construcció d’acord que defineix l’alçada de les notes de cada corda a l’aire a aquesta afinació. La construcció d’acord ha d’estar en el mode d’octava absolut, vegeu Escriptura d’octava absoluta. La corda amb el número més alt (generalment la més greu) ha d’anar primer a l’acord. Per exemple, podem definir una afinació per a un instrument de quatre cordes amb les alçades a'', d'', g' i 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 propietat stringTunings també s’utilitza per part de FretBoards per calcular els diagrames de posició automàtics.

Les afinacions de cordes s’utilitzen com a part de la clau d’associació per als diagrames de posició predefinits (vegeu Diagrames predefinits de trasts).

L’exemple anterior també es podria haver escrit com segueix:

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]

Internament, una afinació de les cordes és una llista de l’Scheme d’alçades, una per a cada corda, ordenades d’1 a N, on la corda 1 està a dalt a la pauta de tabulatura i la corda N està a sota. Això resulta generalment en un ordre de la nota més aguda a la més greu, però alguns instruments (per exemple l’ukelele) no tenen les cordes disposades en ordre d’alçada.

L’alçada d’una corda dins d’una llista d’alçades de cordes d’un és un objecte alçada del LilyPond. Els objectes alçada es creen amb la funció de l’Scheme ly:make-pitch (vegeu Funcions de l'Scheme).

\stringTuning crea aquest objecte a partir de l’entrada d’acords.

El LilyPond calcula automàticament el nombre de línies dins del TabStaff i el nombre de cordes dins d’un FretBoard calculat automàticament amb el nombre d’elements de stringTunings.

Per permetre a tots els contextos TabStaff usar la mateixa afinació personalitzada per defecte, podem usar

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

També es pot usar una clau moderna de tabulatura.

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

[image of music]

La clau moderna de tabulatura permet tabulatures de 4 a 7 cordes.

Una pauta de tabulatura TabStaff pot contenir intervals microtonals com quarts de to, que es poden reproduir mitjançant esdeveniments de la roda de canvi de to. Cal establir el valor supportNonIntegerFret = ##t dins del context Score. Tanmateix, no es permeten microtons als diagrames 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]

Vegeu també

Referència de la notació: Escriptura d’octava absoluta, Diagrames predefinits de trasts.

Fitxers instal·lats: ‘ly/string-tunings-init.ly’, ‘scm/tablature.scm’.

Fragments de codi: Fretted strings.

Referència de funcionament intern: Funcions de l'Scheme, Tab_note_heads_engraver.

Advertiments i problemes coneguts

Els càlculs de tabulatura automàtics no funcionen bé a la major part dels casos per a instruments en els quals l’afinació de les cordes no varia de forma monòtona amb el número de corda, com ara l’ukelele.


Marcatges de diagrames de trasts

Es poden afegir diagrames de trasts a la música com elements de marcatge sobre la nota desitjada. El marcatge conté informació sobre el diagrama de trasts desitjat. Hi ha tres interfícies diferents de marcatge de diagrames de trasts: standard (estàndard), terse (concís) i verbose (detallat). Les tres interfícies produeixen marcatges equivalents, però tenen quantitats variables d’informació a la cadena de marcatge. Hi ha més detalls sobre la sintaxi de les diverses cadenes de marcatge que s’usen per definir diagrames de posicions a l’annex Instrument Specific Markup.

La cadena de marcatge dels diagrames estàndard de trasts indica el número de la corda i el número de trast en el qual es col·loca cadascú dels punts sobre la corda. A més es pot indicar cordes a l’aire i cordes mudes (que no es toquen).

<<
  \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]

Les indicacions de celleta es poden afegir al diagrama a partir de la cadena de marcatge del diagrama de trasts.

<<
  \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]

Es poden canviar la mida del diagrama de trasts i el nombre de trasts del diagrama a la cadena de marcatge fret-diagram.

<<
  \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]

Es pot canviar el nombre de cordes d’un diagrama de trasts perquè s’adapti a diferents instruments com el baix i l’ukelele, amb la cadena de marcatge del diagrama.

<<
  \new ChordNames {
    \chordmode {
      a1
    }
  }
  \new Staff {
    % Un acord «La» per a l'ukelele
    a'1^\markup {
      \fret-diagram "w:4;4-2-2;3-1-1;2-o;1-o;"
    }
  }
>>

[image of music]

Es poden afegir indicacions de digitació, i la posició de les etiquetes dels dits es poden controlar mitjançant la cadena de marcatge del diagrama.

<<
  \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]

Es pot controlar el radi i la posició dels punts amb la cadena de marcatge fret-diagram.

<<
  \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]

La cadena de marcatge de diagrama de trasts concisa fret-diagram-terse omet els números de la corda; el número de corda ve implícit per la presència del punt i coma. Hi ha un punt i coma per cada corda del diagrama. El primer punt i coma correspon al número de corda més alt, i l’últim punt i coma correspon a la primera corda. Es poden indicar cordes mudes, a l’aire i números de trast.

<<
  \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]

Es poden incloure números de celleta a la cadena de marcatge concisa fret-diagram-terse.

<<
  \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]

Es poden incloure indicacions de digitació a la cadena de marcatge concisa fret-diagram-terse.

<<
  \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]

Per ajustar altres propietats dels diagrames de trasts s’ha d’utilitzar \override en utilitzar el marcatge concís amb fret-diagram-terse.

La cadena marcatge detallat fret-diagram-verbose està en el format d’una llista de l’Scheme. Cada element de la llista indica la col·locació d’un element sobre el diagrama de trasts.

<<
    \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]

Es poden incloure digitacions i celletes a una cadena de marcatge detallat fret-diagram-verbose. És exclusiva de la interfície de fret-diagram-verbose la indicació ‘capo’ que es pot col·locar sobre el diagrama de posició. La indicació de capo és una barra gruixuda que cobreix totes les cordes. El trast de que té el capo és el més baix del diagrama de posició.

Els punts que indiquen les digitacions es poden tant acolorir com imprimir entre parèntesis; a més a més, és possible alterar independentment el color dels parèntesis.

També es poden inserir elements de marcatge dins dels punts.

<<
    \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]

Totes les altres propietats de diagrama de trasts s’han d’ajustar utilitzant \override quan s’usa el marcatge detallat amb fret-diagram-verbose.

L’aspecte gràfic d’un diagrama de trasts es pot personalitzar segons les preferències de l’usuari a través de les propietats de la interfície fret-diagram-interface. Els detalls estan a fret-diagram-interface. Per a un marcatge de diagrama de trasts, les propietats de la interfície pertanyen a Voice.TextScript.

Fragments de codi seleccionats

Modificar l’orientació dels trastos

Els diagrames de posicions d’acords es poden orientar de tres formes. De manera predeterminada, s’alinea la corda o trast superior en les diferents alineacions.

\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]

Personalitzar diagrames de posicions de marcatge

Es poden establir les propietats dels diagrames de posicions a través de 'fret-diagram-details. Per als diagrames de posicions de marcatge, es poden aplicar overrides (sobreescriptures) a l’objecte Voice.TextScript o directament a l’element de marcatge.

<<
  \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]

Vegeu també

Referència de la notació: Instrument Specific Markup.

Fragments de codi: Fretted strings.

Referència de funcionament intern: fret-diagram-interface.


Diagrames predefinits de trasts

Es poden imprimir els diagrames de trasts usant el context FretBoards. De forma predeterminada, el context FretBoards grava diagrames de trasts que estan emmagatzemats a una taula de cerca:

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

[image of music]

Els diagrames de trast predefinits estan al fitxer ‘predefined-guitar-fretboards.ly’. Els diagrames de trasts s’emmagatzemen agafant com a base les notes d’un acord i el valor de stringTunings que s’està utilitzant en cada moment. ‘predefined-guitar-fretboards.ly’ conté diagrames de trast predefinits sols per a guitar-tuning. Els diagrames de trast predefinits es poden afegir per a d’altres instruments o d’altres afinacions seguint els exemples que apareixen a ‘predefined-guitar-fretboards.ly’.

Els diagrames de posicions per a l’ukelele estan al fitser
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]

Els diagrames de posicions per a la mandolina es poden trobar al fitxer
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]

Les notes dels acords es poden introduir com a música simultània o bé usant el mode d’acords (vegeu Panoràmica del mode d’acords).

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

[image of music]

És corrent que s’escriguin junts els noms d’acord i els diagrames de trast. Això es pot fer posant un context de noms d’acord ChordNames en paral·lel amb un context de trasts FretBoards i donant als dos contextos el mateix contingut musical.

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

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

[image of music]

Els diagrames de trast predefinits es poden transportar, en la mesura que estigui emmagatzemant un diagrama per a l’acord transportat, a la taula de diagrames de trast.

\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 taula de diagrames de trast predefinits per a la guitarra conté vuit acords (major, menor, augmentat, disminuït, sèptima dominant, sèptima major, menor sèptima i novena dominant) per a 17 tonalitats diferents. La taula de diagrames predefinits per a l’ukelele conté aquests acords i a més altres tres (sexta major, segona suspesa i quarta suspesa). Es pot veure una llista completa dels diagrames de trast predefinits a Diagrames predefinits de trasts. Si no hi ha una entrada a la taula per a un acord, el gravador FretBoards calcula una cadena de diagrama fret-diagram usant la funcionalitat de diagrames automàtics que es descriu Diagrames de trast automàtics.

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

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

[image of music]

Es poden afegir diagrames de posicions a la taula de diagrames de posicions. Per afegir un diagrama hem d’especificar la taula de correspondències per al diagrama, l’acord del diagrama, l’afinació utilitzada i una definició del diagrama. Normalment la taula de correspondències serà default-fret-table. La definició del diagrama pot ser una cadena de definició concisa fret-diagram-terse o una llista de marcatge detallada 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]

Es poden emmagatzemar diferents diagrames de trast per al mateix acord usant diferents octaves per a les notes. Les octaves de diferència han de ser al menys dues per sobre o per sota de l’octava predeterminada, atès que les octaves immediates superior i inferior de la predeterminada s’utilitzen per als trasters transpositors.

\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]

A més dels diagrames de trast, el LilyPond emmagatzema una llista interna de formes d’acords. Les formes d’acord són diagrames de trast que es poden desplaçar pel mànec per donar acords diferents. Es poden afegir formes d’acord a la llista interna i després usar-les per definir diagrames de posició predefinits. Atès que es poden moure, normalment no contenen cordes a l’aire. Com els diagrames de posicions, les formes d’acord es poden introduir com cadenes concises fret-diagram-terse o com llistes de marcatge detallades 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’aspecte gràfic d’un diagrama de trast es pot personalitzar segons les preferències de l’usuari a través de les propietats de la interfície fret-diagram-interface. Els detalls estan a fret-diagram-interface. Per a un diagrama de trasts predefinit, les propietats d’interfície pertanyen a FretBoards.FretBoard.

Fragments de codi seleccionats

Personalitzar els diagrames de posicions

Es poden establir les propietats dels diagrames de posicions d’acords per mitjà de 'fret-diagram-details. Per als diagrames de posicions de FretBoard, s’apliquen els overrides (sobreescriptures) a l’objecte FretBoards.FretBoard. Com Voice, FretBoards és un context del nivell inferior, i per tant es pot ometre el seu nom a la sobreescriptura de propietats.

\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]

Definició de posicions predefinides per a d’altres instruments

Es poden afegir diagrames de posicions predefinides per a instruments nous a més dels estàndard que s’usen per a la guitarra. Aquest fitxer mostra com es fa, definint una afinació nova i unes quantes posicions per al cuatro veneçolà.

Aquest fitxer també mostra com es poden incloure les digitacions als acords que s’usen com punts de referència per a la cerca d’acords a la taula, i mostrar-se al diagrama de posiciones i la tabulatura TabStaff, però no a la música.

Aquestes posicions no es poden transportar perquè contenen informació de les cordes. Hi ha plans per corregir això en un futur.

% 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]

Canvis d’acord de posicions de trastos

Es pot fer que els diagrames de posicions es mostren sols quan l’acord canvia o al començament d’una nova línia.

\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]

Taules alternatives de diagrames de posicions

Es poden crear taules alternatives de diagrames de posicions. S’utilitzarien per tenir diagrames alternatius per un acord donat.

Per usar una taula alternativa de diagrames de posicions, s’ha de crear primer la taula. Després s’afegeixen els diagrames a la taula.

La taula de diagrames de posicions que es crea pot estar buida o es pot copiar a partir d’una taula existent.

La taula a usar en la impressió dels diagrames predefinits se selecciona per mitjà de la propietat \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]

Vegeu també

Referència de la notació: Tabulatures personalitzades, Diagrames de trast automàtics, Panoràmica del mode d’acords, Diagrames predefinits de trasts.

Fitxers d’inici: ‘ly/predefined-guitar-fretboards.ly’,
ly/predefined-guitar-ninth-fretboards.ly’,
ly/predefined-ukulele-fretboards.ly’,
ly/predefined-mandolin-fretboards.ly’.

Fragments de codi: Fretted strings.

Referència de funcionament intern: fret-diagram-interface.


Diagrames de trast automàtics

Es poden crear diagrames de trast automàticament a partir de les notes introduïdes usant el context FretBoards. Si no està disponible cap diagrama predefinit per a les notes introduïdes en l’afinació stringTunings activa, aquest context calcula les cordes i els trasts que es poden usar per tocar les notes.

<<
  \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]

Atès que de forma predeterminada no es carrega cap diagrama predefinit, el comportament predeterminat és el càlcul automàtic dels diagrames de trast. Un cop que els diagrames predeterminats s’han carregat, es pot activar i desactivar el càlcul automàtic amb instruccions predefinides:

\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]

En alguns casos el calculador de trasts és incapaç de trobar un diagrama acceptable. Això es pot remeiar generalment mitjançant l’assignació manual d’una nota a una corda. En molts casos sols s’ha de col·locar manualment una nota sobre una corda; la resta de notes se situarà al lloc adequat per part del context FretBoards.

Es poden afegir digitacions als diagrames de trast del context 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]

El trast mínim a usar en el càlcul de cordes i trasts per al context FretBoard es pot fixar amb la propietat 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]

Les cordes i els trasts per al context FretBoards depenen de la propietat stringTunings, que tenen el mateix significat que en el context de tabulatura TabStaff. Consulteu Tabulatures personalitzades per veure més informació sobre la propietat stringTunings.

L’aspecte gràfic d’un diagrama de trasts es pot personalitzar d’acord a les preferències de l’usuari a través de les propietats de la interfície fret-diagram-interface. Els detalls es poden trobar a fret-diagram-interface. Per a un diagrama de FretBoards, les propietats de la interfície pertanyen a FretBoards.FretBoard.

Instruccions predefinides

\predefinedFretboardsOff, \predefinedFretboardsOn.

Vegeu també

Referència de la notació: Tabulatures personalitzades.

Fragments de codi: Fretted strings.

Referència de funcionament intern: fret-diagram-interface.

Advertiments i problemes coneguts

Els càlculs de tabulatura automàtics no funcionen bé per a instruments amb afinacions no monòtones.


Digitacions de la mà dreta

Les digitacions de la mà dreta p-i-m-a s’han d’introduir usant \rightHandFinger seguit d’un número.

Nota: Si el número s’introdueix en notació de l’Scheme, recordeu-vos d’escriure al final un espai seguit d’un angle de tancament > o semblant.

\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 brevetat, es pot escriure \rightHandFinger de forma més curta, com per exemple RH:

RH=#rightHandFinger

Fragments de codi seleccionats

Posicionament de digitacions de mà dreta

És possible exercir un control més gran sobre la col·locació de les digitacions de la mà dreta establint el valor d’una propietat específica, com es mostra a l’exemple següent. Nota: s’ha d’usar una construcció d’acord.

#(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]

Digitacions - indicació del nombre de corda i digitacions de ma dreta

En aquest exemple es combinen les digitacions de la ma esquerra, indicacions del nombre de corda i digitacions de la ma dreta.

#(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]

Vegeu també

Fragments de codi: Fretted strings.

Referència de funcionament intern: StrokeFinger.


LilyPond — Referència de la notació v2.23.82 (branca de desenvolupament).