fretboard 1.3.0 → 1.4.0

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: 8ce78fbd618190dec7aab13a7f9c8a2d58bc074cd90a035eabfc03a9091ca435
4
- data.tar.gz: bdfff345ca8d38dd4739061595e5f7cbf92ce0cf624237a8580ad2e83c10ce16
3
+ metadata.gz: 4f3d2267dc3150e8596d7c0a9d248a8161177ad1a53d3982e89e88815dc8617c
4
+ data.tar.gz: cdfd41f36bf68b132948f46a7609abbfdd461e142d1dc4d955a454a9951a157f
5
5
  SHA512:
6
- metadata.gz: a4175ec01b4eac24ae120b1dd6b41ed5f1ceff0fe9fd32edea143cf04c7a59b5dcd6b75f1a6035e88e766ab6ccfa8ac90519c9dd10501bd6ec9971b45d6d991b
7
- data.tar.gz: f664ab61567eec56eb49dfb9f9a52da3d1e72d5518def62e6716cea380ed136ec2de2cccb0c60d6fa940b87c820f2ca0932cccc0d5246b08cd09029904da0982
6
+ metadata.gz: 40a4681d1fdccfc22ce8064e962a173959cd27d2d460782e46f1fef522282788b4382410f8c52a0c6486d63edfe445b1443fc28cc5435aa936d86c0ff011b435
7
+ data.tar.gz: '09ba227d1c571b126afbf18dd4e61cdc8b612c5c87d59ed70d1a13edac65dd30a8d883b98247ef57bfbfa1f5f5361f4f71b4754797a0ce7f0d55df307a8bc49c'
data/README.md CHANGED
@@ -62,14 +62,29 @@ bundle exec fretboard --draw-tuning standart
62
62
  ### Available tunings:
63
63
 
64
64
  - Standart (`standart`)
65
- - Drop C (`drop_c`)
66
- - Drop D (`drop_d`)
67
- - Double Drop D (`double_drop_d`)
65
+ - A Tuning (`tuning_a`)
68
66
  - Open A (`open_a`)
67
+ - Drop A (`drop_a`)
68
+ - Drop A# (`drop_a_sharp`)
69
+ - Drop Ab (`drop_a_flat`)
70
+ - B Tuning (`tuning_b`)
71
+ - Open B (`open_b`)
72
+ - Drop B (`drop_b`)
73
+ - Drop Bb (`drop_b_flat`)
74
+ - C Tuning (`tuning_c`)
69
75
  - Open C (`open_c`)
76
+ - Drop C (`drop_c`)
77
+ - D Tuning (`tuning_d`)
70
78
  - Open D (`open_d`)
71
79
  - Open D Minor (`open_d_minor`)
80
+ - Drop D (`drop_d`)
81
+ - Double Drop D (`double_drop_d`)
82
+ - Modal D (`modal_d`)
83
+ - Open E (`open_e`)
84
+ - F Tuning (`tuning_f`)
85
+ - Open F (`open_f`)
86
+ - G Tuning (`tuning_g`)
72
87
  - Open G (`open_g`)
73
88
  - Open G Minor (`open_g_minor`)
74
- - Modal D (`modal_d`)
89
+ - Drop G# (`drop_g_sharp`)
75
90
  - Modal G (`modal_g`)
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
4
  unless File.exist?('./Gemfile')
4
5
  abort 'Please run fretboard from the root of the project'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  lib = File.expand_path('lib', __dir__)
2
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
5
 
@@ -21,5 +23,5 @@ Gem::Specification.new do |spec|
21
23
 
22
24
  spec.add_dependency 'colorize', '~> 0.8.1'
23
25
  spec.add_dependency 'terminal-table', '~> 1.8.0'
24
- spec.add_development_dependency 'rubocop', '= 0.88'
26
+ spec.add_development_dependency 'rubocop', '~> 1.3.0'
25
27
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'fretboard/builder'
2
4
  # require 'fretboard/constants'
3
5
  require 'fretboard/note'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # require 'active_support/core_ext/hash'
2
4
 
3
5
  require 'fretboard/console'
@@ -6,16 +8,31 @@ module Fretboard
6
8
  class Builder
7
9
  # fretboard = Fretboard::Builder.new(:standart)
8
10
  # fretboard = Fretboard::Builder.standart
9
- # fretboard = Fretboard::Builder.drop_c
10
- # fretboard = Fretboard::Builder.drop_d
11
- # fretboard = Fretboard::Builder.double_drop_d
11
+ # fretboard = Fretboard::Builder.tuning_a
12
12
  # fretboard = Fretboard::Builder.open_a
13
+ # fretboard = Fretboard::Builder.drop_a
14
+ # fretboard = Fretboard::Builder.drop_a_sharp
15
+ # fretboard = Fretboard::Builder.drop_a_flat
16
+ # fretboard = Fretboard::Builder.tuning_b
17
+ # fretboard = Fretboard::Builder.open_b
18
+ # fretboard = Fretboard::Builder.drop_b
19
+ # fretboard = Fretboard::Builder.drop_b_flat
20
+ # fretboard = Fretboard::Builder.tuning_c
13
21
  # fretboard = Fretboard::Builder.open_c
22
+ # fretboard = Fretboard::Builder.drop_c
23
+ # fretboard = Fretboard::Builder.tuning_d
14
24
  # fretboard = Fretboard::Builder.open_d
15
25
  # fretboard = Fretboard::Builder.open_d_minor
26
+ # fretboard = Fretboard::Builder.drop_d
27
+ # fretboard = Fretboard::Builder.double_drop_d
28
+ # fretboard = Fretboard::Builder.modal_d
29
+ # fretboard = Fretboard::Builder.open_e
30
+ # fretboard = Fretboard::Builder.tuning_f
31
+ # fretboard = Fretboard::Builder.open_f
32
+ # fretboard = Fretboard::Builder.tuning_g
16
33
  # fretboard = Fretboard::Builder.open_g
17
34
  # fretboard = Fretboard::Builder.open_g_minor
18
- # fretboard = Fretboard::Builder.modal_d
35
+ # fretboard = Fretboard::Builder.drop_g_sharp
19
36
  # fretboard = Fretboard::Builder.modal_g
20
37
 
21
38
  # fretboard.build
@@ -26,16 +43,31 @@ module Fretboard
26
43
 
27
44
  # METHODS_NAMES = %i[
28
45
  # standart
29
- # drop_c
30
- # drop_d
31
- # double_drop_d
46
+ # tuning_a
32
47
  # open_a
48
+ # drop_a
49
+ # drop_a_sharp
50
+ # drop_a_flat
51
+ # tuning_b
52
+ # open_b
53
+ # drop_b
54
+ # drop_b_flat
55
+ # tuning_c
33
56
  # open_c
57
+ # drop_c
58
+ # tuning_d
34
59
  # open_d
35
60
  # open_d_minor
61
+ # drop_d
62
+ # double_drop_d
63
+ # modal_d
64
+ # open_e
65
+ # tuning_f
66
+ # open_f
67
+ # tuning_g
36
68
  # open_g
37
69
  # open_g_minor
38
- # modal_d
70
+ # drop_g_sharp
39
71
  # modal_g
40
72
  # ].freeze
41
73
 
@@ -51,26 +83,58 @@ module Fretboard
51
83
  new(:standart, number_of_frets)
52
84
  end
53
85
 
54
- def self.drop_c(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
55
- new(:drop_c, number_of_frets)
86
+ def self.tuning_a(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
87
+ new(:tuning_a, number_of_frets)
56
88
  end
57
89
 
58
- def self.drop_d(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
59
- new(:drop_d, number_of_frets)
90
+ def self.open_a(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
91
+ new(:open_a, number_of_frets)
60
92
  end
61
93
 
62
- def self.double_drop_d(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
63
- new(:double_drop_d, number_of_frets)
94
+ def self.drop_a(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
95
+ new(:drop_a, number_of_frets)
64
96
  end
65
97
 
66
- def self.open_a(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
67
- new(:open_a, number_of_frets)
98
+ def self.drop_a_sharp(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
99
+ new(:drop_a_sharp, number_of_frets)
100
+ end
101
+
102
+ def self.drop_a_flat(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
103
+ new(:drop_a_flat, number_of_frets)
104
+ end
105
+
106
+ def self.tuning_b(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
107
+ new(:tuning_b, number_of_frets)
108
+ end
109
+
110
+ def self.open_b(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
111
+ new(:open_b, number_of_frets)
112
+ end
113
+
114
+ def self.drop_b(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
115
+ new(:drop_b, number_of_frets)
116
+ end
117
+
118
+ def self.drop_b_flat(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
119
+ new(:drop_b_flat, number_of_frets)
120
+ end
121
+
122
+ def self.tuning_c(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
123
+ new(:tuning_c, number_of_frets)
68
124
  end
69
125
 
70
126
  def self.open_c(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
71
127
  new(:open_c, number_of_frets)
72
128
  end
73
129
 
130
+ def self.drop_c(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
131
+ new(:drop_c, number_of_frets)
132
+ end
133
+
134
+ def self.tuning_d(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
135
+ new(:tuning_d, number_of_frets)
136
+ end
137
+
74
138
  def self.open_d(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
75
139
  new(:open_d, number_of_frets)
76
140
  end
@@ -79,6 +143,34 @@ module Fretboard
79
143
  new(:open_d_minor, number_of_frets)
80
144
  end
81
145
 
146
+ def self.drop_d(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
147
+ new(:drop_d, number_of_frets)
148
+ end
149
+
150
+ def self.double_drop_d(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
151
+ new(:double_drop_d, number_of_frets)
152
+ end
153
+
154
+ def self.modal_d(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
155
+ new(:modal_d, number_of_frets)
156
+ end
157
+
158
+ def self.open_e(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
159
+ new(:open_e, number_of_frets)
160
+ end
161
+
162
+ def self.tuning_f(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
163
+ new(:tuning_f, number_of_frets)
164
+ end
165
+
166
+ def self.open_f(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
167
+ new(:open_f, number_of_frets)
168
+ end
169
+
170
+ def self.tuning_g(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
171
+ new(:tuning_g, number_of_frets)
172
+ end
173
+
82
174
  def self.open_g(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
83
175
  new(:open_g, number_of_frets)
84
176
  end
@@ -87,8 +179,8 @@ module Fretboard
87
179
  new(:open_g_minor, number_of_frets)
88
180
  end
89
181
 
90
- def self.modal_d(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
91
- new(:modal_d, number_of_frets)
182
+ def self.drop_g_sharp(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
183
+ new(:drop_g_sharp, number_of_frets)
92
184
  end
93
185
 
94
186
  def self.modal_g(number_of_frets = DEFAULT_NUMBER_OF_FRETS)
@@ -163,9 +255,10 @@ module Fretboard
163
255
  open_note = string_notes[0]
164
256
 
165
257
  if open_note.is_a?(Array)
166
- open_note = if sharp_or_flat == :both
258
+ open_note = case sharp_or_flat
259
+ when :both
167
260
  open_note.join('/')
168
- elsif sharp_or_flat == :sharp
261
+ when :sharp
169
262
  open_note.first
170
263
  else
171
264
  open_note.last
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'colorize'
2
4
  require 'terminal-table'
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fretboard
2
4
  module Constants
3
5
  # Fretboard::Constants.constants
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'fretboard/notes'
2
4
 
3
5
  module Fretboard
@@ -12,9 +14,10 @@ module Fretboard
12
14
  )
13
15
 
14
16
  if note.is_a?(Array)
15
- note = if sharp_or_flat == :both
17
+ note = case sharp_or_flat
18
+ when :both
16
19
  note.join('/')
17
- elsif sharp_or_flat == :sharp
20
+ when :sharp
18
21
  note.first
19
22
  else
20
23
  note.last
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fretboard
2
4
  class Notes
3
5
  # Fretboard::Notes.all(:both)
@@ -39,9 +41,10 @@ module Fretboard
39
41
  result = value
40
42
 
41
43
  if value.is_a?(Array)
42
- result = if sharp_or_flat == :both
44
+ result = case sharp_or_flat
45
+ when :both
43
46
  value.join('/')
44
- elsif sharp_or_flat == :sharp
47
+ when :sharp
45
48
  value.first
46
49
  else
47
50
  value.last
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'active_support/core_ext'
2
4
  require 'optparse'
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fretboard
2
4
  class Tunings
3
5
  # Fretboard::Tunings.get(:standart)
@@ -27,97 +29,298 @@ module Fretboard
27
29
  }
28
30
  },
29
31
 
30
- DROP_C: {
32
+ TUNING_A: {
31
33
  STRINGS: {
32
34
  1 => {
33
- NOTE: 'D'
35
+ NOTE: 'A'
34
36
  },
35
37
  2 => {
36
- NOTE: 'A'
38
+ NOTE: 'E'
37
39
  },
38
40
  3 => {
39
- NOTE: 'F'
41
+ NOTE: 'C'
40
42
  },
41
43
  4 => {
42
- NOTE: 'C'
44
+ NOTE: 'G'
43
45
  },
44
46
  5 => {
45
- NOTE: 'G'
47
+ NOTE: 'D'
46
48
  },
47
49
  6 => {
48
- NOTE: 'C'
50
+ NOTE: 'A'
49
51
  }
50
52
  }
51
53
  },
52
54
 
53
- DROP_D: {
55
+ OPEN_A: {
54
56
  STRINGS: {
55
57
  1 => {
56
58
  NOTE: 'E'
57
59
  },
58
60
  2 => {
59
- NOTE: 'B'
61
+ NOTE: 'A'
60
62
  },
61
63
  3 => {
62
- NOTE: 'G'
64
+ NOTE: 'E'
63
65
  },
64
66
  4 => {
65
- NOTE: 'D'
67
+ NOTE: [
68
+ 'C#',
69
+ 'Db'
70
+ ]
66
71
  },
67
72
  5 => {
68
73
  NOTE: 'A'
69
74
  },
70
75
  6 => {
71
- NOTE: 'D'
76
+ NOTE: 'E'
72
77
  }
73
78
  }
74
79
  },
75
80
 
76
- DOUBLE_DROP_D: {
81
+ DROP_A: {
77
82
  STRINGS: {
78
83
  1 => {
79
- NOTE: 'D'
84
+ NOTE: 'B'
80
85
  },
81
86
  2 => {
82
- NOTE: 'B'
87
+ NOTE: [
88
+ 'F#',
89
+ 'Gb'
90
+ ]
83
91
  },
84
92
  3 => {
85
- NOTE: 'G'
93
+ NOTE: 'D'
86
94
  },
87
95
  4 => {
88
- NOTE: 'D'
96
+ NOTE: 'A'
89
97
  },
90
98
  5 => {
91
- NOTE: 'A'
99
+ NOTE: 'E'
92
100
  },
93
101
  6 => {
94
- NOTE: 'D'
102
+ NOTE: 'A'
95
103
  }
96
104
  }
97
105
  },
98
106
 
99
- OPEN_A: {
107
+ DROP_A_SHARP: {
100
108
  STRINGS: {
101
109
  1 => {
102
- NOTE: 'E'
110
+ NOTE: 'C'
103
111
  },
104
112
  2 => {
105
- NOTE: 'A'
113
+ NOTE: 'G'
106
114
  },
107
115
  3 => {
108
- NOTE: 'E'
116
+ NOTE: [
117
+ 'D#',
118
+ 'Eb'
119
+ ]
109
120
  },
110
121
  4 => {
122
+ NOTE: [
123
+ 'A#',
124
+ 'Bb'
125
+ ]
126
+ },
127
+ 5 => {
128
+ NOTE: 'F'
129
+ },
130
+ 6 => {
131
+ NOTE: [
132
+ 'A#',
133
+ 'Bb'
134
+ ]
135
+ }
136
+ }
137
+ },
138
+
139
+ DROP_A_FLAT: {
140
+ STRINGS: {
141
+ 1 => {
142
+ NOTE: [
143
+ 'A#',
144
+ 'Bb'
145
+ ]
146
+ },
147
+ 2 => {
148
+ NOTE: 'F'
149
+ },
150
+ 3 => {
111
151
  NOTE: [
112
152
  'C#',
113
153
  'Db'
114
154
  ]
115
155
  },
156
+ 4 => {
157
+ NOTE: [
158
+ 'G#',
159
+ 'Ab'
160
+ ]
161
+ },
116
162
  5 => {
163
+ NOTE: [
164
+ 'D#',
165
+ 'Eb'
166
+ ]
167
+ },
168
+ 6 => {
169
+ NOTE: [
170
+ 'G#',
171
+ 'Ab'
172
+ ]
173
+ }
174
+ }
175
+ },
176
+
177
+ TUNING_B: {
178
+ STRINGS: {
179
+ 1 => {
180
+ NOTE: 'B'
181
+ },
182
+ 2 => {
183
+ NOTE: [
184
+ 'F#',
185
+ 'Gb'
186
+ ]
187
+ },
188
+ 3 => {
189
+ NOTE: 'D'
190
+ },
191
+ 4 => {
117
192
  NOTE: 'A'
118
193
  },
194
+ 5 => {
195
+ NOTE: 'E'
196
+ },
119
197
  6 => {
198
+ NOTE: 'B'
199
+ }
200
+ }
201
+ },
202
+
203
+ OPEN_B: {
204
+ STRINGS: {
205
+ 1 => {
206
+ NOTE: [
207
+ 'D#',
208
+ 'Eb'
209
+ ]
210
+ },
211
+ 2 => {
212
+ NOTE: 'B'
213
+ },
214
+ 3 => {
215
+ NOTE: [
216
+ 'F#',
217
+ 'Gb'
218
+ ]
219
+ },
220
+ 4 => {
221
+ NOTE: 'B'
222
+ },
223
+ 5 => {
224
+ NOTE: [
225
+ 'F#',
226
+ 'Gb'
227
+ ]
228
+ },
229
+ 6 => {
230
+ NOTE: 'B'
231
+ }
232
+ }
233
+ },
234
+
235
+ DROP_B: {
236
+ STRINGS: {
237
+ 1 => {
238
+ NOTE: [
239
+ 'C#',
240
+ 'Db'
241
+ ]
242
+ },
243
+ 2 => {
244
+ NOTE: [
245
+ 'G#',
246
+ 'Ab'
247
+ ]
248
+ },
249
+ 3 => {
120
250
  NOTE: 'E'
251
+ },
252
+ 4 => {
253
+ NOTE: 'B'
254
+ },
255
+ 5 => {
256
+ NOTE: [
257
+ 'F#',
258
+ 'Gb'
259
+ ]
260
+ },
261
+ 6 => {
262
+ NOTE: 'B'
263
+ }
264
+ }
265
+ },
266
+
267
+ DROP_B_FLAT: {
268
+ STRINGS: {
269
+ 1 => {
270
+ NOTE: 'C'
271
+ },
272
+ 2 => {
273
+ NOTE: 'G'
274
+ },
275
+ 3 => {
276
+ NOTE: [
277
+ 'D#',
278
+ 'Eb'
279
+ ]
280
+ },
281
+ 4 => {
282
+ NOTE: [
283
+ 'A#',
284
+ 'Bb'
285
+ ]
286
+ },
287
+ 5 => {
288
+ NOTE: 'F'
289
+ },
290
+ 6 => {
291
+ NOTE: [
292
+ 'A#',
293
+ 'Bb'
294
+ ]
295
+ }
296
+ }
297
+ },
298
+
299
+ TUNING_C: {
300
+ STRINGS: {
301
+ 1 => {
302
+ NOTE: 'C'
303
+ },
304
+ 2 => {
305
+ NOTE: 'G'
306
+ },
307
+ 3 => {
308
+ NOTE: [
309
+ 'D#',
310
+ 'Eb'
311
+ ]
312
+ },
313
+ 4 => {
314
+ NOTE: [
315
+ 'A#',
316
+ 'Bb'
317
+ ]
318
+ },
319
+ 5 => {
320
+ NOTE: 'F'
321
+ },
322
+ 6 => {
323
+ NOTE: 'C'
121
324
  }
122
325
  }
123
326
  },
@@ -145,6 +348,52 @@ module Fretboard
145
348
  }
146
349
  },
147
350
 
351
+ DROP_C: {
352
+ STRINGS: {
353
+ 1 => {
354
+ NOTE: 'D'
355
+ },
356
+ 2 => {
357
+ NOTE: 'A'
358
+ },
359
+ 3 => {
360
+ NOTE: 'F'
361
+ },
362
+ 4 => {
363
+ NOTE: 'C'
364
+ },
365
+ 5 => {
366
+ NOTE: 'G'
367
+ },
368
+ 6 => {
369
+ NOTE: 'C'
370
+ }
371
+ }
372
+ },
373
+
374
+ TUNING_D: {
375
+ STRINGS: {
376
+ 1 => {
377
+ NOTE: 'D'
378
+ },
379
+ 2 => {
380
+ NOTE: 'A'
381
+ },
382
+ 3 => {
383
+ NOTE: 'F'
384
+ },
385
+ 4 => {
386
+ NOTE: 'C'
387
+ },
388
+ 5 => {
389
+ NOTE: 'G'
390
+ },
391
+ 6 => {
392
+ NOTE: 'D'
393
+ }
394
+ }
395
+ },
396
+
148
397
  OPEN_D: {
149
398
  STRINGS: {
150
399
  1 => {
@@ -194,10 +443,10 @@ module Fretboard
194
443
  }
195
444
  },
196
445
 
197
- OPEN_G: {
446
+ DROP_D: {
198
447
  STRINGS: {
199
448
  1 => {
200
- NOTE: 'D'
449
+ NOTE: 'E'
201
450
  },
202
451
  2 => {
203
452
  NOTE: 'B'
@@ -209,25 +458,175 @@ module Fretboard
209
458
  NOTE: 'D'
210
459
  },
211
460
  5 => {
461
+ NOTE: 'A'
462
+ },
463
+ 6 => {
464
+ NOTE: 'D'
465
+ }
466
+ }
467
+ },
468
+
469
+ DOUBLE_DROP_D: {
470
+ STRINGS: {
471
+ 1 => {
472
+ NOTE: 'D'
473
+ },
474
+ 2 => {
475
+ NOTE: 'B'
476
+ },
477
+ 3 => {
212
478
  NOTE: 'G'
213
479
  },
480
+ 4 => {
481
+ NOTE: 'D'
482
+ },
483
+ 5 => {
484
+ NOTE: 'A'
485
+ },
214
486
  6 => {
215
487
  NOTE: 'D'
216
488
  }
217
489
  }
218
490
  },
219
491
 
220
- OPEN_G_MINOR: {
492
+ MODAL_D: {
221
493
  STRINGS: {
222
494
  1 => {
223
495
  NOTE: 'D'
224
496
  },
225
497
  2 => {
498
+ NOTE: 'A'
499
+ },
500
+ 3 => {
501
+ NOTE: 'G'
502
+ },
503
+ 4 => {
504
+ NOTE: 'D'
505
+ },
506
+ 5 => {
507
+ NOTE: 'A'
508
+ },
509
+ 6 => {
510
+ NOTE: 'D'
511
+ }
512
+ }
513
+ },
514
+
515
+ OPEN_E: {
516
+ STRINGS: {
517
+ 1 => {
518
+ NOTE: 'E'
519
+ },
520
+ 2 => {
521
+ NOTE: 'B'
522
+ },
523
+ 3 => {
524
+ NOTE: [
525
+ 'G#',
526
+ 'Ab'
527
+ ]
528
+ },
529
+ 4 => {
530
+ NOTE: 'E'
531
+ },
532
+ 5 => {
533
+ NOTE: 'B'
534
+ },
535
+ 6 => {
536
+ NOTE: 'E'
537
+ }
538
+ }
539
+ },
540
+
541
+ TUNING_F: {
542
+ STRINGS: {
543
+ 1 => {
544
+ NOTE: 'F'
545
+ },
546
+ 2 => {
547
+ NOTE: 'C'
548
+ },
549
+ 3 => {
550
+ NOTE: [
551
+ 'G#',
552
+ 'Ab'
553
+ ]
554
+ },
555
+ 4 => {
556
+ NOTE: [
557
+ 'D#',
558
+ 'Eb'
559
+ ]
560
+ },
561
+ 5 => {
226
562
  NOTE: [
227
563
  'A#',
228
564
  'Bb'
229
565
  ]
230
566
  },
567
+ 6 => {
568
+ NOTE: 'F'
569
+ }
570
+ }
571
+ },
572
+
573
+ TUNING_G: {
574
+ STRINGS: {
575
+ 1 => {
576
+ NOTE: 'G'
577
+ },
578
+ 2 => {
579
+ NOTE: 'D'
580
+ },
581
+ 3 => {
582
+ NOTE: [
583
+ 'A#',
584
+ 'Bb'
585
+ ]
586
+ },
587
+ 4 => {
588
+ NOTE: 'F'
589
+ },
590
+ 5 => {
591
+ NOTE: 'C'
592
+ },
593
+ 6 => {
594
+ NOTE: 'G'
595
+ }
596
+ }
597
+ },
598
+
599
+ OPEN_F: {
600
+ STRINGS: {
601
+ 1 => {
602
+ NOTE: 'F'
603
+ },
604
+ 2 => {
605
+ NOTE: 'C'
606
+ },
607
+ 3 => {
608
+ NOTE: 'F'
609
+ },
610
+ 4 => {
611
+ NOTE: 'C'
612
+ },
613
+ 5 => {
614
+ NOTE: 'A'
615
+ },
616
+ 6 => {
617
+ NOTE: 'F'
618
+ }
619
+ }
620
+ },
621
+
622
+ OPEN_G: {
623
+ STRINGS: {
624
+ 1 => {
625
+ NOTE: 'D'
626
+ },
627
+ 2 => {
628
+ NOTE: 'B'
629
+ },
231
630
  3 => {
232
631
  NOTE: 'G'
233
632
  },
@@ -243,13 +642,16 @@ module Fretboard
243
642
  }
244
643
  },
245
644
 
246
- MODAL_D: {
645
+ OPEN_G_MINOR: {
247
646
  STRINGS: {
248
647
  1 => {
249
648
  NOTE: 'D'
250
649
  },
251
650
  2 => {
252
- NOTE: 'A'
651
+ NOTE: [
652
+ 'A#',
653
+ 'Bb'
654
+ ]
253
655
  },
254
656
  3 => {
255
657
  NOTE: 'G'
@@ -258,7 +660,7 @@ module Fretboard
258
660
  NOTE: 'D'
259
661
  },
260
662
  5 => {
261
- NOTE: 'A'
663
+ NOTE: 'G'
262
664
  },
263
665
  6 => {
264
666
  NOTE: 'D'
@@ -266,6 +668,44 @@ module Fretboard
266
668
  }
267
669
  },
268
670
 
671
+ DROP_G_SHARP: {
672
+ STRINGS: {
673
+ 1 => {
674
+ NOTE: [
675
+ 'A#',
676
+ 'Bb'
677
+ ]
678
+ },
679
+ 2 => {
680
+ NOTE: 'F'
681
+ },
682
+ 3 => {
683
+ NOTE: [
684
+ 'C#',
685
+ 'Db'
686
+ ]
687
+ },
688
+ 4 => {
689
+ NOTE: [
690
+ 'G#',
691
+ 'Ab'
692
+ ]
693
+ },
694
+ 5 => {
695
+ NOTE: [
696
+ 'D#',
697
+ 'Eb'
698
+ ]
699
+ },
700
+ 6 => {
701
+ NOTE: [
702
+ 'G#',
703
+ 'Ab'
704
+ ]
705
+ }
706
+ }
707
+ },
708
+
269
709
  MODAL_G: {
270
710
  STRINGS: {
271
711
  1 => {
@@ -1,6 +1,8 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fretboard
2
4
  MAJOR = 1
3
- MINOR = 3
5
+ MINOR = 4
4
6
  PATCH = 0
5
7
 
6
8
  VERSION = [
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fretboard
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Anton Sokolov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-07-29 00:00:00.000000000 Z
11
+ date: 2020-11-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: colorize
@@ -42,16 +42,16 @@ dependencies:
42
42
  name: rubocop
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '='
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0.88'
47
+ version: 1.3.0
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '='
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0.88'
54
+ version: 1.3.0
55
55
  description: Tools for working with the guitar fretboard
56
56
  email:
57
57
  - anton@sokolov.digital
@@ -92,7 +92,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
92
92
  - !ruby/object:Gem::Version
93
93
  version: '0'
94
94
  requirements: []
95
- rubygems_version: 3.1.2
95
+ rubygems_version: 3.1.4
96
96
  signing_key:
97
97
  specification_version: 4
98
98
  summary: Tools for working with the guitar fretboard