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 } }![]()
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 }![]()
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 }![]()
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 }![]()
É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 } >>![]()
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 } >>![]()
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 } >>![]()
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 } >>![]()
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 } >>![]()
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 } >>![]()
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.
% begin verbatim \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 | bes } } \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 \oo FretBoard.fret-diagram-details.barre-type #'straight \oo FretBoard.fret-diagram-details.finger-code #'none \oo FretBoard.fret-diagram-details.dot-radius #0.25 \oo FretBoard.fret-diagram-details.dot-color #'black \oo FretBoard.fret-diagram-details.string-overhang #0. \oo FretBoard.fret-diagram-details.barre-thickness #2. bes } } \new Voice { c'1 | c' | c' | d' | bes } >>![]()
Setting up predefined fretboards for other instruments
Predefined fret diagrams can be added for new instruments in addition to the standard diagrams used for guitar. This file shows how this is done by defining a new string tuning and a few predefined fretboards for the Venezuelan cuatro.
This file also shows how fingerings can be included in the chords used
as reference points for the chord lookup, and displayed in the fret
diagram and the TabStaff, but not the music.
These fretboards are not transposable because they contain string information. This is planned to be corrected in the future.
% Add fretboards for the cuatro. % % Note: This section could be put into a separate file % `predefined-cuatro-fretboards.ly` % and be \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 { } }![]()
Chord changes for fretboards
Fretboards can be set to display only when the chord changes, or at the beginning of a new line.
\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 } >>![]()
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 | } >> } >>![]()
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 string instruments.
Referència de funcionament intern: fret-diagram-interface.
![[image of music]](../72/lily-ceb074f9.png)
![[image of music]](../7d/lily-d5452a70.png)
![[image of music]](../68/lily-73c494c0.png)
![[image of music]](../e1/lily-d5b981ef.png)
![[image of music]](../c1/lily-e1449c98.png)
![[image of music]](../a6/lily-e1ff0dd7.png)
![[image of music]](../3e/lily-9c55069a.png)
![[image of music]](../7f/lily-e4f92188.png)
![[image of music]](../49/lily-e59e0418.png)
![[image of music]](../45/lily-9b202c0c.png)
![[image of music]](../63/lily-d8a8ec69.png)
![[image of music]](../fb/lily-9a71cfda.png)
![[image of music]](../e8/lily-17c0600f.png)
![[image of music]](../79/lily-edb807e7.png)