msd-fretboard 0.0.6 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README +46 -0
 - data/Rakefile +42 -0
 - data/bin/fb +1 -2
 - data/lib/fretboard.rb +19 -6
 - metadata +35 -9
 
    
        data/README
    ADDED
    
    | 
         @@ -0,0 +1,46 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #
         
     | 
| 
      
 2 
     | 
    
         
            +
            # = Fretboard -- class to be used to learn the guitar fretboard
         
     | 
| 
      
 3 
     | 
    
         
            +
            #
         
     | 
| 
      
 4 
     | 
    
         
            +
            # == Synopsis
         
     | 
| 
      
 5 
     | 
    
         
            +
            #
         
     | 
| 
      
 6 
     | 
    
         
            +
            #   This program provides configurable drilling sessions for learning
         
     | 
| 
      
 7 
     | 
    
         
            +
            #   the notes on the guitar fretboard.  Currently, the range of frets
         
     | 
| 
      
 8 
     | 
    
         
            +
            #   is constrained to only the first twelve.  Also, only the standard
         
     | 
| 
      
 9 
     | 
    
         
            +
            #   EADGBE tuning is supported by default but is easily changed in the
         
     | 
| 
      
 10 
     | 
    
         
            +
            #   code.
         
     | 
| 
      
 11 
     | 
    
         
            +
            #
         
     | 
| 
      
 12 
     | 
    
         
            +
            # == Examples
         
     | 
| 
      
 13 
     | 
    
         
            +
            #
         
     | 
| 
      
 14 
     | 
    
         
            +
            #   The following command invocation drills the user on only the first
         
     | 
| 
      
 15 
     | 
    
         
            +
            #   two strings (E and B):
         
     | 
| 
      
 16 
     | 
    
         
            +
            #     fretboard -s 1:2
         
     | 
| 
      
 17 
     | 
    
         
            +
            #
         
     | 
| 
      
 18 
     | 
    
         
            +
            #   The following command invocation constrains drilling to strings
         
     | 
| 
      
 19 
     | 
    
         
            +
            #   3 and 4 for only frets 7 through 12:
         
     | 
| 
      
 20 
     | 
    
         
            +
            #     fretboard -s 3:4 -f 7:12
         
     | 
| 
      
 21 
     | 
    
         
            +
            #
         
     | 
| 
      
 22 
     | 
    
         
            +
            # == Usage
         
     | 
| 
      
 23 
     | 
    
         
            +
            #   See Options below.
         
     | 
| 
      
 24 
     | 
    
         
            +
            #
         
     | 
| 
      
 25 
     | 
    
         
            +
            #   For help use: fretboard --help
         
     | 
| 
      
 26 
     | 
    
         
            +
            #
         
     | 
| 
      
 27 
     | 
    
         
            +
            # == Options
         
     | 
| 
      
 28 
     | 
    
         
            +
            #   -h, --help                    Display help message
         
     | 
| 
      
 29 
     | 
    
         
            +
            #   -t, --timeout SECONDS         Set timeout on user response
         
     | 
| 
      
 30 
     | 
    
         
            +
            #   -f MIN[:MAX]                  Set fret number(s) to drill
         
     | 
| 
      
 31 
     | 
    
         
            +
            #                                 (default 0-12)
         
     | 
| 
      
 32 
     | 
    
         
            +
            #   -s MIN[:MAX]                  Set string number(s) to drill
         
     | 
| 
      
 33 
     | 
    
         
            +
            #                                 (default 1-6)
         
     | 
| 
      
 34 
     | 
    
         
            +
            #   -d, --display [flat|sharp]    Show fretboard
         
     | 
| 
      
 35 
     | 
    
         
            +
            #   -l, --log LOGFILE             Log session score to LOGFILE
         
     | 
| 
      
 36 
     | 
    
         
            +
            #   -v, --version                 Show version
         
     | 
| 
      
 37 
     | 
    
         
            +
            #
         
     | 
| 
      
 38 
     | 
    
         
            +
            # == Author
         
     | 
| 
      
 39 
     | 
    
         
            +
            #   Mark DeWandel mailto:mark.dewandel@gmail.com
         
     | 
| 
      
 40 
     | 
    
         
            +
            #
         
     | 
| 
      
 41 
     | 
    
         
            +
            # == Copyright
         
     | 
| 
      
 42 
     | 
    
         
            +
            #   Copyright (c) 2009 Mark DeWandel.
         
     | 
| 
      
 43 
     | 
    
         
            +
            #
         
     | 
| 
      
 44 
     | 
    
         
            +
            #   This is free software; you can redistribute it and/or modify it under
         
     | 
| 
      
 45 
     | 
    
         
            +
            #   the terms of the GNU General Public License Version 2 as published by
         
     | 
| 
      
 46 
     | 
    
         
            +
            #   the Free Software Foundation: www.gnu.org/copyleft/gpl.html
         
     | 
    
        data/Rakefile
    ADDED
    
    | 
         @@ -0,0 +1,42 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'rake'
         
     | 
| 
      
 2 
     | 
    
         
            +
             
         
     | 
| 
      
 3 
     | 
    
         
            +
            begin
         
     | 
| 
      
 4 
     | 
    
         
            +
              require 'jeweler'
         
     | 
| 
      
 5 
     | 
    
         
            +
              Jeweler::Tasks.new do |gem|
         
     | 
| 
      
 6 
     | 
    
         
            +
                gem.name = "fretboard"
         
     | 
| 
      
 7 
     | 
    
         
            +
                gem.summary = "Program for learning the guitar fretboard"
         
     | 
| 
      
 8 
     | 
    
         
            +
                gem.email = "mark.dewandel@gmail.com"
         
     | 
| 
      
 9 
     | 
    
         
            +
                gem.homepage = "http://msd.github.com"
         
     | 
| 
      
 10 
     | 
    
         
            +
                # gem.extra_rdoc_files = FileList["README", "COPYING"]
         
     | 
| 
      
 11 
     | 
    
         
            +
                gem.authors = ["Mark DeWandel"]
         
     | 
| 
      
 12 
     | 
    
         
            +
                gem.files = FileList['lib/fretboard.rb', 'bin/fb', 'Rakefile',
         
     | 
| 
      
 13 
     | 
    
         
            +
                  'README', 'COPYING', 'doc/**/*']
         
     | 
| 
      
 14 
     | 
    
         
            +
                gem.executables = ['fb'] 
         
     | 
| 
      
 15 
     | 
    
         
            +
                gem.email = "mark.dewandel@gmail.com"
         
     | 
| 
      
 16 
     | 
    
         
            +
                gem.homepage = "http://msd.github.com"
         
     | 
| 
      
 17 
     | 
    
         
            +
                gem.has_rdoc = true
         
     | 
| 
      
 18 
     | 
    
         
            +
                # gem.test_files = FileList['tests/**/*'] 
         
     | 
| 
      
 19 
     | 
    
         
            +
                # gem.version = '0.0.7' 
         
     | 
| 
      
 20 
     | 
    
         
            +
                gem.add_dependency("term-ansicolor")
         
     | 
| 
      
 21 
     | 
    
         
            +
              end
         
     | 
| 
      
 22 
     | 
    
         
            +
            rescue LoadError
         
     | 
| 
      
 23 
     | 
    
         
            +
              puts "Jeweler, or one of its dependencies, is not available."
         
     | 
| 
      
 24 
     | 
    
         
            +
              puts "Install it with: sudo gem install technicalpickles-jeweler"
         
     | 
| 
      
 25 
     | 
    
         
            +
              puts "    -s http://gems.github.com"
         
     | 
| 
      
 26 
     | 
    
         
            +
            end
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
            require 'rake/testtask' 
         
     | 
| 
      
 29 
     | 
    
         
            +
            desc "Run basic tests"
         
     | 
| 
      
 30 
     | 
    
         
            +
            Rake::TestTask.new('test') do |t| 
         
     | 
| 
      
 31 
     | 
    
         
            +
              t.pattern = 'test/**/test_*.rb' 
         
     | 
| 
      
 32 
     | 
    
         
            +
              t.warning = true 
         
     | 
| 
      
 33 
     | 
    
         
            +
            end 
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
      
 35 
     | 
    
         
            +
            require 'rake/rdoctask'
         
     | 
| 
      
 36 
     | 
    
         
            +
            desc "Build RDOC documentation"
         
     | 
| 
      
 37 
     | 
    
         
            +
            Rake::RDocTask.new('rdoc') do |t| 
         
     | 
| 
      
 38 
     | 
    
         
            +
              t.rdoc_dir = 'doc'
         
     | 
| 
      
 39 
     | 
    
         
            +
              t.rdoc_files.include('README', 'lib/**/*.rb') 
         
     | 
| 
      
 40 
     | 
    
         
            +
              t.main = 'README' 
         
     | 
| 
      
 41 
     | 
    
         
            +
              t.title = "PlayingCards API documentation" 
         
     | 
| 
      
 42 
     | 
    
         
            +
            end 
         
     | 
    
        data/bin/fb
    CHANGED
    
    
    
        data/lib/fretboard.rb
    CHANGED
    
    | 
         @@ -45,15 +45,29 @@ require 'optparse' 
     | 
|
| 
       45 
45 
     | 
    
         
             
            require 'timeout'
         
     | 
| 
       46 
46 
     | 
    
         
             
            require 'pp'
         
     | 
| 
       47 
47 
     | 
    
         | 
| 
       48 
     | 
    
         
            -
             
     | 
| 
       49 
     | 
    
         
            -
            require ' 
     | 
| 
       50 
     | 
    
         
            -
             
     | 
| 
      
 48 
     | 
    
         
            +
            begin
         
     | 
| 
      
 49 
     | 
    
         
            +
              require 'rubygems'
         
     | 
| 
      
 50 
     | 
    
         
            +
              require 'term/ansicolor'
         
     | 
| 
      
 51 
     | 
    
         
            +
              include Term::ANSIColor
         
     | 
| 
      
 52 
     | 
    
         
            +
            rescue LoadError
         
     | 
| 
      
 53 
     | 
    
         
            +
              def green(args)
         
     | 
| 
      
 54 
     | 
    
         
            +
                args
         
     | 
| 
      
 55 
     | 
    
         
            +
              end
         
     | 
| 
      
 56 
     | 
    
         
            +
             
     | 
| 
      
 57 
     | 
    
         
            +
              def red(args)
         
     | 
| 
      
 58 
     | 
    
         
            +
                args
         
     | 
| 
      
 59 
     | 
    
         
            +
              end
         
     | 
| 
      
 60 
     | 
    
         
            +
             
     | 
| 
      
 61 
     | 
    
         
            +
              def bold(args)
         
     | 
| 
      
 62 
     | 
    
         
            +
                args
         
     | 
| 
      
 63 
     | 
    
         
            +
              end
         
     | 
| 
      
 64 
     | 
    
         
            +
            end
         
     | 
| 
       51 
65 
     | 
    
         | 
| 
       52 
66 
     | 
    
         
             
            # Fretboard class for learning the guitar fretboard.
         
     | 
| 
       53 
67 
     | 
    
         
             
            class Fretboard
         
     | 
| 
       54 
68 
     | 
    
         
             
              FRETS = 12
         
     | 
| 
       55 
69 
     | 
    
         
             
              STRINGS = 6
         
     | 
| 
       56 
     | 
    
         
            -
              VERSION = '0.0. 
     | 
| 
      
 70 
     | 
    
         
            +
              VERSION = '0.0.7'
         
     | 
| 
       57 
71 
     | 
    
         | 
| 
       58 
72 
     | 
    
         
             
              def self.display_version
         
     | 
| 
       59 
73 
     | 
    
         
             
                puts "#{File.basename(__FILE__)} version #{VERSION}"
         
     | 
| 
         @@ -302,6 +316,5 @@ end 
     | 
|
| 
       302 
316 
     | 
    
         | 
| 
       303 
317 
     | 
    
         
             
            if $0 == __FILE__
         
     | 
| 
       304 
318 
     | 
    
         
             
              opts = Fretboard::parse_args(ARGV)
         
     | 
| 
       305 
     | 
    
         
            -
               
     | 
| 
       306 
     | 
    
         
            -
              f.run
         
     | 
| 
      
 319 
     | 
    
         
            +
              Fretboard.new(opts).run
         
     | 
| 
       307 
320 
     | 
    
         
             
            end
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification 
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: msd-fretboard
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version 
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0.0. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.0.8
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors: 
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Mark DeWandel
         
     | 
| 
         @@ -9,8 +9,8 @@ autorequire: 
     | 
|
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
     | 
    
         
            -
            date: 2009-02- 
     | 
| 
       13 
     | 
    
         
            -
            default_executable: 
         
     | 
| 
      
 12 
     | 
    
         
            +
            date: 2009-02-27 00:00:00 -08:00
         
     | 
| 
      
 13 
     | 
    
         
            +
            default_executable: fb
         
     | 
| 
       14 
14 
     | 
    
         
             
            dependencies: 
         
     | 
| 
       15 
15 
     | 
    
         
             
            - !ruby/object:Gem::Dependency 
         
     | 
| 
       16 
16 
     | 
    
         
             
              name: term-ansicolor
         
     | 
| 
         @@ -31,14 +31,40 @@ extensions: [] 
     | 
|
| 
       31 
31 
     | 
    
         
             
            extra_rdoc_files: []
         
     | 
| 
       32 
32 
     | 
    
         | 
| 
       33 
33 
     | 
    
         
             
            files: 
         
     | 
| 
       34 
     | 
    
         
            -
            - COPYING
         
     | 
| 
       35 
     | 
    
         
            -
            - bin/fb
         
     | 
| 
       36 
34 
     | 
    
         
             
            - lib/fretboard.rb
         
     | 
| 
       37 
     | 
    
         
            -
             
     | 
| 
       38 
     | 
    
         
            -
             
     | 
| 
      
 35 
     | 
    
         
            +
            - bin/fb
         
     | 
| 
      
 36 
     | 
    
         
            +
            - Rakefile
         
     | 
| 
      
 37 
     | 
    
         
            +
            - README
         
     | 
| 
      
 38 
     | 
    
         
            +
            - COPYING
         
     | 
| 
      
 39 
     | 
    
         
            +
            - doc/files
         
     | 
| 
      
 40 
     | 
    
         
            +
            - doc/files/README.html
         
     | 
| 
      
 41 
     | 
    
         
            +
            - doc/files/lib
         
     | 
| 
      
 42 
     | 
    
         
            +
            - doc/files/lib/fretboard_rb.html
         
     | 
| 
      
 43 
     | 
    
         
            +
            - doc/files/lib/fretboard_rb.src
         
     | 
| 
      
 44 
     | 
    
         
            +
            - doc/files/lib/fretboard_rb.src/M000001.html
         
     | 
| 
      
 45 
     | 
    
         
            +
            - doc/files/lib/fretboard_rb.src/M000002.html
         
     | 
| 
      
 46 
     | 
    
         
            +
            - doc/files/lib/fretboard_rb.src/M000003.html
         
     | 
| 
      
 47 
     | 
    
         
            +
            - doc/fr_class_index.html
         
     | 
| 
      
 48 
     | 
    
         
            +
            - doc/rdoc-style.css
         
     | 
| 
      
 49 
     | 
    
         
            +
            - doc/classes
         
     | 
| 
      
 50 
     | 
    
         
            +
            - doc/classes/Fretboard.html
         
     | 
| 
      
 51 
     | 
    
         
            +
            - doc/classes/Fretboard.src
         
     | 
| 
      
 52 
     | 
    
         
            +
            - doc/classes/Fretboard.src/M000004.html
         
     | 
| 
      
 53 
     | 
    
         
            +
            - doc/classes/Fretboard.src/M000010.html
         
     | 
| 
      
 54 
     | 
    
         
            +
            - doc/classes/Fretboard.src/M000008.html
         
     | 
| 
      
 55 
     | 
    
         
            +
            - doc/classes/Fretboard.src/M000005.html
         
     | 
| 
      
 56 
     | 
    
         
            +
            - doc/classes/Fretboard.src/M000006.html
         
     | 
| 
      
 57 
     | 
    
         
            +
            - doc/classes/Fretboard.src/M000007.html
         
     | 
| 
      
 58 
     | 
    
         
            +
            - doc/fr_method_index.html
         
     | 
| 
      
 59 
     | 
    
         
            +
            - doc/created.rid
         
     | 
| 
      
 60 
     | 
    
         
            +
            - doc/fr_file_index.html
         
     | 
| 
      
 61 
     | 
    
         
            +
            - doc/index.html
         
     | 
| 
      
 62 
     | 
    
         
            +
            has_rdoc: true
         
     | 
| 
      
 63 
     | 
    
         
            +
            homepage: http://msd.github.com
         
     | 
| 
       39 
64 
     | 
    
         
             
            post_install_message: 
         
     | 
| 
       40 
     | 
    
         
            -
            rdoc_options:  
     | 
| 
       41 
     | 
    
         
            -
             
     | 
| 
      
 65 
     | 
    
         
            +
            rdoc_options: 
         
     | 
| 
      
 66 
     | 
    
         
            +
            - --inline-source
         
     | 
| 
      
 67 
     | 
    
         
            +
            - --charset=UTF-8
         
     | 
| 
       42 
68 
     | 
    
         
             
            require_paths: 
         
     | 
| 
       43 
69 
     | 
    
         
             
            - lib
         
     | 
| 
       44 
70 
     | 
    
         
             
            required_ruby_version: !ruby/object:Gem::Requirement 
         
     |