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 =
        \musicLength 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"

\paper { tagline = ##f }

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.


Referència de la notació del GNU LilyPond v2.25.22 (development-branch).