+The standard fret diagram markup string indicates the string
+number and the fret number for each dot to be placed on the string.
+In addition, open and unplayed (muted) strings can be indicated.
+
+@lilypond[quote, verbatim]
+<<
+ \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;"
+ }
+>>
+@end lilypond
+
+Barre indications can be added to the diagram from
+the fret-diagram markup string.
+
+@lilypond[quote, verbatim]
+<<
+ \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;"
+ }
+>>
+@end lilypond
+
+The size of the fret diagram, and the number of frets in the diagram
+can be changed in the fret-diagram markup string.
+
+@lilypond[quote, verbatim]
+<<
+ \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;"
+ }
+>>
+@end lilypond
+
+The number of strings in a fret diagram can be changed to accomodate
+different instruments such as banjos and ukeleles with the fret-diagram
+markup string.
+
+@lilypond[quote, verbatim]
+<<
+ \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;"
+ }
+>>
+@end lilypond
+
+Fingering indications can be added, and the location of fingering labels
+can be controlled by the fret-diagram markup string.
+
+@lilypond[quote, verbatim]
+<<
+ \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;"
+ }
+>>
+@end lilypond
+
+Dot radius and dot position can be controlled with the fret-diagram
+markup string.
+
+@lilypond[quote, verbatim]
+<<
+ \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;"
+ }
+>>
+@end lilypond
+
+The fret-diagram-terse markup string omits string numbers; the string
+number is implied by the presence of semicolons. There is one semicolon
+for each string in the diagram. The first semicolon corresponds to the
+highest string number and the last semicolon corresponds to the first string.
+Mute strings, open strings, and fret numbers can be indicated.
+
+@lilypond[quote, verbatim]
+<<
+ \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;"
+ }
+>>
+@end lilypond
+
+Barre indicators can be included in the fret-diagram-terse markup string.
+
+@lilypond[quote, verbatim]
+<<
+ \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-);"
+ }
+>>
+@end lilypond
+
+Fingering indications can be included in the fret-diagram-terse markup string.
+
+@c Need to use override to enable fingerings to show this -- can we do so?
+@lilypond[quote, verbatim]
+<<
+ \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;"
+ }
+>>
+@end lilypond
+
+Other fret diagram properties must be adjusted using @code{\override} when using
+the fret-diagram-terse markup.
+
+The fret-diagram-verbose markup string is in the format of a Scheme list. Each
+element of the list indicates an item to be placed on the fret diagram.
+
+@lilypond[quote, verbatim]
+<< \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)
+ )
+ }
+>>
+@end lilypond
+
+Fingering indications and barres can be included in a
+fret-diagram-verbose markup string.
+
+@c \override is necessary to make fingering visible
+@lilypond[quote, verbatim]
+<<
+ \context ChordNames {
+ \chordmode {
+ f1 g
+ }
+ }
+ \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)
+ )
+ }
+>>
+@end lilypond
+
+All other fret diagram properties must be adjusted using @code{\override}
+when using the fret-diagram-verbose markup.
+
+@ignore
+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]