GNU LilyPond Benutzerhandbuch: 2.4.1 Common notation for fretted strings

### 2.4.1 Common notation for fretted strings

Dieser Abschnitt zeigt Besonderheiten der Notation, die allen gebundenen Saiteninstrumenten eigen ist.

#### References for fretted strings

Noten für gebundene Saiteninstrumente wird normalerweise auf einem einzelnen System notiert, entweder als traditionelles Notensystem oder in Tabulaturform. Manchmal werden beide Arten miteinander verbunden, und besonders in populärer Musik ist es üblich, über dem traditionellen System Griffsymbole zu setzen. Gitarre und Banjo sind transponierende Instrumente, die eine Oktave tiefer klingen als sie notiert werden. Partituren für diese Instrumente sollten den „Tenorschlüssel“ (`"treble_8"`) benutzen. Einige Spezifika für gebundene Instrumente sind an anderer Stelle erklärt:

- Fingersatz kann notiert werden, siehe Fingering instructions.
- Anweisungen für Laissez vibrer-Bögen und Bögen zwischen Arpeggios und Tremolos sind beschrieben in Ties.
- Hinweise, wie mehrere Stimmen gesetzt werden können, finden sich in Collision resolution.
- Instructions for indicating harmonics can be found in Harmonics.

#### See also

Notationsreferenz: Fingering instructions, Ties, Collision resolution, Instrument names, Writing music in parallel, Arpeggio, List of articulations, Clef.

#### String number indications

Die Nummer der Saite, auf der gespielt werden soll, kann angezeigt werden, indem `\Zahl` an eine Note innerhalb eines Akkord-Konstrukts gesetzt wird:

>     \clef "treble_8"
>     <c\5>4 <e\4> <g\3>2
>     <c,\5 e\4 g\3>1

Wenn Fingersatz und Saitennummer zusammen benutzt werden, wird ihre Position anhand der Reihenfolge entschieden, mit der sie im Code auftauchen:

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

#### Selected Snippets

Controlling the placement of chord fingerings

The placement of fingering numbers can be controlled precisely.

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

Allowing fingerings to be printed inside the staff

By default, vertically oriented fingerings are positioned outside the staff. However, this behavior can be canceled.

>     \relative c' {
>       <c-1 e-2 g-3 b-5>2
>       \once \override Fingering #'staff-padding = #'()
>       <c-1 e-2 g-3 b-5>2
>     }

#### See also

Notationsreferenz: Fingering instructions.

Schnipsel: Fretted strings.

Referenz der Interna: StringNumber, Fingering.

#### Default tablatures

Tabulatur-Notation wird für die Notation von Zupfinstrumenten benutzt. Tonhöhen werden hier nicht durch Notenköpfe, sondern durch Zahlen notiert. Diese Zahlen zeigen an, auf welcher Saite und welchem Bund der Ton gespielt werden soll. LilyPond bringt beschränkte Unterstützung für Tabulaturen mit.

Die Saitennummer, die mit einer Note assoziiert ist, wird durch einen Backslash, gefolgt von einer Zahl, notiert. In der Standardeinstellung ist die erste Saite die höchste Saite und als Stimmung wird die übliche Gitarrenstimmung auf sechs Saiten angenommen. Die Noten werden in einer Tabulatur gesetzt, indem TabStaff und TabVoice-Kontexte verwendet werden.

>     \new TabStaff {
>       a,4\5 c'\2 a\3 e'\1
>       e\4 c'\2 a\3 e'\1
>     }

Wenn keine Saite für eine Note angegeben wird, wird die Note der Saite zugeordnet, welche die Note auf einem Bund erzeugen kann, der größer oder gleich als der Wert von `minimumFret` ist. Der Standardwert für `minimumFret` beträgt 0.

>     \new StaffGroup <<
>        \new Staff \relative c {
>          \clef "treble_8"
>          c16 d e f g4
>          c,16 d e f g4
>        }
>        \new TabStaff \relative c {
>          c16 d e f g4
>          \set TabStaff.minimumFret = #5
>          c,16 d e f g4
>        }
>     >>

Flageolett und Gleiten (Slide) kann zur Tabulatur hinzugefügt werden:

>     \new TabStaff {
>       \new TabVoice {
>         <c g'\harmonic> d\2\glissando e\2
>       }
>     }

#### Selected Snippets

Stem and beam behavior in tablature

The direction of stems is controlled the same way in tablature as in traditional notation. Beams can be made horizontal, as shown in this example.

>     \new TabStaff {
>       \relative c {
>         g16 b d g b d g b
>         \stemDown
>         \override Beam #'damping = #+inf.0
>         g,,16 b d g b d g b
>       }
>     }

Polyphony in tablature

Polyphony is created the same way in a `TabStaff` as in a regular staff.

>     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"
>             \context Voice = "upper" \upper
>             \context Voice = "lower" \lower
>           >>
>           \new TabStaff = "guitar tab" <<
>             \context TabVoice = "upper" \upper
>             \context TabVoice = "lower" \lower
>           >>
>         >>
>       >>
>     }

#### See also

Notationsreferenz: Stems.

Schnipsel: Fretted strings.

Referenz der Interna: TabNoteHead, TabStaff, TabVoice, Beam.

#### Known issues and warnings

Akkorde werden nicht gesondert behandelt, sodass die Saitenauswahlfunktion eventuell die selbe Saite für zwei Töne eines Akkordes auswählen kann.

Damit die Kombination von Stimmen (`\partcombine`) richtig funktioniert, müssen speziell erstellte Stimmen innerhalb des Tabulatursystems (`TabStaff`) benutzt werden:

>     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 }
>       >>
>     >>

Spezialeffekte für Gitarre beschränken sich auf Flageolett und Slide.

#### Custom tablatures

LilyPond errechnet automatisch den Bund für eine Note auf Grundlage der Saite, zu welcher der Ton zugeordnet ist. Um das tun zu können, muss die Stimmung der Saiten angegeben werden. Die Stimmung wird in der `StringTunings`-Eigenschaften bestimmt.

LilyPond hat vordefinierte Stimmungen für Banjo, Mandoline, Gitarre und Bassgitarre. Für diese Stimmungen wird automatisch die richtige Transposition eingesetzt. Das nächste Beispiel ist für Bassgitarre, welche eine Oktave niedriger erklingt, als sie geschrieben ist:

>     <<
>       \new Staff {
>         \clef "bass_8"
>         \relative c, {
>           c4 d e f
>         }
>       }
>       \new TabStaff {
>         \set TabStaff.stringTunings = #bass-tuning
>         \relative c, {
>           c4 d e f
>         }
>       }
>     >>

Die Standardstimmung ist die Gitarrenstimmung (`guitar-tuning`) in der EADGHE-Stimmung. Andere vordefinierte Stimmung sind: `guitar-open-g-tuning`, `mandolin-tuning` und `banjo-open-g-tuning`. Die vordefinierten Stimmungen finden sich in `scm/output-lib.scm`.

Die Stimmung ist eine Scheme-Liste von Tonhöhen der Saiten, eine für jede Saite, geordnet von Saitennummer 1 bis n, wobei 1 die höchste Saite der Tabulatur ist und n die unterste. Normalerweise wird so die Stimmung vom höchsten bis zum tiefsten Ton angegeben, aber bei einige Instrumente (etwa Ukulele) werden die Saiten nicht aufgrund der Tonhöhe angeordnet.

Eine Tonhöhe in der Liste der Saitenstimmungen ist der Unterschied der entsprechenden Tonhöhe zum eingestrichenen C gemessen in Halbtönen. Die Tonöhe muss eine Ganzzahl sein. LilyPond errechnet die Tonhöhe einer Saite, indem die Tonhöhe der Saitenstimmung zu der Tonhöhe von c’ hinzugerechnet wird.

LilyPond erschließt die Anzahl der Saiten einer Tabulatur anhand der Anzahl der Saitenstimmungszahlen in `stringTunings`.

Jede beliebige Saitenstimmung kann erzeugt werden. Als Beispiel etwa kann die Saitenstimmung für ein viersaitiges Instrument mit den Tonhöhen `a''`, `d''`, `g'`und `c'` so definiert werden:

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

>     <<
>       \new Staff {
>         \clef treble
>         \mynotes
>       }
>       \new TabStaff {
>         \set TabStaff.stringTunings = #'(21 14 7 0)
>         \mynotes
>       }
>     >>

#### See also

Installierte Dateien: ‘`scm/output-lib.scm`’.

Schnipsel: Fretted strings.

Referenz der Interna: Tab_note_heads_engraver.

#### Fret diagram markups

Bunddiagramme können zu Notation als Textbeschriftung hinzugefügt werden. Die Beschriftung enthält Information zu dem gewünschten Bunddiagramm. Es gibt drei unterschiedliche Darstellungsarten: normal, knapp und ausführlich. Die drei Arten erzeugen die gleiche Ausgabe, aber mit jeweils mehr oder weniger Einzelheiten. Einzelheiten zu Textbeschriftunsbefehlen findet sich in Text markup commands.

Die Standard-Bunddiagrammbeschriftung beinhaltet die Saitennummer und die Bundnummer für jeden Punkt, der notiert werden soll. Zusätzlich können offenen und nicht gespielte (schwingende) Saiten angezeigt werden.

>     <<
>       \context ChordNames {
>          \chordmode {
>            c1 d:m
>          }
>       }
>       \context 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'> ^\markup
>           \fret-diagram #"6-x;5-x;4-o;3-2;2-3;1-1;"
>       }
>     >>

Barre kann hinzugefügt werden:

>     <<
>       \context ChordNames {
>          \chordmode {
>            f1 g
>          }
>       }
>       \context 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'> ^\markup
>           \fret-diagram #"c:6-1-3;6-3;5-5;4-5;3-4;2-3;1-3;"
>       }
>     >>

Die Größe des Bunddiagrammes und die Anzahl der Bünde im Diagramm kann geändert werden:

>     <<
>       \context ChordNames {
>          \chordmode {
>            f1 g
>          }
>       }
>       \context 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'> ^\markup
>           \fret-diagram #"h:6;6-3;5-2;4-o;3-o;2-o;1-3;"
>       }
>     >>

Die Anzahl der Saiten kann geändert werden, um sie für andere Instrumente anzupassen, wie etwas Banjo oder Ukulele.

>     <<
>       \context ChordNames {
>          \chordmode {
>            a1
>          }
>       }
>       \context Staff {
>             %% A chord for ukelele
>         a'1 ^\markup \fret-diagram #"w:4;4-2-2;3-1-1;2-o;1-o;"
>       }
>     >>

Fingersatz kann auch angezeigt werden, und die Position der Fingersatzzahlen kann kontrolliert werden.

>     <<
>       \context ChordNames {
>          \chordmode {
>            c1 d:m
>          }
>       }
>       \context 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'> ^\markup
>           \fret-diagram #"f:2;6-x;5-x;4-o;3-2-2;2-3-3;1-1-1;"
>       }
>     >>

Die Größe und Position der Punkte kann geändert werden:

>     <<
>       \context ChordNames {
>          \chordmode {
>            c1 d:m
>          }
>       }
>       \context 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'> ^\markup
>           \fret-diagram #"p:0.2;6-x;5-x;4-o;3-2;2-3;1-1;"
>       }
>     >>

Die Beschriftungsfunktion `fret-diagram-terse` (knappe Version) lässt die Saitennummern aus: das Vorhandensein einer Saite wird durch ein Semikolon ausgedrückt. Für jede Saite des Diagramms muss ein Semikolon gesetzt werden. Das erste Semikolon entspricht der höchsten Saite, das letze der ersten Saite. Stumme und offene Saiten sowie Bundnummern können angezeigt werden.

>     <<
>       \context ChordNames {
>          \chordmode {
>            c1 d:m
>          }
>       }
>       \context Staff {
>         \clef "treble_8"
>         < c e g c' e' > 1 ^\markup
>           \fret-diagram-terse #"x;3;2;o;1;o;"
>         < d a d' f'> ^\markup
>           \fret-diagram-terse #"x;x;o;2;3;1;"
>       }
>     >>

Barre kann im knappen Modus auch angezeigt werden:

>     <<
>       \context ChordNames {
>          \chordmode {
>            f1 g
>          }
>       }
>       \context 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'> ^\markup
>           \fret-diagram-terse #"3-(;5;5;4;3;3-);"
>       }
>     >>

Fingersatz kann im knappen Modus hinzugefügt werden:

>     <<
>       \context ChordNames {
>          \chordmode {
>            c1 d:m
>          }
>       }
>       \context 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'> ^\markup
>           \fret-diagram-terse #"x;x;o;2-2;3-3;1-1;"
>       }
>     >>

Andere Eigenschaften der Bunddiagramme müssen im knappen Modus mit `\override`-Befehlen angegeben werden.

Die Beschriftungsfunktion `fret-diagram-verbose` (ausführlicher Stil) ist in der Form eine Scheme-Liste. Jedes Element stellt ein Element dar, dass im Bunddiagramm gesetzt werden soll.

>     <<  \context ChordNames {
>          \chordmode {
>            c1 d:m
>          }
>       }
>       \context 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'> ^\markup
>           \fret-diagram-verbose #'(
>             (mute 6)
>             (mute 5)
>             (open 4)
>             (place-fret 3 2)
>             (place-fret 2 3)
>             (place-fret 1 1)
>           )
>       }
>     >>

Fingersatz und Barre kann im ausführlichen Modus notiert werden. Nur im ausführlichen Modus kann ein Capo angezeigt werden, das auf dem Bunddiagramm plaziert wird. Die Capo-Anzeige ist ein dicker Strich, der alle Saiten bedeckt. Der Bund mit dem Capo ist der unterste Bund im Diagramm.

>     <<
>       \context ChordNames {
>          \chordmode {
>            f1 g c
>          }
>       }
>       \context 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'> ^\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 e g c' e'> ^\markup
>           \fret-diagram-verbose #'(
>             (capo 3)
>             (mute 6)
>             (place-fret 4 5 1)
>             (place-fret 3 5 2)
>             (place-fret 2 5 3)
>           )
>        }
>     >>

Alle anderen Bunddiagramm-Eigenschaften müssen im ausführlichen Modus mit mit `\override`-Befehlen angegeben werden.

Die graphische Erscheinung eines Bunddiagramms kann den Wünschen des Notensetzers angepassen werden. Hierzu werden die Eigenschaften des `fret-diagram-interface` (Bunddiagramm-Schnittstelle) eingesetzt. Einzelheiten hierzu in fret-diagram-interface. Die Eigenschaften der Schnittstelle gehören dem `Voice.TextScript`-Kontext an.

#### Selected Snippets

Customizing markup fret diagrams

Fret diagram properties can be set through `'fret-diagram-details`. For markup fret diagrams, overrides can be applied to the `Voice.TextScript` object or directly to the markup.

>     <<
>       \chords { c1 | c | c | d }

>       \new Voice = "mel" {
>         \textLengthOn
>         % Set global properties of fret diagram
>         \override TextScript #'size = #'1.2
>         \override TextScript
>           #'(fret-diagram-details finger-code) = #'in-dot
>         \override TextScript
>           #'(fret-diagram-details dot-color) = #'white

>         %% C major for guitar, no barre, using defaults
>            % terse style
>         c'1^\markup { \fret-diagram-terse #"x;3-3;2-2;o;1-1;o;" }

>         %% C major for guitar, barred on third fret
>            % verbose style
>            % size 1.0
>            % roman fret label, finger labels below string, straight barre
>         c'1^\markup {
>           % standard size
>           \override #'(size . 1.0) {
>             \override #'(fret-diagram-details . (
>                          (number-type . roman-lower)
>                          (finger-code . in-dot)
>                          (barre-type . straight))) {
>               \fret-diagram-verbose #'((mute 6)
>                                        (place-fret 5 3 1)
>                                        (place-fret 4 5 2)
>                                        (place-fret 3 5 3)
>                                        (place-fret 2 5 4)
>                                        (place-fret 1 3 1)
>                                        (barre 5 1 3))
>             }
>           }
>         }

>         %% C major for guitar, barred on third fret
>            % verbose style
>            % landscape orientation, arabic numbers, M for mute string
>            % no barre, fret label down or left, small mute label font
>         c'1^\markup {
>           \override #'(fret-diagram-details . (
>                        (finger-code . below-string)
>                        (number-type . arabic)
>                        (label-dir . -1)
>                        (mute-string . "M")
>                        (orientation . landscape)
>                        (barre-type . none)
>                        (xo-font-magnification . 0.4)
>                        (xo-padding . 0.3))) {
>             \fret-diagram-verbose #'((mute 6)
>                                      (place-fret 5 3 1)
>                                      (place-fret 4 5 2)
>                                      (place-fret 3 5 3)
>                                      (place-fret 2 5 4)
>                                      (place-fret 1 3 1)
>                                      (barre 5 1 3))
>           }
>         }

>         %% simple D chord
>            % terse style
>            % larger dots, centered dots, fewer frets
>            % label below string
>         d'1^\markup {
>           \override #'(fret-diagram-details . (
>                        (finger-code . below-string)
>                        (dot-radius . 0.35)
>                        (dot-position . 0.5)
>                        (fret-count . 3))) {
>             \fret-diagram-terse #"x;x;o;2-1;3-2;2-3;"
>           }
>         }
>       }
>     >>

#### See also

Notationsreferenz: Text markup commands.

Schnipsel: Fretted strings.

Referenz der Interna: fret-diagram-interface.

#### Predefined fret diagrams

Bunddiagramme können mit dem `FretBoards`-Kontext angezeigt werden. Standardmäßig zeigt der `FretBoards`-Kontext Bunddiagramme an, die in einer Tabelle definiert sind:

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

Die vordefinierten Diagramme sind in der Datei `predefined-guitar-fretboards.ly` enthalten. Sie werden basierend auf der Tonhöhe eines Akkordes und dem Wert von `stringTunings` (Saitenstimmung), der gerade benutzt wird, gespeichert. `predefined-guitar-fretboards.ly` beinhaltet vordefinierte Diagramme für die Gitarrenstimmtung (`guitar-tuning`). Anhand der Beispiele in dieser Datei können auch für andere Instrumente oder Stimmungen Diagramme definiert werden.

Tonhöhen von Akkorden können entweder als Akkordkonstrukte oder im Akkordmodus notiert werden (siehe auch Chord mode overview).

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

Oft wird sowohl eine Akkordbezeichnung als ein Bunddiagramm notiert. Das kann erreicht werden, indem ein `ChordNames`-Kontext parallel mit einem `FretBoards`-Kontext gesetzt wird und beiden Kontexten die gleichen Noten zugewiesen werden.

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

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

Vordefinierte Bunddiagramme können transponiert werden, solange ein Diagramm für den transponierten Akkord in der Bunddiagramm-Tabelle vorhanden ist.

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

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

Die Tabelle der vordefinierten Bunddiagramme enthält sieben Akkorde (Dur, Moll, übermäßig, vermindert, Dominantseptakkord, große Septime und kleine Septime) für alle 17 Tonarten. Eine vollständige Liste der vordefinierten Bunddiagramme findet sich in Predefined fret diagrams. Wenn in der Tabelle für einen Akkord kein Wert steht, wird ein Bunddiagramm vom `FretBoards`-Engraver errechnet, wobei die automatische Bunddiagrammfunktion zu Anwendung kommt. Siehe hierzu Automatic fret diagrams.

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

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

Bunddiagramme können zu der Tabelle hinzugefügt werden. Um ein Diagramm hinzuzufügen, muss der Akkord des Diagramms, die Stimmung und die Diagramm-Definition angegeben werden. Die Diagramm-Definition kann entweder eine `fret-diagram-terse`-Definition oder eine `fret-diagram-verbose`-Liste sein.

>     \include "predefined-guitar-fretboards.ly"

>     \storePredefinedDiagram \chordmode {c:9}
>                             #guitar-tuning
>                             #"x;3-2;2-1;3-3;3-4;x;"

>     mychords = \chordmode{
>       c1 c:9
>     }

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

Unterschiedliche Bunddiagramme für den selben Akkord können gespeichert werden, indem unterschiedliche Oktaven für die Tonhöhe benutzt werden.

>     \include "predefined-guitar-fretboards.ly"

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

>     mychords = \chordmode{
>       c1 c'
>     }

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

Zusätzlich zu Bunddiagrammen speichert LilyPond auch eine interne Liste an Akkordformen. Die Akkordformen sind Bunddiagramme, die am Hals entlang verschoben werden können und dabei unterschiedliche Akkorde ergeben. Akkordformen können zu der internen Liste hinzugefügt werden und dann benutzt werden, um vordefinierte Bunddiagramme zu definieren. Weil sie auf verschiedenen Positionen auf dem Steg gelegt werden können, beinhalten vordefinierte Akkord üblicherweise keine leeren Saiten. Wie Bunddiagramme können auch Akkordformen entweder als `fret-diagram-terse`-Definition oder als `fret-diagram-verbose`-Liste erstellt werden.

>     \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 \chordmode {f'}
>                             #guitar-tuning
>                             #(chord-shape 'powerf guitar-tuning)
>     \storePredefinedDiagram \chordmode {g'}
>                             #guitar-tuning
>                             #(offset-fret 2 (chord-shape 'powerf guitar-tuning))

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

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

Die graphische Form eines Bunddiagramms kann entsprechend den eigenen Wünschen verändert werden, indem man die Eigenschaften der `fret-diagram-interface`-Schnittstellt verändert. Einzelheiten hierzu in fret-diagram-interface. Die Schnittstelleneigenschaften eines vordefinierten Bunddiagrammes gehören dem `FretBoards.FretBoard`-Kontext an.

#### Selected Snippets

Customizing fretboard fret diagrams

Fret diagram properties can be set through `'fret-diagram-details`. For FretBoard fret diagrams, overrides are applied to the `FretBoards.FretBoard` object. Like `Voice`, `FretBoards` is a bottom level context, therefore can be omitted in property overrides.

>     \include "predefined-guitar-fretboards.ly"
>     \storePredefinedDiagram \chordmode { c' }
>                             #guitar-tuning
>                             #"x;1-1-(;3-2;3-3;3-4;1-1-);"
>     <<
>       \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
>           \once \override FretBoard #'size = #'1.0
>           \once \override FretBoard
>             #'(fret-diagram-details barre-type) = #'straight
>           \once \override FretBoard
>             #'(fret-diagram-details dot-color) = #'black
>           \once \override FretBoard
>             #'(fret-diagram-details finger-code) = #'below-string
>           c'
>           \once \override FretBoard
>             #'(fret-diagram-details barre-type) = #'none
>           \once \override FretBoard
>             #'(fret-diagram-details number-type) = #'arabic
>           \once \override FretBoard
>             #'(fret-diagram-details orientation) = #'landscape
>           \once \override FretBoard
>             #'(fret-diagram-details mute-string) = #"M"
>           \once \override FretBoard
>             #'(fret-diagram-details label-dir) = #LEFT
>           \once \override FretBoard
>             #'(fret-diagram-details dot-color) = #'black
>           c'
>           \once \override FretBoard
>             #'(fret-diagram-details finger-code) = #'below-string
>           \once \override FretBoard
>             #'(fret-diagram-details dot-radius) = #0.35
>           \once \override FretBoard
>             #'(fret-diagram-details dot-position) = #0.5
>           \once \override FretBoard
>             #'(fret-diagram-details fret-count) = #3
>           d
>         }
>       }
>       \new Voice {
>         c'1 | c' | c' | d'
>       }
>     >>

Defining predefined fretboards for other instruments

Predefined fret diagrams can be added for new instruments in addition to the standards 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 \included into each of your compositions

>     cuatroTuning = #'(11 18 14 9)

>     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 \dSix
>                             #cuatroTuning
>                             #"o;o;o;o;"
>     \storePredefinedDiagram \dMajor
>                             #cuatroTuning
>                             #"o;o;o;3-3;"
>     \storePredefinedDiagram \aMajSeven
>                             #cuatroTuning
>                             #"o;2-2;1-1;2-3;"
>     \storePredefinedDiagram \dMajSeven
>                             #cuatroTuning
>                             #"o;o;o;1-1;"
>     \storePredefinedDiagram \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 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 { }
>     }

#### See also

Notationsreferenz: Custom tablatures, Automatic fret diagrams, Chord mode overview, Predefined fret diagrams.

Installierte Dateien: ‘`ly/predefined-guitar-fretboards.ly`’, ‘`ly/predefined-guitar-ninth-fretboards.ly`’.

Schnipsel: Fretted strings.

Referenz der Interna: fret-diagram-interface.

#### Automatic fret diagrams

Bunddiagramme können automatisch aus notierten Noten erstellt werden. Hierzu wird der `FretBoards`-Kontext eingesetzt. Wenn keine vordefinierten Diagramme für die ensprechenden Noten mit der aktiven Saitenstimmung (`stringTunings`) vorhanden sind, errechnet der Kontext Saiten und Bünde die benutzt werden können, um die Noten zu spielen.

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

Da in den Standardeinstellungen keine vordefinierten Diagramme geladen werden, ist die automatische Diagrammerstellung das Standardverhalten. Wenn die vordefinierten Diagramme eingesetzt werden, kann die automatische Berechnung an- und ausgeschaltet werden.

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

Manchmal kann die Berechnungsfunktion für Bunddiagramme kein passendes Diagramm finden. Das kann oft umgangen werden, indem man manuell einer Note eine bestimmte Saite zuweist. In vielen Fällen muss nur eine Note derart gekennzeichnet werden, der Rest wird dann ensprechend durch den `FretBoards`-Kontext behandelt.

Fingersatz kann zu FretBoard-Bunddiagrammen hinzugefügt werden.

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

Der kleinste Bund, der benutzt wird, um Saiten und Bünde im FretBoard-Kontext zu errechnen, kann mit der `minimumFret`-Eigenschaft gesetzt werden.

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

Die Saiten und Bünde des `FretBoards`-Kontextes hängen von der `stringTunings`-Eigesnchaft ab, die die gleiche Bedeitung wie im TabStaff-Kontext hat. Siehe auch Custom tablatures zu Information über die `stringTunings`Eigenschaft.

Die graphische Erscheindung eines Bunddiagrammes kann den Bedürfnissen angepasst werden, indem Eigenschaften der `fret-diagram-interface`-Schnittstelle verändert werden. Einzelheiten finden sich in fret-diagram-interface. Die Schnittstelleneigenschaften eines `FretBoards`-Diagramms gehören dem `FretBoards.FretBoard`-Kontext an.

#### Predefined commands

`\predefinedFretboardsOff`, `\predefinedFretboardsOn`.

#### See also

Notationsreferenz: Custom tablatures.

Schnipsel: Fretted strings.

Referenz der Interna: fret-diagram-interface.

#### Right-hand fingerings

Fingersatz für die rechte Hand in Akkorden kann mit den Bezeichnungen p-i-m-a notiert werden. Er muss innerhalb eines Akkord-Konstruktes notiert werden.

Achtung: Nach der Note muss ein Minuszeichen gesetzt werden und ein Leerzeichen nach dem schließenden `>`.

>     \clef "treble_8"
>     <c-\rightHandFinger #1 >4
>     <e-\rightHandFinger #2 >
>     <g-\rightHandFinger #3 >
>     <c-\rightHandFinger #4 >
>     <c,-\rightHandFinger #1 e-\rightHandFinger #2
>       g-\rightHandFinger #3 c-\rightHandFinger #4 >1

Zur Erleichterung kann der Befehl `\rightHandFinger` zu ein paar Buchstaben abgekürzt werden, etwa `RH`.

>     #(define RH rightHandFinger)

#### Selected Snippets

Placement of right-hand fingerings

It is possible to exercise greater control over the placement of right-hand fingerings by setting a specific property, as demonstrated in the following example.

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

Fingerings, string indications, and right-hand fingerings

This example combines left-hand fingering, string indications, and right-hand fingering.

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

#### See also

Schnipsel: Fretted strings.

Referenz der Interna: StrokeFinger.

Other languages: English, français, español.

#### Notation Reference