]> git.donarmstrong.com Git - lilypond.git/commitdiff
Add predefined ukulele fretboards
authorCarl Sorensen <c_sorensen@byu.edu>
Wed, 25 Nov 2009 01:39:33 +0000 (18:39 -0700)
committerCarl Sorensen <c_sorensen@byu.edu>
Wed, 25 Nov 2009 12:13:04 +0000 (05:13 -0700)
Add predefined ukulele fretboards using file provided by Matt Corks

Include dominant 9th chords as part of predefined-guitar-fretboards

Modify the documentation to discuss ukulele fretboards.

Show all predefined chords in the notation reference appendix.

Documentation/included/display-predefined-fretboards.ly
Documentation/included/display-predefined-ukulele-fretboards.ly [new file with mode: 0644]
Documentation/notation/fretted-strings.itely
Documentation/notation/notation-appendices.itely
ly/predefined-guitar-fretboards.ly
ly/predefined-ukulele-fretboards.ly [new file with mode: 0644]
scm/tablature.scm

index bf2283db3cebc606c180f9a1540a3e79ed51117f..d26c11baf94e56aae8937025a7836f31cd8de4c2 100644 (file)
@@ -2,7 +2,7 @@
 \version "2.12.0"
 
 
-mychords = \chordmode {c1 c:m c:aug c:dim c:7 c:maj7 c:m7 \break }
+mychords = \chordmode {c1 c:m c:aug c:dim c:7 c:maj7 c:m7 c:9 \break }
 
 chordsline = {
   \mychords
diff --git a/Documentation/included/display-predefined-ukulele-fretboards.ly b/Documentation/included/display-predefined-ukulele-fretboards.ly
new file mode 100644 (file)
index 0000000..ef37518
--- /dev/null
@@ -0,0 +1,74 @@
+\version "2.13.9"
+\include "predefined-ukulele-fretboards.ly"
+
+
+mychords = \chordmode {
+  c1 c:m c:aug c:dim c:7 c:maj7 c:m7
+  c:6 c:sus2 c:sus4 c:9
+  \break
+}
+
+chordsline = {
+  \mychords
+  \transpose c cis {
+    \mychords
+  }
+  \transpose c des {
+    \mychords
+  }
+  \transpose c d {
+    \mychords
+  }
+  \transpose c dis {
+    \mychords
+  }
+ \transpose c ees {
+    \mychords
+  }
+  \transpose c e {
+    \mychords
+  }
+  \transpose c f {
+    \mychords
+  }
+  \transpose c fis {
+    \mychords
+  }
+  \transpose c ges {
+    \mychords
+  }
+  \transpose c g {
+    \mychords
+  }
+  \transpose c gis {
+    \mychords
+  }
+  \transpose c aes {
+    \mychords
+  }
+  \transpose c a {
+    \mychords
+  }
+  \transpose c ais {
+    \mychords
+  }
+  \transpose c bes {
+    \mychords
+  }
+  \transpose c b {
+    \mychords
+  }
+}
+
+<<
+  \context ChordNames {
+    \chordsline
+  }
+  \context FretBoards {
+    \set stringTunings = #ukulele-tuning
+    \chordsline
+  }
+  \context Staff {
+    \chordsline
+  }
+>>
index b01f149006de7b8a877e11350c442807f816d493..8c33c1579f3b67cba4ea9a396b22316423766550 100644 (file)
@@ -402,12 +402,13 @@ LilyPond tabulature automatically calculates the fret for
 a note based on the string to which the note is assigned.
 In order to do this, the tuning of the strings must be
 specified.  The tuning of the strings is given in the
-@code{StringTunings} property.
+@code{stringTunings} property.
 
 LilyPond comes with predefined string tunings for banjo, mandolin,
-guitar and bass guitar.  LilyPond automatically sets the correct
-transposition for predefined tunings.  The following example is
-for bass guitar, which sounds an octave lower than written.
+guitar, bass guitar and ukulele.  LilyPond automatically sets
+the correct transposition for predefined tunings.  The following
+example is for bass guitar, which sounds an octave lower than
+written.
 
 @lilypond[quote,ragged-right,verbatim]
 <<
@@ -430,7 +431,7 @@ The default string tuning is @code{guitar-tuning}, which
 is the standard EADGBE tuning.  Some other predefined tunings are
 @code{guitar-open-g-tuning}, @code{mandolin-tuning} and
 @code{banjo-open-g-tuning}.  The predefined string tunings
-are found in @code{scm/output-lib.scm}.
+are found in @code{scm/tablature.scm}.
 
 A string tuning is a Scheme list of string pitches,
 one for each string, ordered by string number from 1 to N,
@@ -474,7 +475,7 @@ mynotes = {
 
 @seealso
 Installed Files:
-@file{scm/@/output@/-lib@/.scm}.
+@file{scm/@/tablature@/.scm}.
 
 Snippets:
 @rlsr{Fretted strings}.
@@ -482,6 +483,10 @@ Snippets:
 Internals Reference:
 @rinternals{Tab_note_heads_engraver}.
 
+@knownissues
+Automatic tablature calculations do not work properly in most
+cases for instruments where string pitches do not vary
+monotonically with string number, such as ukuleles.
 
 @node Fret diagram markups
 @unnumberedsubsubsec Fret diagram markups
@@ -888,6 +893,24 @@ diagrams can be added for other instruments or other tunings
 by following the examples found in
 @code{predefined-guitar-fretboards.ly}.
 
+Fret diagrams for the ukulele are contained in the file
+@code{predefined-ukulele-fretboards.ly}.
+
+@lilypond[verbatim, ragget-right, quote]
+\include "predefined-ukulele-fretboards.ly"
+
+myChords = \chordmode { a1 a:m a:aug }
+
+\new ChordNames {
+  \myChords
+}
+
+\new FretBoards {
+  \set stringTunings = #ukulele-tuning
+  \myChords
+}
+@end lilypond
+
 Chord pitches can be entered
 either as simultaneous music or using chord mode (see
 @ref{Chord mode overview}).
@@ -955,9 +978,13 @@ mychordlist = {
 @end lilypond
 
 
-The predefined fret diagram table contains seven chords (major, minor,
-augmented, diminished, dominant seventh, major seventh, minor seventh)
-for each of 17 keys.  A complete list of the predefined fret diagrams is
+The predefined fret diagram table for guitar contains eight chords (major, minor,
+augmented, diminished, dominant seventh, major seventh, minor seventh, dominant ninth)
+for each of 17 keys.
+The predefined fret diagram table for ukulele contains these chords
+plus an additional three chords (major sixth, suspended second, and
+suspended fourth).
+A complete list of the predefined fret diagrams is
 shown in @ref{Predefined fretboard diagrams}.  If there is no entry in
 the table for a chord, the FretBoards engraver will calculate a
 fret-diagram using the automatic fret diagram functionality described in
@@ -966,7 +993,7 @@ fret-diagram using the automatic fret diagram functionality described in
 @lilypond[verbatim, ragged-right, quote]
 \include "predefined-guitar-fretboards.ly"
 mychords = \chordmode{
-  c1 c:9
+  c1 c:maj9
 }
 
 <<
@@ -992,12 +1019,12 @@ marking list.
 @lilypond[verbatim, ragged-right, quote]
 \include "predefined-guitar-fretboards.ly"
 
-\storePredefinedDiagram \chordmode {c:9}
+\storePredefinedDiagram \chordmode {c:maj9}
                         #guitar-tuning
-                        #"x;3-2;2-1;3-3;3-4;x;"
+                        #"x;3-2;o;o;o;o;"
 
 mychords = \chordmode{
-  c1 c:9
+  c1 c:maj9
 }
 
 <<
@@ -1274,6 +1301,10 @@ Snippets:
 Internals Reference:
 @rinternals {fret-diagram-interface}.
 
+@knownissues
+Automatic fretboard calculations do not work properly for instruments
+with non-monotonic tunings.
+
 
 @node Right-hand fingerings
 @unnumberedsubsubsec Right-hand fingerings
index 801cd923e3e09a216ebb85dcd75a21da2c5f4bcc..e17e7bb9ddc9b1583af5fe73459b428cc3fb14c7 100644 (file)
@@ -408,10 +408,14 @@ Perfect fourth, perfect fifth
 @node Predefined fretboard diagrams
 @appendixsec Predefined fretboard diagrams
 
-The chart below shows the predefined fretboard diagrams.
+The chart below shows the predefined fretboard diagrams for guitar.
 
 @lilypondfile{display-predefined-fretboards.ly}
 
+The chart below shows the predefined fretboard diagrams for ukulele.
+
+@lilypondfile{display-predefined-ukulele-fretboards.ly}
+
 @node MIDI instruments
 @appendixsec MIDI instruments
 
index 89a2cc6823561312b9bd2fcbc73dbf396199d23e..93dda5643ec2c0e5c043d3318100c5c8d18d4c42 100644 (file)
@@ -4,6 +4,8 @@
 %%%%
 %%%% (c) 2008--2009 Carl D. Sorensen <c_sorensen@byu.edu>
 
+\include "predefined-guitar-ninth-fretboards.ly"
+
 %%%  Add basic chordshapes
 
 \version "2.12.0"
diff --git a/ly/predefined-ukulele-fretboards.ly b/ly/predefined-ukulele-fretboards.ly
new file mode 100644 (file)
index 0000000..e0adb38
--- /dev/null
@@ -0,0 +1,793 @@
+%%%% predefined-ukulele-fretboards.ly
+%%%%
+%%%% source file of the GNU LilyPond music typesetter
+%%%%
+%%%% copyrignt (c) 2009 Matt Corks <mvcorks@alumni.uwaterloo.ca>
+%%%%
+
+%%%% sources:
+%%%%   ukulele hall of fame museum website (http://www.ukulele.org/),
+%%%%   kiwi ukulele website (http://www.kiwiukulele.co.nz/)
+
+
+%%% a chords
+
+\storePredefinedDiagram \chordmode {a}
+                        #ukulele-tuning
+                        #"2-2;1-1;o;o;"
+
+\storePredefinedDiagram \chordmode {a:m}
+                        #ukulele-tuning
+                        #"2-1;o;o;o;"
+
+\storePredefinedDiagram \chordmode {a:7}
+                        #ukulele-tuning
+                        #"o;1-1;o;o;"
+
+\storePredefinedDiagram \chordmode {a:m7}
+                        #ukulele-tuning
+                        #"o;o;o;o;"
+
+\storePredefinedDiagram \chordmode {a:dim}
+                        #ukulele-tuning
+                        #"2-1;3-3;2-2;3-4;"
+
+\storePredefinedDiagram \chordmode {a:maj7}
+                        #ukulele-tuning
+                        #"1-1;1-2;o;o;"
+
+\storePredefinedDiagram \chordmode {a:6}
+                        #ukulele-tuning
+                        #"2-1;4-3;2-2;4-4;"
+
+\storePredefinedDiagram \chordmode {a:sus2}
+                        #ukulele-tuning
+                        #"2-2;4-3;5-4;2-1;"
+
+\storePredefinedDiagram \chordmode {a:sus4}
+                        #ukulele-tuning
+                        #"2-1;2-2;o;o;"
+
+\storePredefinedDiagram \chordmode {a:aug}
+                        #ukulele-tuning
+                        #"2-2;1-1-(;1-1-);4-4;"
+
+\storePredefinedDiagram \chordmode {a:9}
+                        #ukulele-tuning
+                        #"o;1-1;o;2-2;"
+
+%%% ais chords
+
+\storePredefinedDiagram \chordmode {ais}
+                        #ukulele-tuning
+                        #"3-3;2-2;1-1-(;1-1-);"
+
+\storePredefinedDiagram \chordmode {ais:m}
+                        #ukulele-tuning
+                        #"3-3;1-1-(;1-1;1-1-);"
+
+\storePredefinedDiagram \chordmode {ais:7}
+                        #ukulele-tuning
+                        #"1-1-(;2-2;1-1;1-1-);"
+
+\storePredefinedDiagram \chordmode {ais:m7}
+                        #ukulele-tuning
+                        #"1-1-(;1-1;1-1;1-1-);"
+
+\storePredefinedDiagram \chordmode {ais:dim}
+                        #ukulele-tuning
+                        #"o;1-1;o;1-2;"
+
+\storePredefinedDiagram \chordmode {ais:maj7}
+                        #ukulele-tuning
+                        #"2-2-(;2-2-);1-1-(;1-1-);"
+
+\storePredefinedDiagram \chordmode {ais:6}
+                        #ukulele-tuning
+                        #"o;2-2;1-1-(;1-1-);"
+
+\storePredefinedDiagram \chordmode {ais:sus2}
+                        #ukulele-tuning
+                        #"3-3;o;1-1-(;1-1-);"
+
+\storePredefinedDiagram \chordmode {ais:sus4}
+                        #ukulele-tuning
+                        #"3-3-(;3-3-);1-1-(;1-1-);"
+
+\storePredefinedDiagram \chordmode {ais:aug}
+                        #ukulele-tuning
+                        #"3-2;1-1-(;1-1-);5-4;"
+
+\storePredefinedDiagram \chordmode {ais:9}
+                        #ukulele-tuning
+                        #"1-1-(;2-2;1-1-);3-3;"
+
+%%% bes chords
+
+\storePredefinedDiagram \chordmode {bes}
+                        #ukulele-tuning
+                        #"3-3;2-2;1-1-(;1-1-);"
+
+\storePredefinedDiagram \chordmode {bes:m}
+                        #ukulele-tuning
+                        #"3-3;1-1-(;1-1;1-1-);"
+
+\storePredefinedDiagram \chordmode {bes:7}
+                        #ukulele-tuning
+                        #"1-1-(;2-2;1-1;1-1-);"
+
+\storePredefinedDiagram \chordmode {bes:m7}
+                        #ukulele-tuning
+                        #"1-1-(;1-1;1-1;1-1-);"
+
+\storePredefinedDiagram \chordmode {bes:dim}
+                        #ukulele-tuning
+                        #"o;1-1;o;1-2;"
+
+\storePredefinedDiagram \chordmode {bes:maj7}
+                        #ukulele-tuning
+                        #"2-2-(;2-2-);1-1-(;1-1-);"
+
+\storePredefinedDiagram \chordmode {bes:6}
+                        #ukulele-tuning
+                        #"o;2-2;1-1-(;1-1-);"
+
+\storePredefinedDiagram \chordmode {bes:sus2}
+                        #ukulele-tuning
+                        #"3-3;o;1-1-(;1-1-);"
+
+\storePredefinedDiagram \chordmode {bes:sus4}
+                        #ukulele-tuning
+                        #"3-3-(;3-3-);1-1-(;1-1-);"
+
+\storePredefinedDiagram \chordmode {bes:aug}
+                        #ukulele-tuning
+                        #"3-2;1-1-(;1-1-);5-4;"
+
+\storePredefinedDiagram \chordmode {bes:9}
+                        #ukulele-tuning
+                        #"1-1-(;2-2;1-1-);3-3;"
+
+%%% b chords
+
+\storePredefinedDiagram \chordmode {b}
+                        #ukulele-tuning
+                        #"4-3;3-2;2-1-(;2-1-);"
+
+\storePredefinedDiagram \chordmode {b:m}
+                        #ukulele-tuning
+                        #"4-3;2-1-(;2-1;2-1-);"
+
+\storePredefinedDiagram \chordmode {b:7}
+                        #ukulele-tuning
+                        #"2-1-(;3-2;2-1;2-1-);"
+
+\storePredefinedDiagram \chordmode {b:m7}
+                        #ukulele-tuning
+                        #"2-1-(;2-1;2-1;2-1-);"
+
+\storePredefinedDiagram \chordmode {b:dim}
+                        #ukulele-tuning
+                        #"1-1;2-3;1-2;2-4;"
+
+\storePredefinedDiagram \chordmode {b:maj7}
+                        #ukulele-tuning
+                        #"3-2-(;3-2-);2-1-(;2-1-);"
+
+\storePredefinedDiagram \chordmode {b:6}
+                        #ukulele-tuning
+                        #"1-1;3-4;2-2;2-3;"
+
+\storePredefinedDiagram \chordmode {b:sus2}
+                        #ukulele-tuning
+                        #"5-4;1-1;2-3;2-2;"
+
+\storePredefinedDiagram \chordmode {b:sus4}
+                        #ukulele-tuning
+                        #"4-2-(;4-2-);2-1-(;2-1-);"
+
+\storePredefinedDiagram \chordmode {b:aug}
+                        #ukulele-tuning
+                        #"o;3-2-(;3-2-);2-1;"
+
+\storePredefinedDiagram \chordmode {b:9}
+                        #ukulele-tuning
+                        #"2-2-(;3-3;2-2-);4-4;"
+
+%%% c chords
+
+\storePredefinedDiagram \chordmode {c}
+                        #ukulele-tuning
+                        #"o;o;o;3-3;"
+
+\storePredefinedDiagram \chordmode {c:m}
+                        #ukulele-tuning
+                        #"o;3-1;3-2;3-3;"
+
+\storePredefinedDiagram \chordmode {c:7}
+                        #ukulele-tuning
+                        #"o;o;o;1-1;"
+
+\storePredefinedDiagram \chordmode {c:m7}
+                        #ukulele-tuning
+                        #"3-1-(;3-1;3-1;3-1-);"
+
+\storePredefinedDiagram \chordmode {c:dim}
+                        #ukulele-tuning
+                        #"2-1;3-3;2-2;3-4;"
+
+\storePredefinedDiagram \chordmode {c:maj7}
+                        #ukulele-tuning
+                        #"o;o;o;2-1;"
+
+\storePredefinedDiagram \chordmode {c:6}
+                        #ukulele-tuning
+                        #"o;o;o;o;"
+
+\storePredefinedDiagram \chordmode {c:sus2}
+                        #ukulele-tuning
+                        #"o;2-1;3-2-(;3-2-);"
+
+\storePredefinedDiagram \chordmode {c:sus4}
+                        #ukulele-tuning
+                        #"o;o;1-1;3-3;"
+
+\storePredefinedDiagram \chordmode {c:aug}
+                        #ukulele-tuning
+                        #"1-1;o;o;3-4;"
+
+\storePredefinedDiagram \chordmode {c:9}
+                        #ukulele-tuning
+                        #"o;2-2;o;1-1;"
+
+%%% cis chords
+
+\storePredefinedDiagram \chordmode {cis}
+                        #ukulele-tuning
+                        #"1-1-(;1-1;1-1-);4-4;"
+
+\storePredefinedDiagram \chordmode {cis:m}
+                        #ukulele-tuning
+                        #"1-1;4-2;4-3-(;4-3-);"
+
+\storePredefinedDiagram \chordmode {cis:7}
+                        #ukulele-tuning
+                        #"1-1-(;1-1;1-1-);2-2;"
+
+\storePredefinedDiagram \chordmode {cis:m7}
+                        #ukulele-tuning
+                        #"2-2-(;2-2-);1-1;3-3;"
+
+\storePredefinedDiagram \chordmode {cis:dim}
+                        #ukulele-tuning
+                        #"o;1-1;o;1-2;"
+
+\storePredefinedDiagram \chordmode {cis:maj7}
+                        #ukulele-tuning
+                        #"1-1-(;1-1;1-1-);3-3;"
+
+\storePredefinedDiagram \chordmode {cis:6}
+                        #ukulele-tuning
+                        #"1-1-(;1-1;1-1;1-1-);"
+
+\storePredefinedDiagram \chordmode {cis:sus2}
+                        #ukulele-tuning
+                        #"1-1;3-2;4-3-(;4-3-);"
+
+\storePredefinedDiagram \chordmode {cis:sus4}
+                        #ukulele-tuning
+                        #"1-1-(;1-1-);2-2;4-4;"
+
+\storePredefinedDiagram \chordmode {cis:aug}
+                        #ukulele-tuning
+                        #"2-2;1-1-(;1-1-);4-4;"
+
+\storePredefinedDiagram \chordmode {cis:9}
+                        #ukulele-tuning
+                        #"1-1-(;3-3;1-1-);2-2;"
+
+%%% des chords
+
+\storePredefinedDiagram \chordmode {des}
+                        #ukulele-tuning
+                        #"1-1-(;1-1;1-1-);4-4;"
+
+\storePredefinedDiagram \chordmode {des:m}
+                        #ukulele-tuning
+                        #"1-1;4-2;4-3-(;4-3-);"
+
+\storePredefinedDiagram \chordmode {des:7}
+                        #ukulele-tuning
+                        #"1-1-(;1-1;1-1-);2-2;"
+
+\storePredefinedDiagram \chordmode {des:m7}
+                        #ukulele-tuning
+                        #"2-2-(;2-2-);1-1;3-3;"
+
+\storePredefinedDiagram \chordmode {des:dim}
+                        #ukulele-tuning
+                        #"o;1-1;o;1-2;"
+
+\storePredefinedDiagram \chordmode {des:maj7}
+                        #ukulele-tuning
+                        #"1-1-(;1-1;1-1-);3-3;"
+
+\storePredefinedDiagram \chordmode {des:6}
+                        #ukulele-tuning
+                        #"1-1-(;1-1;1-1;1-1-);"
+
+\storePredefinedDiagram \chordmode {des:sus2}
+                        #ukulele-tuning
+                        #"1-1;3-2;4-3-(;4-3-);"
+
+\storePredefinedDiagram \chordmode {des:sus4}
+                        #ukulele-tuning
+                        #"1-1-(;1-1-);2-2;4-4;"
+
+\storePredefinedDiagram \chordmode {des:aug}
+                        #ukulele-tuning
+                        #"2-2;1-1-(;1-1-);4-4;"
+
+\storePredefinedDiagram \chordmode {des:9}
+                        #ukulele-tuning
+                        #"1-1-(;3-3;1-1-);2-2;"
+
+%%% d chords
+
+\storePredefinedDiagram \chordmode {d}
+                        #ukulele-tuning
+                        #"2-1;2-2;2-3;o;"
+
+\storePredefinedDiagram \chordmode {d:m}
+                        #ukulele-tuning
+                        #"2-2-(;2-2-);1-1;o;"
+
+\storePredefinedDiagram \chordmode {d:7}
+                        #ukulele-tuning
+                        #"2-1-(;2-1;2-1-);3-2;"
+
+\storePredefinedDiagram \chordmode {d:m7}
+                        #ukulele-tuning
+                        #"2-2-(;2-2-);1-1;3-3;"
+
+\storePredefinedDiagram \chordmode {d:dim}
+                        #ukulele-tuning
+                        #"1-1;2-3;1-2;2-4;"
+
+\storePredefinedDiagram \chordmode {d:maj7}
+                        #ukulele-tuning
+                        #"2-1-(;2-1;2-1-);4-3;"
+
+\storePredefinedDiagram \chordmode {d:6}
+                        #ukulele-tuning
+                        #"2-1-(;2-1;2-1;2-1-);"
+
+\storePredefinedDiagram \chordmode {d:sus2}
+                        #ukulele-tuning
+                        #"2-1;2-2;o;o;"
+
+\storePredefinedDiagram \chordmode {d:sus4}
+                        #ukulele-tuning
+                        #"o;2-1;3-2;o;"
+
+\storePredefinedDiagram \chordmode {d:aug}
+                        #ukulele-tuning
+                        #"3-2;2-1-(;2-1-);5-4;"
+
+\storePredefinedDiagram \chordmode {d:9}
+                        #ukulele-tuning
+                        #"2-1-(;4-3;2-1-);3-2;"
+
+%%%% dis chords
+
+\storePredefinedDiagram \chordmode {dis}
+                        #ukulele-tuning
+                        #"o;3-2-(;3-2-);1-1;"
+
+\storePredefinedDiagram \chordmode {dis:m}
+                        #ukulele-tuning
+                        #"3-3-(;3-3-);2-2;1-1;"
+
+\storePredefinedDiagram \chordmode {dis:7}
+                        #ukulele-tuning
+                        #"3-1-(;3-1;3-1-);4-2;"
+
+\storePredefinedDiagram \chordmode {dis:m7}
+                        #ukulele-tuning
+                        #"3-2-(;3-2-);2-1;4-4;"
+
+\storePredefinedDiagram \chordmode {dis:dim}
+                        #ukulele-tuning
+                        #"2-1;3-3;2-1;3-4;"
+
+\storePredefinedDiagram \chordmode {dis:maj7}
+                        #ukulele-tuning
+                        #"3-1-(;3-2;3-1-);5-2;"
+
+\storePredefinedDiagram \chordmode {dis:6}
+                        #ukulele-tuning
+                        #"3-1-(;3-1;3-1;3-1-);"
+
+\storePredefinedDiagram \chordmode {dis:sus2}
+                        #ukulele-tuning
+                        #"3-2-(;3-2-);1-1-(;1-1-);"
+
+\storePredefinedDiagram \chordmode {dis:sus4}
+                        #ukulele-tuning
+                        #"1-2;3-3;4-4;1-1;"
+
+\storePredefinedDiagram \chordmode {dis:aug}
+                        #ukulele-tuning
+                        #"o;3-2-(;3-2-);2-1;"
+
+\storePredefinedDiagram \chordmode {dis:9}
+                        #ukulele-tuning
+                        #"o;1-1-(;1-1;1-1-);"
+
+%%%% ees chords
+
+\storePredefinedDiagram \chordmode {ees}
+                        #ukulele-tuning
+                        #"o;3-2-(;3-2-);1-1;"
+
+\storePredefinedDiagram \chordmode {ees:m}
+                        #ukulele-tuning
+                        #"3-3-(;3-3-);2-2;1-1;"
+
+\storePredefinedDiagram \chordmode {ees:7}
+                        #ukulele-tuning
+                        #"3-1-(;3-1;3-1-);4-2;"
+
+\storePredefinedDiagram \chordmode {ees:m7}
+                        #ukulele-tuning
+                        #"3-2-(;3-2-);2-1;4-4;"
+
+\storePredefinedDiagram \chordmode {ees:dim}
+                        #ukulele-tuning
+                        #"2-1;3-3;2-1;3-4;"
+
+\storePredefinedDiagram \chordmode {ees:maj7}
+                        #ukulele-tuning
+                        #"3-1-(;3-2;3-1-);5-2;"
+
+\storePredefinedDiagram \chordmode {ees:6}
+                        #ukulele-tuning
+                        #"3-1-(;3-1;3-1;3-1-);"
+
+\storePredefinedDiagram \chordmode {ees:sus2}
+                        #ukulele-tuning
+                        #"3-2-(;3-2-);1-1-(;1-1-);"
+
+\storePredefinedDiagram \chordmode {ees:sus4}
+                        #ukulele-tuning
+                        #"1-2;3-3;4-4;1-1;"
+
+\storePredefinedDiagram \chordmode {ees:aug}
+                        #ukulele-tuning
+                        #"o;3-2-(;3-2-);2-1;"
+
+\storePredefinedDiagram \chordmode {ees:9}
+                        #ukulele-tuning
+                        #"o;1-1-(;1-1;1-1-);"
+
+%%%% e chords
+
+\storePredefinedDiagram \chordmode {e}
+                        #ukulele-tuning
+                        #"4-2;4-3;4-4;2-1;"
+
+\storePredefinedDiagram \chordmode {e:m}
+                        #ukulele-tuning
+                        #"4-3;4-3;3-2;2-1;"
+
+\storePredefinedDiagram \chordmode {e:7}
+                        #ukulele-tuning
+                        #"1-1;2-2;o;2-3;"
+
+\storePredefinedDiagram \chordmode {e:m7}
+                        #ukulele-tuning
+                        #"o;2-1;o;2-2;"
+
+\storePredefinedDiagram \chordmode {e:dim}
+                        #ukulele-tuning
+                        #"o;1-1;o;1-2;"
+
+\storePredefinedDiagram \chordmode {e:maj7}
+                        #ukulele-tuning
+                        #"1-1;3-3;o;2-2;"
+
+\storePredefinedDiagram \chordmode {e:6}
+                        #ukulele-tuning
+                        #"4-1-(;4-1;4-1;4-1-);"
+
+\storePredefinedDiagram \chordmode {e:sus2}
+                        #ukulele-tuning
+                        #"4-3-(;4-3-);2-1-(;2-1-);"
+
+\storePredefinedDiagram \chordmode {e:sus4}
+                        #ukulele-tuning
+                        #"2-2;4-4;o;2-1;"
+
+\storePredefinedDiagram \chordmode {e:aug}
+                        #ukulele-tuning
+                        #"1-1;o;o;3-4;"
+
+\storePredefinedDiagram \chordmode {e:9}
+                        #ukulele-tuning
+                        #"1-1;2-2-(;2-2;2-2-);"
+
+%%%% f chords
+
+\storePredefinedDiagram \chordmode {f}
+                        #ukulele-tuning
+                        #"2-2;o;1-1;o;"
+
+\storePredefinedDiagram \chordmode {f:m}
+                        #ukulele-tuning
+                        #"1-1;o;1-2;3-4;"
+
+\storePredefinedDiagram \chordmode {f:7}
+                        #ukulele-tuning
+                        #"2-2;3-3;1-1;3-4;"
+
+\storePredefinedDiagram \chordmode {f:m7}
+                        #ukulele-tuning
+                        #"1-1;3-3;1-2;3-4;"
+
+\storePredefinedDiagram \chordmode {f:dim}
+                        #ukulele-tuning
+                        #"1-1;2-3;1-2;2-4;"
+
+\storePredefinedDiagram \chordmode {f:maj7}
+                        #ukulele-tuning
+                        #"2-2;4-4;1-1;3-3;"
+
+\storePredefinedDiagram \chordmode {f:6}
+                        #ukulele-tuning
+                        #"2-2-(;2-2-);1-1;3-4;"
+
+\storePredefinedDiagram \chordmode {f:sus2}
+                        #ukulele-tuning
+                        #"o;o;1-1;3-3;"
+
+\storePredefinedDiagram \chordmode {f:sus4}
+                        #ukulele-tuning
+                        #"3-3;o;1-1-(;1-1-);"
+
+\storePredefinedDiagram \chordmode {f:aug}
+                        #ukulele-tuning
+                        #"2-2;1-1-(;1-1-);4-4;"
+
+\storePredefinedDiagram \chordmode {f:9}
+                        #ukulele-tuning
+                        #"2-1;3-2-(;3-2;3-2-);"
+
+%%%% fis chords
+
+\storePredefinedDiagram \chordmode {fis}
+                        #ukulele-tuning
+                        #"3-3;1-1;2-2;1-1;"
+
+\storePredefinedDiagram \chordmode {fis:m}
+                        #ukulele-tuning
+                        #"2-2;1-1;2-3;o;"
+
+\storePredefinedDiagram \chordmode {fis:7}
+                        #ukulele-tuning
+                        #"3-3;4-4;2-2;1-1;"
+
+\storePredefinedDiagram \chordmode {fis:m7}
+                        #ukulele-tuning
+                        #"2-1;4-3;2-2;4-4;"
+
+\storePredefinedDiagram \chordmode {fis:dim}
+                        #ukulele-tuning
+                        #"2-1;3-3;2-2;3-4;"
+
+\storePredefinedDiagram \chordmode {fis:maj7}
+                        #ukulele-tuning
+                        #"3-2;5-4;2-1;4-3;"
+
+\storePredefinedDiagram \chordmode {fis:6}
+                        #ukulele-tuning
+                        #"3-2-(;3-2-);2-1;4-4;"
+
+\storePredefinedDiagram \chordmode {fis:sus2}
+                        #ukulele-tuning
+                        #"1-1-(;1-1-);2-2;4-4;"
+
+\storePredefinedDiagram \chordmode {fis:sus4}
+                        #ukulele-tuning
+                        #"4-4;1-1;2-2;2-3;"
+
+\storePredefinedDiagram \chordmode {fis:aug}
+                        #ukulele-tuning
+                        #"3-2;2-1-(;2-1-);5-4;"
+
+\storePredefinedDiagram \chordmode {fis:9}
+                        #ukulele-tuning
+                        #"3-1;4-2-(;4-2;4-2-);"
+
+%%%% ges chords
+
+\storePredefinedDiagram \chordmode {ges}
+                        #ukulele-tuning
+                        #"3-3;1-1;2-2;1-1;"
+
+\storePredefinedDiagram \chordmode {ges:m}
+                        #ukulele-tuning
+                        #"2-2;1-1;2-3;o;"
+
+\storePredefinedDiagram \chordmode {ges:7}
+                        #ukulele-tuning
+                        #"3-3;4-4;2-2;1-1;"
+
+\storePredefinedDiagram \chordmode {ges:m7}
+                        #ukulele-tuning
+                        #"2-1;4-3;2-2;4-4;"
+
+\storePredefinedDiagram \chordmode {ges:dim}
+                        #ukulele-tuning
+                        #"2-1;3-3;2-2;3-4;"
+
+\storePredefinedDiagram \chordmode {ges:maj7}
+                        #ukulele-tuning
+                        #"3-2;5-4;2-1;4-3;"
+
+\storePredefinedDiagram \chordmode {ges:6}
+                        #ukulele-tuning
+                        #"3-2-(;3-2-);2-1;4-4;"
+
+\storePredefinedDiagram \chordmode {ges:sus2}
+                        #ukulele-tuning
+                        #"1-1-(;1-1-);2-2;4-4;"
+
+\storePredefinedDiagram \chordmode {ges:sus4}
+                        #ukulele-tuning
+                        #"4-4;1-1;2-2;2-3;"
+
+\storePredefinedDiagram \chordmode {ges:aug}
+                        #ukulele-tuning
+                        #"3-2;2-1-(;2-1-);5-4;"
+
+\storePredefinedDiagram \chordmode {ges:9}
+                        #ukulele-tuning
+                        #"3-1;4-2-(;4-2;4-2-);"
+
+%%%% g chords
+
+\storePredefinedDiagram \chordmode {g}
+                        #ukulele-tuning
+                        #"o;2-1;3-3;2-2;"
+
+\storePredefinedDiagram \chordmode {g:m}
+                        #ukulele-tuning
+                        #"o;2-2;3-3;1-1;"
+
+\storePredefinedDiagram \chordmode {g:7}
+                        #ukulele-tuning
+                        #"o;2-2;1-1;2-3;"
+
+\storePredefinedDiagram \chordmode {g:m7}
+                        #ukulele-tuning
+                        #"o;2-2;1-1-(;1-1-);"
+
+\storePredefinedDiagram \chordmode {g:dim}
+                        #ukulele-tuning
+                        #"o;1-1;o;1-2;"
+
+\storePredefinedDiagram \chordmode {g:maj7}
+                        #ukulele-tuning
+                        #"o;2-1;2-2;2-3;"
+
+\storePredefinedDiagram \chordmode {g:6}
+                        #ukulele-tuning
+                        #"o;2-1;o;2-2;"
+
+\storePredefinedDiagram \chordmode {g:sus2}
+                        #ukulele-tuning
+                        #"o;2-1;3-2;o;"
+
+\storePredefinedDiagram \chordmode {g:sus4}
+                        #ukulele-tuning
+                        #"o;2-1;3-2;3-3;"
+
+\storePredefinedDiagram \chordmode {g:aug}
+                        #ukulele-tuning
+                        #"o;3-2-(;3-2-);2-1;"
+
+\storePredefinedDiagram \chordmode {g:9}
+                        #ukulele-tuning
+                        #"2-2;2-3;1-1;2-4;"
+
+%%%% gis chords
+
+\storePredefinedDiagram \chordmode {gis}
+                        #ukulele-tuning
+                        #"5-3;3-1-(;4-2;3-1-);"
+
+\storePredefinedDiagram \chordmode {gis:m}
+                        #ukulele-tuning
+                        #"1-1;3-3;4-4;2-2;"
+
+\storePredefinedDiagram \chordmode {gis:7}
+                        #ukulele-tuning
+                        #"1-1;3-3;2-2;3-4;"
+
+\storePredefinedDiagram \chordmode {gis:m7}
+                        #ukulele-tuning
+                        #"1-1;3-4;2-2;2-3;"
+
+\storePredefinedDiagram \chordmode {gis:dim}
+                        #ukulele-tuning
+                        #"1-1;2-3;1-2;2-4;"
+
+\storePredefinedDiagram \chordmode {gis:maj7}
+                        #ukulele-tuning
+                        #"1-1;3-2;3-3-(;3-3-);"
+
+\storePredefinedDiagram \chordmode {gis:6}
+                        #ukulele-tuning
+                        #"1-1;3-3;1-2;3-4;"
+
+\storePredefinedDiagram \chordmode {gis:sus2}
+                        #ukulele-tuning
+                        #"1-2;3-3;4-4;1-1;"
+
+\storePredefinedDiagram \chordmode {gis:sus4}
+                        #ukulele-tuning
+                        #"1-1;2-3;4-3-(;4-3-);"
+
+\storePredefinedDiagram \chordmode {gis:aug}
+                        #ukulele-tuning
+                        #"1-1;o;o;3-4;"
+
+\storePredefinedDiagram \chordmode {gis:9}
+                        #ukulele-tuning
+                        #"1-1;o;2-3;1-2;"
+
+%%%% aes chords
+
+\storePredefinedDiagram \chordmode {aes}
+                        #ukulele-tuning
+                        #"5-3;3-1-(;4-2;3-1-);"
+
+\storePredefinedDiagram \chordmode {aes:m}
+                        #ukulele-tuning
+                        #"1-1;3-3;4-4;2-2;"
+
+\storePredefinedDiagram \chordmode {aes:7}
+                        #ukulele-tuning
+                        #"1-1;3-3;2-2;3-4;"
+
+\storePredefinedDiagram \chordmode {aes:m7}
+                        #ukulele-tuning
+                        #"1-1;3-4;2-2;2-3;"
+
+\storePredefinedDiagram \chordmode {aes:dim}
+                        #ukulele-tuning
+                        #"1-1;2-3;1-2;2-4;"
+
+\storePredefinedDiagram \chordmode {aes:maj7}
+                        #ukulele-tuning
+                        #"1-1;3-2;3-3-(;3-3-);"
+
+\storePredefinedDiagram \chordmode {aes:6}
+                        #ukulele-tuning
+                        #"1-1;3-3;1-2;3-4;"
+
+\storePredefinedDiagram \chordmode {aes:sus2}
+                        #ukulele-tuning
+                        #"1-2;3-3;4-4;1-1;"
+
+\storePredefinedDiagram \chordmode {aes:sus4}
+                        #ukulele-tuning
+                        #"1-1;2-3;4-3-(;4-3-);"
+
+\storePredefinedDiagram \chordmode {aes:aug}
+                        #ukulele-tuning
+                        #"1-1;o;o;3-4;"
+
+\storePredefinedDiagram \chordmode {aes:9}
+                        #ukulele-tuning
+                        #"1-1;o;2-3;1-2;"
index ec26113caa248899d3dd7d48686ae27d862865b8..38a528475ade7fbb2cfe57a5ae6355f090b10afb 100644 (file)
 ;; convert 5-string banjo tuning to 4-string by removing the 5th string
 (define-public (four-string-banjo tuning)
   (reverse (cdr (reverse tuning))))
+;; ukulele tunings
+(define-public ukulele-tuning '(9 4 0 7)) ;ukulele  a' e' c' g'
+(define-public ukulele-d-tuning '(11 6 2 9)) ;ukulele d tuning, b' fis' d' a'
+(define-public ukulele-tenor-tuning '(-5 0 4 9)) ;tenor ukulele, g c' e' a'
+(define-public ukulele-baritone-tuning '(-10 -5 -1 4)) ;baritone ukulele, d g b e'
+
 
 ;; for more control over glyph-name calculations,
 ;; we use a custom callback for tab note heads