Sha256: c91093d0729bee61cc44ea235d7e1a4e05f9ae0f856e659c1fabcc20851e8207
Contents?: true
Size: 958 Bytes
Versions: 1
Compression:
Stored size: 958 Bytes
Contents
# frozen_string_literal: true module Coltrane module Cli # Interfaces chord functionality with the lib class Chord def initialize(*chords, notes: nil) Cli.config do |c| if c.on == :guitar c.on = :guitar_chords elsif c.on == :guitar_arm c.on = :guitar end end @chords = if !chords.empty? if chords[0].is_a?(String) chords.map { |c| Coltrane::Chord.new(name: c) } else chords end elsif !notes.nil? [Coltrane::Chord.new(notes: notes)] end raise BadChordError unless @chords @chords.each do |chord| desc = "#{chord.name} chord:" Coltrane::Cli::Notes.new chord.notes, desc: desc ColtraneSynth::Base.play(chord, 1) if Cli.config.sound end end end end end # rubocop:enable Metrics/MethodLength
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
coltrane-2.1.5 | lib/cli/chord.rb |