Diagramas predefinidos de trastes
Se pueden imprimir los diagramas de trastes usando el contexto
FretBoards
. De forma predeterminada, el contexto
FretBoards
imprime diagramas de trastes que están
almacenados en una tabla de búsqueda:
\include "predefined-guitar-fretboards.ly" \new FretBoards { \chordmode { c1 d } }
Los diagramas de traste predefinidos están en el archivo
predefined-guitar-fretboards.ly. Los diagramas de trastes
se almacenan tomando como base las notas de un acorde y el valor
de stringTunings
que se está utilizando en cada momento.
predefined-guitar-fretboards.ly contiene diagramas de
traste predefinidos sólo para guitar-tuning
. Los diagramas
de traste predefinidos se pueden añadir para otros instrumentos u
otras afinaciones siguiendo los ejemplos que aparecen en
predefined-guitar-fretboards.ly.
Los diagramas de posiciones para el ukelele están en el archivo
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 }
Los diagramas de posiciones para la mandolina
están contenidos en el archivo
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 }
Las notas de los acordes se pueden introducir como música simultánea o bien usando el modo de acordes (véase Panorámica del modo de acordes).
\include "predefined-guitar-fretboards.ly" \new FretBoards { \chordmode { c1 } <c' e' g'>1 }
Es corriente que se impriman juntos los nombres de acorde y los
diagramas de traste. Esto se puede hacer poniendo un contexto de
nombres de acorde ChordNames
en paralelo con un contexto de
trastes FretBoards
y dando a los dos contextos el mismo
contenido musical.
\include "predefined-guitar-fretboards.ly" mychords = \chordmode { c1 f g } << \new ChordNames { \mychords } \new FretBoards { \mychords } >>
Los diagramas de traste predefinidos se pueden transportar, en la medida en que esté almacenado un diagrama para el acorde transportado, en la tabla de diagramas de traste.
\include "predefined-guitar-fretboards.ly" mychords = \chordmode{ c1 f g } mychordlist = { \mychords \transpose c e { \mychords } } << \new ChordNames { \mychordlist } \new FretBoards { \mychordlist } >>
La tabla de diagramas de traste predefinidos para la guitarra contiene ocho acordes (mayor, menor, aumentado, disminuido, séptima dominante, séptima mayor, menor séptima y novena domniante) para 17 tonalidades distintas. La tabla de diagramas predefinidos para el ukelele contiene estos acordes y además otros tres (sexta mayor, segunda suspendida y cuarta suspendida). Se puede ver una lista completa de los diagramas de traste predefinidos en Diagramas predefinidos de trastes. Si no hay una entrada en la tabla para un acorde, el grabador FretBoards calcula un cadena de diagrama fret-diagram usando la funcionalidad de diagramas automáticos que se describe en Diagramas de traste automáticos.
\include "predefined-guitar-fretboards.ly" mychords = \chordmode { c1 c:maj9 } << \new ChordNames { \mychords } \new FretBoards { \mychords } >>
Se pueden añadir diagramas de posiciones a la tabla de diagramas de posiciones. Para añadir un diagrama debemos especificar la tabla de correspondencias para el diagrama, el acorde del diagrama, la afinación utilizada y una definición del diagrama. Normalmente la tabla de correspondencias será default-fret-table. La definición del diagrama puede ser una cadena de definición escueta fret-diagram-terse o una lista de marcados prolija 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 } >>
Se pueden almacenar distintos diagramas de traste para el mismo acorde usando distintas octavas para las notas. Las octavas de diferencia deben ser al menos dos por encima o por debajo de la octava predeterminada, porque las octavas inmediatas superior e inferior de la predeterminada se utilizan para los trasteros transpositores.
\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 } >>
Además de los diagramas de traste, LilyPond almacena una lista interna de formas de acorde. Las formas de acorde son diagramas de traste que se pueden desplazar por el mástil para dar acordes distintos. Se pueden añadir formas de acorde a la lista interna y luego usarlas para definir diagramas de posición predefinidos. Dado que se pueden mover a distintas posiciones dentro del mástil, las formas de acorde normalmente no contienen cuerdas al aire. Como los diagramas de posiciones, las formas de acorde se pueden introducir como cadenas escuetas fret-diagram-terse o como listas de marcado prolijas 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 } >>
El aspecto gráfico de un diagrama de traste se puede personalizar
según las preferencias del usuario a través de las propiedades del
interface fret-diagram-interface
. Los detalles están en
fret-diagram-interface. Para un diagrama de trastes
predefinido, las propiedades de interface pertenecen a
FretBoards.FretBoard
.
Fragmentos de código seleccionados
Personalizar los diagramas de posiciones
Se pueden establecer las propiedades de los diagramas de
posiciones de acordes por medio de 'fret-diagram-details
.
Para los diagramas de posiciones de FretBoard, se aplican los
overrides (sobreescrituras) al objeto FretBoards.FretBoard
.
Como Voice
, FretBoards
es un contexto del nivel
inferior, y por tanto se puede omitir su nombre en la
sobreescritura de propiedades.
\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' } >>
Definición de posiciones predefinidas para otros instrumentos
Se pueden añadir diagramas de posiciones predefinidas para instrumentos nuevos además de los estándar que se usan para la guitarra. Este archivo muestra cómo se hace, definiendo una afinación nueva y unas cuantas posiciones para el cuatro venezolano.
Este archivo también muestra cómo se pueden incluir las digitaciones
en los acordes que se usan como puntos de referencia para la búsqueda
de acordes en la tabla, y mostrarse en el diagrama de posiciones y la
tablatura TabStaff
, pero no en la música.
Estas posiciones no se pueden transportar porque contienen información de las cuerdas. Hay planes para corregir esto en un 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 = \musicLength 16 } } \midi { } }
Cambios de acorde de posiciones de trastes
Se puede hacer que los diagramas de posiciones se muestren sólo cuando el acorde cambia o al comienzo de una nueva línea.
\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 } >>
Tablas alternativas de diagramas de posiciones
Se pueden crear tablas alternativas de diagramas de posiciones. Se utilizarían para tener diagramas altenativos para un acorde dado.
Para usar una tabla alternativa de diagramas de posiciones, se debe crear la tabla primero. Después se añaden los diagramas a la tabla.
La tabla de diagramas de posiciones que se crea puede estar vacía o se puede copiar a partir de una tabla existente.
La tabla a usar en la impresión de los diagramas predefinidos se
selecciona por medio de la propiedad \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 | } >> } >>
Véase también
Referencia de la notación: Tablaturas personalizadas, Diagramas de traste automáticos, Panorámica del modo de acordes, Diagramas predefinidos de trastes.
Archivos de inicio:
ly/predefined-guitar-fretboards.ly,
ly/predefined-guitar-ninth-fretboards.ly,
ly/predefined-ukulele-fretboards.ly,
ly/predefined-mandolin-fretboards.ly.
Fragmentos de código: Fretted strings.
Referencia de funcionamiento interno: fret-diagram-interface.