@node Fretted string instruments
@section Fretted string instruments
-@c@node Guitar
-@c@section Guitar
@cindex tablature
@cindex guitar tablature
@menu
-* Guitar sections::
+* Common notation for fretted strings::
+* Guitar::
+* Banjo::
@end menu
-@node Guitar sections
-@subsection Guitar sections
+@node Common notation for fretted strings
+@subsection Common notation for fretted strings
@menu
-* String number indications::
-* Tablatures basic::
-* Non-guitar tablatures::
-* Banjo tablatures::
-* Fret diagrams::
-* Right hand fingerings::
-* Other guitar issues::
+* References for fretted strings::
+* String number indications::
+* Default tablatures::
+* Custom tablatures::
+* Fret diagrams::
+* Right hand fingerings::
@end menu
+@node References for fretted strings
+@subsubsection References for fretted strings
+
+@c TODO Add refs
+TBC
+
@node String number indications
@subsubsection String number indications
@cindex String numbers
-String numbers can be added to chords, by indicating the string number
-with @code{\}@var{number},
+The string on which a note should be played may be indicated by
+appending @code{\}@tie{}@var{number} to a note inside a chord
+construct (@code{<>}).
+
+@warning{String numbers @strong{must} be defined inside a chord
+construct even if there is only a single note.}
+
+@lilypond[verbatim,quote,relative=2]
+<c\5>4 <e\4> <g\3>2
+<c,\5 e\4 g\3>1
+@end lilypond
+
+Although fingering is covered in detail elsewhere, it is worth noting
+here how fingerings and string indications behave together, since
+guitar music often incorporates both at once. The usual convention
+is to place the fingering closest to the note, then the string
+indication outside the fingering. This is controlled by the order in
+which the two items appear:
-@lilypond[relative,relative=1,ragged-right,fragment]
-<c\1 e\2 g\3>
+@lilypond[verbatim,quote,relative=2]
+<g\3-0>2
+<g-0\3>
@end lilypond
+@snippets
+
+@ignore
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
+{controlling-the-placement-of-chord-fingerings.ly}
+@end ignore
@seealso
-Internals Reference: @internalsref{StringNumber},
+Internals Reference: @rinternals{StringNumber},
@c @lsr{guitar/,string-number.ly}.
-@node Tablatures basic
-@subsubsection Tablatures basic
-@cindex Tablatures basic
+@node Default tablatures
+@subsubsection Default tablatures
+@cindex Tablatures, basic
+@cindex Tablatures, default
Tablature notation is used for notating music for plucked string
instruments. Pitches are not denoted with note heads, but by
-numbers indicating on which string and fret a note must be played. LilyPond
-offers limited support for tablature.
+numbers indicating on which string and fret a note must be played.
+LilyPond offers limited support for tablature.
The string number associated to a note is given as a backslash
followed by a number, e.g., @code{c4\3} for a C quarter on the third
string. By default, string 1 is the highest one, and the tuning
defaults to the standard guitar tuning (with 6 strings). The notes
-are printed as tablature, by using @internalsref{TabStaff} and
-@internalsref{TabVoice} contexts
+are printed as tablature, by using @rinternals{TabStaff} and
+@rinternals{TabVoice} contexts
@lilypond[quote,ragged-right,fragment,verbatim]
\new TabStaff {
\set TabStaff.minimumFret = #8
e16 fis gis a b4
@end example
+
@lilypond[quote,ragged-right]
frag = {
\key e \major
@seealso
-Internals Reference: @internalsref{TabNoteHead}, @internalsref{TabStaff}, @internalsref{TabVoice}.
+Internals Reference: @rinternals{TabNoteHead}, @rinternals{TabStaff}, @rinternals{TabVoice}.
@knownissues
@end lilypond
-@node Non-guitar tablatures
-@subsubsection Non-guitar tablatures
-@cindex Non-guitar tablatures
+@node Custom tablatures
+@subsubsection Custom tablatures
+@cindex Tablatures, custom
You can change the tuning of the strings. A string tuning is given as
a Scheme list with one integer number for each string, the number
The file @file{scm/@/output@/-lib@/.scm} contains the predefined string
tunings.
-Internals Reference: @internalsref{Tab_note_heads_engraver}.
+Internals Reference: @rinternals{Tab_note_heads_engraver}.
@knownissues
-@node Banjo tablatures
-@subsubsection Banjo tablatures
-@cindex Banjo tablatures
-
-LilyPond has basic support for five stringed banjo. When making tablatures
-for five stringed banjo, use the banjo tablature format function to get
-correct
-fret numbers for the fifth string:
-
-@lilypond[quote,ragged-right,fragment,verbatim]
-\new TabStaff <<
- \set TabStaff.tablatureFormat = #fret-number-tablature-format-banjo
- \set TabStaff.stringTunings = #banjo-open-g-tuning
- {
- \stemDown
- g8 d' g'\5 a b g e d' |
- g4 d''8\5 b' a'\2 g'\5 e'\2 d' |
- g4
- }
->>
-@end lilypond
-
-A number of common tunings for banjo are predefined in LilyPond:
-@code{banjo-c-tuning} (gCGBD), @code{banjo-modal-tuning} (gDGCD),
-@code{banjo-open-d-tuning} (aDF#AD) and @code{banjo-open-dm-tuning}
-(aDFAD).
-
-These tunings may be converted to four string banjo tunings using the
-@code{four-string-banjo} function:
-
-@example
-\set TabStaff.stringTunings = #(four-string-banjo banjo-c-tuning)
-@end example
-
-@seealso
-
-The file @file{scm/@/output@/-lib@/.scm} contains predefined banjo tunings.
-
-
@node Fret diagrams
@subsubsection Fret diagrams
@cindex fret diagrams
@cindex chord diagrams
-Fret diagrams can be added to music as a markup to the desired note. The
-markup contains information about the desired fret diagram, as shown in the
-following example
+Fret diagrams can be added to music as a markup to the desired note.
+The markup contains information about the desired fret diagram.
+There are three different fret-diagram markup interfaces: standard, terse,
+and verbose. The three interfaces produce equivalent markups, but have
+varying amounts of information in the markup string. Details about the
+markup interfaces are found at @ref{Text markup commands}.
+
+The following example shows the three fret-diagram markup interfaces,
+along with examples of common tweaks. For example, the size of the verbose
+fret diagram is reduced to 0.75, and the finger indications are specified
+to appear below the diagram. The terse diagram includes tweaks to
+specify placement of finger code and color of dots.
@lilypond[verbatim, ragged-right, quote]
\new Voice {
fis'^\markup \override #'(size . 0.75) {
\override #'(finger-code . below-string) {
\fret-diagram-verbose #'((place-fret 6 2 1) (barre 6 1 2)
- (place-fret 5 4 3) (place-fret 4 4 4)
- (place-fret 3 3 2) (place-fret 2 2 1)
+ (place-fret 5 4 3)
+ (place-fret 4 4 4)
+ (place-fret 3 3 2)
+ (place-fret 2 2 1)
(place-fret 1 2 1))
}
}
}
@end lilypond
-
-There are three different fret-diagram markup interfaces: standard, terse,
-and verbose. The three interfaces produce equivalent markups, but have
-varying amounts of information in the markup string. Details about the
-markup interfaces are found at @ref{Text markup commands}.
-
You can set a number of graphical properties according to your preference.
Details about the property interface to fret diagrams are found at
-@internalsref{fret-diagram-interface}.
+@rinternals{fret-diagram-interface}.
@seealso
-Examples: @c @lsrdir{guitar}
@node Right hand fingerings
@subsubsection Right hand fingerings
-Right hand fingerings in chords can be entered using
-@code{@var{note}-\rightHandFinger @var{finger}}
+Right-hand fingerings @var{p-i-m-a} can be entered using
+@code{<@var{note}-\rightHandFinger @var{finger} >}.
+The right-hand fingering indication must occur within a @code{<>} chord
+construct for it to be printed in the score, even if it is a single note.
+There must be a hyphen after the note and the space
+before the closing @code{>}.
+
-@lilypond[verbatim,fragment,relative=2]
- <c-\rightHandFinger #1 e-\rightHandFinger #2 >
+@lilypond[quote,ragged-right,fragment,verbatim]
+\relative c' {
+ <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
+}
@end lilypond
for brevity, you can abbreviate @code{\rightHandFinger} to something
#(define RH rightHandFinger)
@end example
-@cindex fingerings, right hand, for guitar
+@cindex fingerings, right hand, for guitar
@cindex right hand fingerings for guitar
-
+
@snippets
-You may exercise greater control over right handing fingerings by
-setting @code{strokeFingerOrientations},
+You may exercise greater control over the placement of right-hand
+fingerings by setting @code{strokeFingerOrientations},
@lilypond[quote,verbatim,ragged-right,fragment,relative=1]
#(define RH rightHandFinger)
#(define RH rightHandFinger)
{
\set strokeFingerOrientations = #'(right)
- \override StrokeFinger #'digit-names = ##("x" "y" "z" "!" "@")
+ \override StrokeFinger #'digit-names = ##("x" "y" "z" "!" "@")
<c-\RH #5 >4
- <c-\RH "@">4
+ <c-\RH "@">4
+ <c-\RH #2 >4
+ <c-\RH "z">4
+}
+@end lilypond
+
+This example combines left-hand fingering, string indication, and
+right-hand fingering
+
+@lilypond[quote,ragged-right,fragment,verbatim]
+#(define RH rightHandFinger)
+\relative c' {
+ <c-3\5-\RH #1 >4
+ <e-2\4-\RH #2 >
+ <g-0\3-\RH #3 >
+ <c-1\2-\RH #4 >
}
@end lilypond
@seealso
-Internals Reference: @internalsref{StrokeFinger}
+Internals Reference: @rinternals{StrokeFinger}
+
+
+@node Guitar
+@subsection Guitar
+
+@c TODO Make a snippet based on
+@c http://www.nabble.com/Creating-a-nice-formatted-Chords-%2B-Lyrics-layout-for-guitar-players-to13829430.html
+@c and include it somewhere -td
+
+@menu
+* Guitar tablatures::
+* Indicating position and barring::
+@end menu
+@node Guitar tablatures
+@subsubsection Guitar tablatures
+@c TODO Add text
+TBC
-@node Other guitar issues
-@subsubsection Other guitar issues
+@node Indicating position and barring
+@subsubsection Indicating position and barring
This example demonstrates how to include guitar position and
barring indications.
demonstrated in @ref{Special note heads}.
+@node Banjo
+@subsection Banjo
+
+@menu Banjo tablatures
+* Banjo tablatures::
+@end menu
+
+@node Banjo tablatures
+@subsubsection Banjo tablatures
+@cindex Banjo tablatures
+
+LilyPond has basic support for five stringed banjo. When making tablatures
+for five stringed banjo, use the banjo tablature format function to get
+correct
+fret numbers for the fifth string:
+
+@lilypond[quote,ragged-right,fragment,verbatim]
+\new TabStaff <<
+ \set TabStaff.tablatureFormat = #fret-number-tablature-format-banjo
+ \set TabStaff.stringTunings = #banjo-open-g-tuning
+ {
+ \stemDown
+ g8 d' g'\5 a b g e d' |
+ g4 d''8\5 b' a'\2 g'\5 e'\2 d' |
+ g4
+ }
+>>
+@end lilypond
+
+A number of common tunings for banjo are predefined in LilyPond:
+@code{banjo-c-tuning} (gCGBD), @code{banjo-modal-tuning} (gDGCD),
+@code{banjo-open-d-tuning} (aDF#AD) and @code{banjo-open-dm-tuning}
+(aDFAD).
+
+These tunings may be converted to four string banjo tunings using the
+@code{four-string-banjo} function:
+
+@example
+\set TabStaff.stringTunings = #(four-string-banjo banjo-c-tuning)
+@end example
+
+@seealso
+
+The file @file{scm/@/output@/-lib@/.scm} contains predefined banjo tunings.
+
+
+