module Coltrane module EssentialGuitarChords CHORDS = { 'C' => [nil, 3, 2, 0, 1, 0], 'Cm' => [nil, 10, 10, 8, 6, 4], 'Cmaj7' => [nil, 3, 5, 4, 5, nil], 'C7' => [nil, 10, 10, 9, 11, nil], 'Cm7' => [6,6,5,5,nil,nil], 'Cm7b5' => [nil, 3,4,3,4, nil], 'C#' => [nil,8,6,6,6,nil], 'C#m' => [nil,5,6,6,5,nil], 'C#maj7' => [4,4,3,5,nil,nil], 'C#7' => [nil, nil, 6,6,6,7], 'C#m7' => [nil, 2,2,1,2], 'C#m7b5' => [nil, 4,5,4,5, nil], 'D' => [5,5,4,nil,nil,nil], 'Dm' => [10,nil,nil,10,10,nil], 'Dmaj7' => [5,5,4,6,nil,nil], 'D7' => [5,5,4,5,nil,nil], 'Dm7' => [nil,3,3,2,3,nil], 'Dm7b5' => [], 'D#' => [], 'D#m' => [], 'D#maj7' => [], 'D#7' => [], 'D#m7' => [], 'D#m7b5' => [], 'E' => [], 'Em' => [], 'Emaj7' => [], 'E7' => [], 'Em7' => [], 'Em7b5' => [], 'F' => [], 'Fm' => [], 'Fmaj7' => [], 'F7' => [], 'Fm7' => [], 'Fm7b5' => [], 'F#' => [], 'F#m' => [], 'F#maj7' => [], 'F#7' => [], 'F#m7' => [], 'F#m7b5' => [], 'G' => [], 'Gm' => [], 'Gmaj7' => [], 'G7' => [], 'Gm7' => [], 'Gm7b5' => [], 'G#' => [], 'G#m' => [], 'G#maj7' => [], 'G#7' => [], 'G#m7' => [], 'G#m7b5' => [], 'A' => [], 'Am' => [], 'Amaj7' => [], 'A7' => [], 'Am7' => [], 'Am7b5' => [], 'A#' => [], 'A#m' => [], 'A#maj7' => [], 'A#7' => [], 'A#m7' => [], 'A#m7b5' => [], 'B' => [], 'Bm' => [], 'Bmaj7' => [], 'B7' => [], 'Bm7' => [], 'Bm7b5' => [] } def [](name) GuitarChord.new_from_frets(*CHORDS[name]) end end end