uke 1.0.1 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1cc145040676501d82ce76b94f686243de901e1041d31b815471f020eb8fe9e3
4
- data.tar.gz: 1bdefdf83073f3eea3a109e654ff7b08639906aa9195fbfa9b34aefd2e76778c
3
+ metadata.gz: 9ae3e47a264ce4cdd24ae62142a1ff1902adcec253a971605c40f2eabfab94e2
4
+ data.tar.gz: 455a0e09e2c901f57eba14b61d64881e26a4a19e87b7f68de23349583f75078b
5
5
  SHA512:
6
- metadata.gz: 8ff1ca0b9df7c22b9d28aaace4e5b88c01981cbc27a177b8dabf7db1826043cef578f349c0055b5df5bec91a4048079c90d6b650fcffb00bc81edcb9ff668091
7
- data.tar.gz: 7c8ba0f08b1ac2849f335688f9cf753df72c33a98885783ca40ca0adf2ccaba813dad427aa85973f80f59c1cb78532d3514d54f8081ee728aa8888d5c110a6eb
6
+ metadata.gz: cd853e8502f27cd14cebe6de466ab564d7de37a451c8b303e5dbadc81228ab4e2f204b19fd1774afb13550efd2671f4cbd8a44083d35dc4f10fbd6673fee19d5
7
+ data.tar.gz: af0ccc87791c4c0ec844c6924c05224e8cc6a437947933b9c5f17686ac7d68321df7c5d910d95c3604597f7b5eb42a26ceda4e6dfb38fbd88087caaff00d4bfc
@@ -1,5 +1,10 @@
1
1
  ## CHANGELOG
2
2
 
3
+ ### 1.0.2
4
+
5
+ - Add more chords
6
+ - Improve "fingering" output style
7
+
3
8
  ### 1.0.1
4
9
 
5
10
  - Support "fingering" output style
@@ -1,206 +1,299 @@
1
1
  class Uke
2
2
  class Chord
3
- attr_reader :name, :positions, :fingers
3
+ attr_reader :name, :key, :positions, :fingers
4
4
 
5
5
  def initialize(line)
6
6
  parts = line.split(/\s{2,}/).map { |part| part.split(',') }
7
7
 
8
- @name = parts[0].join.tr(' ', '')
8
+ @name = parts[0].join.tr(' ', '')
9
+ @key = @name[0...2]
9
10
  @positions = parts[1].map(&:to_i)
10
11
  @fingers = parts[2] && parts[2].map(&:to_i)
11
12
  end
12
13
  end
13
14
 
14
- CHORDS_RAW = <<CHORDS_RAW # stolen from https://github.com/zimolzak/ukulele/blob/master/lotsachords.txt
15
- A 2,1,0,0 2,1,-,-
16
- A 2,1,0,4 2,1,-,4
17
- A 2,4,0,4 1,3,-,4
18
- A# 3,2,1,1 3,2,1,1
19
- A 5 2,4,0,0 1,3,-,-
20
- A 7 0,1,0,0 -,1,-,-
21
- A 7 2,4,3,4 1,2,3,4
22
- A# 7 1,2,1,1 1,2,1,1
23
- A 7sus 0,2,0,0 -,1,-,-
15
+ ENHARMONIC_EQUIVALENTS = {
16
+ 'A#' => 'Bb',
17
+ 'C#' => 'Db',
18
+ 'D#' => 'Eb',
19
+ 'F#' => 'Gb',
20
+ 'G#' => 'Ab'
21
+ }
22
+
23
+ # compare https://ukulele-chords.com and https://ukulelehelper.com
24
+ CHORDS_RAW = <<CHORDS_RAW
25
+ A 2,1,0,0 2,1,-,-
26
+ A 2,1,0,4 2,1,-,4
27
+ A 2,4,0,4 1,3,-,4
28
+ A 5 2,4,0,0 1,3,-,-
29
+ A 7 0,1,0,0 -,1,-,-
30
+ A 7 2,4,3,4 1,3,2,4
31
+ A sus 2,2,0,0 2,3,-,-
32
+ A 7sus 0,2,0,0 -,2,-,-
33
+ A 9 2,1,3,2 2,1,4,3
34
+ A 9 0,1,0,2 -,1,-,3
35
+ A 9 4,1,0,0 4,1,-,-
36
+ A aug 2,1,1,0 3,1,2,-
37
+ A aug 2,1,1,4 2,1,1,4
38
+ A dim7 2,3,2,3 1,3,2,4
39
+ A m 2,0,0,0 2,-,-,-
40
+ A m 2,0,0,3 2,-,-,4
41
+ A m 2,4,0,3 2,4,-,3
42
+ A m7 0,0,0,0
43
+ A m7 0,0,3,0 -,-,2,-
44
+ A m7 2,4,3,3 1,4,2,3
45
+ A m7b5 2,3,3,3 1,2,3,4
46
+ A maj7 1,1,0,0 1,2,-,-
47
+ A maj7 1,1,4,0 1,2,4,-
48
+ A maj7 1,1,0,4 1,2,-,4
49
+ A maj7 2,4,4,4 1,2,3,4
50
+
51
+ A# 3,2,1,1 3,2,1,1
52
+ A# 7 1,2,1,1 1,2,1,1
24
53
  A# 7sus 1,3,1,1 1,3,1,1
25
- A 9 2,1,0,2 1,2,0,3
26
- A 9 4,1,0,0 4,1,-,-
27
- A# 9 3,2,1,3 1,2,3,4
28
- A aug 2,1,1,0 3,1,2,-
29
- A aug 2,1,1,4 3,1,2,4
30
- A# aug 3,2,2,1 4,3,2,1
31
- A# dim 3,1,0,1 4,1,-,2
32
- A# dim 3,1,0,4 3,1,-,4
33
- A# dim 3,4,0,4 1,2,-,3
54
+ A# 9 3,2,4,3 2,1,4,3
55
+ A# 9 1,2,1,3 1,2,1,4
56
+ A# aug 3,2,2,1 4,2,3,1
57
+ A# dim 3,1,0,1 4,1,-,2
58
+ A# dim 3,1,0,4 3,1,-,4
59
+ A# dim 3,4,0,4 1,2,-,3
34
60
  A# dim7 0,1,0,1 -,1,-,2
35
61
  A# dim7 3,4,3,4 1,3,2,4
36
- A dim7 2,3,2,3 1,3,2,4
37
- A m 2,0,0,0 1,-,-,-
38
- A m 2,0,0,3 1,-,-,3
39
- A m 2,4,0,3 1,3,-,2
40
- A# m 3,1,1,1 3,1,1,1
41
- A# m 3,1,1,4 3,1,1,4
42
- A m7 0,0,0,0
43
- A m7 2,4,3,3 1,4,2,3
44
- A# m7 1,1,1,1 1,1,1,1
62
+ A# m 3,1,1,1 3,1,1,1
63
+ A# m 3,1,1,4 3,1,1,4
64
+ A# m7 1,1,1,1 1,1,1,1
45
65
  A# m7b5 1,1,0,1 1,2,-,3
66
+ A# m7b5 1,1,0,4 1,2,-,4
67
+ A# m7b5 1,4,0,4 1,3,-,4
46
68
  A# m7b5 3,4,4,4 1,2,3,4
47
- A m7b5 2,3,3,3 1,2,3,4
48
- A maj7 1,1,0,0 1,2,-,-
49
- A maj7 2,4,4,4 1,2,3,4
50
- A# maj7 2,2,1,1 3,1,4,2
51
69
  A# maj7 3,2,1,0 3,2,1,-
52
- A sus 2,2,0,0 1,2,-,-
53
- A# sus 3,3,1,1 3,4,1,1
54
- B 4,3,2,2 3,2,1,1
55
- B 7 2,3,2,2 1,2,1,1
56
- B 7 4,3,2,0 3,2,1,-
57
- B 7sus 2,4,2,2 1,3,1,1
58
- B 7sus 4,4,2,0 3,4,1,-
59
- B 9 4,3,2,4 3,2,1,4
60
- B aug 0,3,3,2 -,2,3,1
61
- B aug 4,3,3,2 4,2,3,1
62
- B dim 4,2,1,2 4,3,1,2
63
- B dim7 1,2,1,2 1,3,2,4
64
- B m 4,2,2,2 3,1,1,1
65
- B m7 2,2,2,2 1,1,1,1
66
- B m7 4,2,2,0 4,1,2,-
67
- B m7b5 2,2,1,2 2,3,1,4
68
- B m7b5 4,2,1,0 4,2,1,-
69
- B maj7 3,3,2,2 2,3,1,1
70
- B maj7 4,3,2,1 4,3,2,1
71
- B sus 4,4,2,2 3,4,1,1
72
- C 0,0,0,3 -,-,-,1
73
- C 0,4,0,3 -,2,-,1
74
- C 0,4,3,3 -,2,1,1
75
- C# 1,1,1,4 1,1,1,4
76
- C 5 0,0,3,3 -,-,1,1
77
- C# 5 1,1,4,4 1,1,3,4
78
- C 7 0,0,0,1 -,-,-,1
79
- C 7 3,4,3,3 1,2,1,1
80
- C# 7 1,1,1,2 1,1,1,2
81
- C 7sus 0,0,1,1 -,-,1,1
70
+ A# maj7 2,2,1,1 3,4,1,2
71
+ A# maj7 2,2,1,0 3,4,1,-
72
+ A# sus 3,3,1,1 3,4,1,1
73
+
74
+ B 4,3,2,2 3,2,1,1
75
+ B 7 2,3,2,2 1,2,1,1
76
+ B 7 4,3,2,0 3,2,1,-
77
+ B 7 2,3,2,0 1,3,2,-
78
+ B 7sus 2,4,2,2 1,3,1,1
79
+ B 7sus 4,4,2,0 3,4,1,-
80
+ B 7sus 4,4,0,0 3,4,-,-
81
+ B 7sus 2,4,0,2 1,4,-,2
82
+ B 9 2,3,2,4 1,3,2,4
83
+ B aug 4,3,3,2 4,2,3,1
84
+ B aug 0,3,3,2 -,2,3,1
85
+ B dim 4,2,1,2 4,2,1,3
86
+ B dim7 1,2,1,2 1,3,2,4
87
+ B m 4,2,2,2 3,1,1,1
88
+ B m7 2,2,2,2 1,1,1,1
89
+ B m7 4,2,2,0 4,1,2,-
90
+ B m7b5 2,2,1,2 2,3,1,4
91
+ B m7b5 4,2,1,0 4,2,1,-
92
+ B m7b5 2,2,1,0 2,3,1,-
93
+ B maj7 3,3,2,2 2,3,1,1
94
+ B maj7 4,3,2,1 4,3,2,1
95
+ B sus 4,4,2,2 3,4,1,1
96
+
97
+ C 0,0,0,3 -,-,-,3
98
+ C 0,4,0,3 -,2,-,1
99
+ C 0,4,3,3 -,2,1,1
100
+ C 5 0,0,3,3 -,-,1,1
101
+ C 7 0,0,0,1 -,-,-,1
102
+ C 7 3,4,3,3 1,2,1,1
103
+ C 7 3,4,3,1 2,4,3,1
104
+ C 7 3,0,0,1 3,-,-,1
105
+ C 7sus 0,0,1,1 -,-,1,1
106
+ C 7sus 3,0,1,1 3,-,1,1
107
+ C 7sus 3,0,1,3 3,-,1,4
108
+ C 9 3,0,0,1 3,-,-,1
109
+ C 9 0,2,0,1 -,2,-,1
110
+ C 9 3,2,0,3 2,1,-,3
111
+ C aug 1,0,0,3 1,-,-,3
112
+ C aug 1,4,0,3 1,4,-,3
113
+ C aug 1,4,4,3 1,3,4,2
114
+ C m 0,3,3,3 -,1,1,1
115
+ C m7 3,3,3,3 1,1,1,1
116
+ C m7 0,3,3,1 -,2,3,1
117
+ C m7 3,3,3,1 2,3,4,1
118
+ C m7b5 3,3,2,3 2,3,1,4
119
+ C m7b5 3,3,2,1 3,4,2,1
120
+ C maj7 0,0,0,2 -,-,-,2
121
+ C maj7 4,4,3,3 2,3,1,1
122
+ C maj7 4,0,0,2 3,-,-,1
123
+ C maj7 0,4,0,2 -,3,-,1
124
+ C sus 0,0,1,3 -,-,1,3
125
+
126
+ C# 1,1,1,4 1,1,1,4
127
+ C# 5 1,1,4,4 1,1,3,4
128
+ C# 7 1,1,1,2 1,1,1,2
129
+ C# 7 4,1,1,2 4,1,1,2
130
+ C# 7 4,1,1,4 3,1,1,4
82
131
  C# 7sus 1,1,2,2 1,2,3,4
83
- C 9 0,2,0,3 -,1,-,2
84
- C# 9 1,3,1,4 1,3,1,4
85
- C aug 1,0,0,3 1,-,-,4
86
- C aug 1,4,0,3 1,4,-,3
87
- C aug 1,4,4,3 1,3,4,2
88
- C# dim 0,1,0,4 -,1,-,4
89
- C# dim 0,4,0,4 -,1,-,2
90
- C# dim 0,4,3,4 -,2,1,3
91
- C m 0,3,3,3 -,1,1,1
92
- C# m 1,1,0,4 1,2,-,4
93
- C# m 1,4,0,4 1,3,-,4
94
- C# m 1,4,4,4 1,4,4,4
95
- C# m7 1,1,0,2 1,2,-,4
96
- C m7 3,3,3,3 1,1,1,1
97
- C# m7 4,4,4,4 1,1,1,1
98
- C# m7b5 0,1,0,2 -,1,-,2
99
- C m7b5 3,3,2,3 2,3,1,4
132
+ C# 7sus 4,1,2,2 4,1,3,2
133
+ C# 7sus 4,1,2,4 3,1,2,4
134
+ C# 9 1,3,1,2 1,3,1,2
135
+ C# 9 4,3,1,4 3,2,1,4
136
+ C# dim 0,1,0,4 -,1,-,4
137
+ C# dim 0,4,0,4 -,3,-,4
138
+ C# dim 0,4,3,4 -,3,2,4
139
+ C# m 1,1,0,4 1,2,-,4
140
+ C# m 1,4,0,4 1,3,-,4
141
+ C# m 1,4,4,4 1,4,4,4
142
+ C# m7 1,1,0,2 1,2,-,3
143
+ C# m7 4,4,4,4 1,1,1,1
144
+ C# m7 4,1,0,2 4,1,0,2
145
+ C# m7 1,4,0,2 1,4,0,2
146
+ C# m7b5 0,1,0,2 -,1,-,3
100
147
  C# m7b5 4,4,3,4 2,3,1,4
101
- C maj7 0,0,0,2 -,-,-,1
148
+ C# m7b5 0,4,3,2 -,3,2,1
149
+ C# m7b5 0,4,0,2 -,3,-,1
102
150
  C# maj7 1,0,1,4 1,-,2,4
103
151
  C# maj7 1,1,1,3 1,1,1,3
104
- C maj7 4,4,3,3 2,3,1,1
105
- C sus 0,0,1,3 -,-,1,3
106
- C# sus 1,1,2,4 1,1,2,4
107
- D# 0,3,3,1 -,3,4,1
108
- D 2,2,2,0 1,2,3,-
109
- D# 3,3,3,1 2,3,4,1
110
- D 7 2,2,2,3 1,1,1,2
111
- D# 7 3,3,3,4 1,1,1,2
112
- D 7sus 2,2,3,3 1,1,2,3
113
- D# 7sus 3,3,4,4 1,1,2,3
114
- D# 9 0,3,1,1 -,3,1,1
115
- D# dim 2,3,2,0 1,3,2,-
116
- D m 2,2,1,0 2,3,1,-
117
- D# m 3,3,2,1 3,4,2,1
118
- D m7 2,2,1,3 2,3,1,4
119
- D# m7 3,3,2,4 2,3,1,4
120
- D m7b5 1,2,1,3 1,3,2,4
152
+ C# maj7 1,0,1,3 1,0,2,4
153
+ C# sus 1,1,2,4 1,1,2,4
154
+
155
+ D 2,2,2,0 1,2,3,-
156
+ D 7 2,2,2,3 1,1,1,2
157
+ D 7 2,0,2,0 1,-,3,-
158
+ D 7 2,0,2,3 1,-,2,3
159
+ D 7sus 2,2,3,3 1,2,3,4
160
+ D 7sus 0,2,3,3 -,1,2,3
161
+ D m 2,2,1,0 2,3,1,-
162
+ D m7 2,2,1,3 2,3,1,4
163
+ D m7 2,0,1,0 2,-,1,-
164
+ D m7 2,0,1,3 2,-,1,4
165
+ D m7b5 1,2,1,3 1,2,1,3
166
+ D m7b5 1,0,1,3 1,0,2,4
167
+ D maj7 2,2,2,4 1,1,1,3
168
+ D maj7 2,1,2,4 2,1,3,4
169
+ D maj7 2,1,2,0 2,1,3,-
170
+ D sus 0,2,3,0 -,2,3,-
171
+ D sus 2,2,3,0 1,2,3,-
172
+
173
+ D# 0,3,3,1 -,3,4,1
174
+ D# 3,3,3,1 2,3,4,1
175
+ D# 7 3,3,3,4 1,1,1,2
176
+ D# 7 0,1,3,1 -,1,3,1
177
+ D# 7 3,1,3,1 3,1,4,1
178
+ D# 7 0,3,3,4 -,1,1,2
179
+ D# 7 3,1,3,4 2,1,3,4
180
+ D# 7sus 3,3,4,4 1,2,3,4
181
+ D# 9 0,1,1,1 -,1,1,1
182
+ D# 9 0,3,1,4 -,2,1,4
183
+ D# dim 2,3,2,0 2,1,3,-
184
+ D# m 3,3,2,1 3,4,2,1
185
+ D# m7 3,3,2,4 2,3,1,4
121
186
  D# m7b5 2,3,2,4 1,3,2,4
122
- D maj7 2,2,2,4 1,1,1,3
123
- D sus 0,2,3,0 -,1,2,-
124
- D# sus 1,3,4,1 1,3,4,1
125
- D sus 2,2,3,0 1,2,3,-
126
- D# sus 3,3,4,1 2,3,4,1
127
- E 1,4,0,2 1,4,-,2
128
- E 1,4,4,2 1,4,3,2
129
- E 4,4,4,2 2,3,4,1
130
- E 5 4,4,0,2 3,4,-,1
131
- E 7 1,2,0,2 1,2,-,3
132
- E 7sus 2,2,0,2 1,2,-,3
133
- E 7sus 4,2,0,0 3,1,-,-
134
- E 9 1,4,2,2 1,4,2,3
135
- E dim 0,4,0,1 -,4,-,1
136
- E dim 0,4,3,1 -,4,3,1
137
- E dim 3,4,3,1 2,4,3,1
138
- E m 0,4,0,2 -,3,-,1
139
- E m 0,4,3,2 -,3,2,1
140
- E m 4,4,3,2 3,4,2,1
141
- E m7 0,2,0,2 -,1,-,2
142
- E m7b5 0,2,0,1 -,2,-,1
143
- E maj7 1,3,0,2 1,3,-,2
144
- E sus 2,4,0,2 1,4,-,2
145
- E sus 4,4,0,0 3,4,-,-
146
- F 2,0,1,0 2,-,1,-
147
- F 2,0,1,3 2,-,1,4
148
- F# 3,1,2,1 3,1,2,1
149
- F# 3,1,2,4 3,1,2,4
150
- F 7 2,3,1,3 2,3,1,4
151
- F# 7 3,4,2,4 2,3,1,4
152
- F 7sus 3,3,1,3 2,3,1,4
187
+ D# sus 1,3,4,1 1,3,4,1
188
+ D# sus 3,3,4,1 2,3,4,1
189
+
190
+ E 1,4,0,2 1,4,-,2
191
+ E 1,4,4,2 1,4,3,2
192
+ E 4,4,4,2 2,3,4,1
193
+ E 5 4,4,0,2 3,4,-,1
194
+ E 7 1,2,0,2 1,2,-,3
195
+ E 7 1,2,4,2 1,2,4,3
196
+ E 7 4,2,4,2 3,1,4,2
197
+ E 7sus 2,2,0,2 1,2,-,3
198
+ E 7sus 2,2,0,0 2,3,-,-
199
+ E 7sus 4,2,0,0 3,1,-,-
200
+ E 9 1,2,2,2 1,2,3,4
201
+ E 9 1,4,2,2 1,4,2,3
202
+ E dim 0,4,0,1 -,4,-,1
203
+ E dim 0,4,3,1 -,4,3,1
204
+ E dim 3,4,3,1 2,4,3,1
205
+ E m 0,4,3,2 -,3,2,1
206
+ E m 0,4,0,2 -,3,-,1
207
+ E m 4,4,3,2 3,4,2,1
208
+ E m7 0,2,0,2 -,2,-,3
209
+ E m7 0,2,3,2 -,2,4,3
210
+ E m7b5 0,2,0,1 -,2,-,1
211
+ E m7b5 0,2,3,1 -,2,3,1
212
+ E m7b5 3,2,3,1 3,2,4,1
213
+ E maj7 1,3,0,2 1,3,-,2
214
+ E maj7 4,3,4,2 3,2,4,1
215
+ E maj7 1,3,4,2 1,3,4,2
216
+ E sus 2,4,0,2 1,4,-,2
217
+ E sus 4,4,0,0 3,4,-,-
218
+
219
+ F 2,0,1,0 2,-,1,-
220
+ F 2,0,1,3 2,-,1,4
221
+ F 7 2,3,1,3 2,3,1,4
222
+ F 7 2,3,1,0 2,3,1,-
223
+ F 7sus 3,3,1,3 2,3,1,4
224
+ F 7sus 3,3,1,1 3,4,1,1
225
+ F 9 2,3,3,3 1,2,3,4
226
+ F 9 0,3,1,0 -,3,1,-
227
+ F m 1,0,1,3 1,-,2,4
228
+ F m7 1,3,1,3 1,3,1,4
229
+ F m7 1,3,4,3 1,2,4,3
230
+ F m7b5 1,3,1,2 1,3,1,2
231
+ F maj7 2,4,1,3 2,4,1,3
232
+ F sus 3,0,1,1 3,-,1,1
233
+ F sus 3,0,1,3 3,-,1,4
234
+
235
+ F# 3,1,2,1 3,1,2,1
236
+ F# 3,1,2,4 3,1,2,4
237
+ F# 7 3,4,2,4 2,3,1,4
153
238
  F# 7sus 4,4,2,4 2,3,1,4
154
- F 9 0,0,1,0 -,-,1,-
155
- F# 9 1,1,2,1 1,1,2,1
156
- F# dim 2,0,2,0 1,-,2,-
157
- F# dim 2,0,2,3 1,-,2,4
158
- F m 1,0,1,3 1,-,2,4
159
- F# m 2,1,2,0 2,1,3,-
160
- F# m 2,1,2,4 2,1,3,4
161
- F m7 1,3,1,3 1,3,1,4
162
- F# m7 2,4,2,4 1,3,1,4
163
- F m7b5 1,3,1,2 1,3,1,2
239
+ F# 7sus 4,4,2,2 3,4,1,1
240
+ F# 9 1,1,0,1 1,2,-,3
241
+ F# 9 3,4,4,4 1,2,3,4
242
+ F# 9 1,4,2,1 1,4,2,1
243
+ F# dim 2,0,2,0 1,-,2,-
244
+ F# dim 2,0,2,3 1,-,2,4
245
+ F# m 2,1,2,0 2,1,3,-
246
+ F# m 2,1,2,4 2,1,3,4
247
+ F# m7 2,4,2,4 1,3,2,4
164
248
  F# m7b5 2,4,2,3 1,3,1,2
165
- F maj7 2,4,1,3 2,4,1,3
166
- F sus 3,0,1,1 3,-,1,1
167
- F sus 3,0,1,3 3,-,1,4
168
- F# sus 4,1,2,2 4,1,3,2
169
- F# sus 4,1,2,4 3,1,2,4
170
- G 0,2,3,2 -,1,3,2
171
- G# 1,3,4,3 1,2,4,3
172
- G 4,2,3,2 3,1,2,1
173
- G 7 0,2,1,2 -,2,1,3
174
- G# 7 1,3,2,3 1,3,2,4
175
- G 7sus 0,2,1,3 -,2,1,4
249
+ F# sus 4,1,2,2 4,1,2,3
250
+ F# sus 4,1,2,4 3,1,2,4
251
+
252
+ G 0,2,3,2 -,1,3,2
253
+ G 4,2,3,2 3,1,2,1
254
+ G 7 0,2,1,2 -,2,1,3
255
+ G 7sus 0,2,1,3 -,2,1,3
256
+ G 9 2,2,3,2 1,1,2,1
257
+ G 9 4,2,3,0 3,1,2,-
258
+ G 9 4,2,1,0 4,2,1,-
259
+ G dim 0,1,3,1 -,1,3,2
260
+ G dim 3,1,3,1 4,1,3,2
261
+ G dim 3,1,3,4 2,1,3,4
262
+ G m 0,2,3,1 -,2,3,1
263
+ G m 3,2,3,1 2,3,4,1
264
+ G m7 0,2,1,1 -,2,1,1
265
+ G m7b5 0,1,1,1 -,1,1,1
266
+ G maj7 0,2,2,2 -,1,1,1
267
+ G sus 0,2,3,3 -,1,2,3
268
+
269
+ G# 1,3,4,3 1,2,4,3
270
+ G# 7 1,3,2,3 1,3,2,4
176
271
  G# 7sus 1,3,2,4 1,3,2,4
177
- G 9 2,2,3,2 1,1,2,1
178
- G# 9 3,3,4,3 1,1,2,1
179
- G 9 4,2,3,0 3,1,2,-
180
- G dim 0,1,3,1 -,1,3,1
181
- G# dim 1,2,4,2 1,2,4,3
182
- G dim 3,1,3,1 4,1,3,1
183
- G dim 3,1,3,4 2,1,3,4
184
- G# dim 4,2,4,2 3,1,4,1
185
- G m 0,2,3,1 -,2,3,1
186
- G# m 1,3,4,2 1,3,4,2
187
- G m 3,2,3,1 2,3,4,1
188
- G# m 4,3,4,2 3,2,4,1
189
- G m7 0,2,1,1 -,2,1,1
190
- G# m7 1,3,2,2 1,4,2,3
191
- G m7b5 0,1,1,1 -,1,1,1
272
+ G# 9 1,0,2,1 1,-,3,2
273
+ G# 9 3,3,4,3 1,1,2,1
274
+ G# dim 1,2,4,2 1,2,4,3
275
+ G# dim 4,2,4,2 3,1,4,2
276
+ G# m 4,3,4,2 3,2,4,1
277
+ G# m 1,3,4,2 1,3,4,2
278
+ G# m7 1,3,2,2 1,4,2,3
192
279
  G# m7b5 1,2,2,2 1,2,3,4
193
- G maj7 0,2,2,2 -,1,1,1
194
280
  G# maj7 0,3,4,3 -,1,3,2
195
281
  G# maj7 1,3,3,3 1,2,3,4
196
- G sus 0,2,3,3 -,1,2,3
197
- G# sus 1,3,4,4 1,2,3,4
282
+ G# sus 1,3,4,4 1,2,3,4
198
283
  CHORDS_RAW
199
284
 
200
- CHORDS = Hash.new{ |h, k| h[k] = [] }
285
+ CHORDS = Hash.new { |h, k| h[k] = [] }
201
286
 
202
- CHORDS_RAW.split($/).each{ |line|
287
+ CHORDS_RAW.split($/).delete_if(&:empty?).each do |line|
203
288
  chord = Chord.new(line)
204
289
  CHORDS[chord.name] << chord
205
- }
290
+
291
+ equivalent = ENHARMONIC_EQUIVALENTS[chord.key]
292
+
293
+ if equivalent
294
+ equivalent_line = line.sub(chord.key, equivalent)
295
+ equivalent_chord = Chord.new(equivalent_line)
296
+ CHORDS[equivalent_chord.name] << equivalent_chord
297
+ end
298
+ end
206
299
  end
@@ -1,4 +1,4 @@
1
1
  class Uke
2
- VERSION = "1.0.1".freeze
2
+ VERSION = "1.0.2".freeze
3
3
  end
4
4
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: uke
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Lelis
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-10-09 00:00:00.000000000 Z
11
+ date: 2018-11-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rationalist
@@ -79,7 +79,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
79
79
  version: '0'
80
80
  requirements: []
81
81
  rubyforge_project:
82
- rubygems_version: 2.7.6
82
+ rubygems_version: 2.7.7
83
83
  signing_key:
84
84
  specification_version: 4
85
85
  summary: "\U0001D11D Displays popular ukulele chords"