saebekassebil/teoria — pull request #30 by saebekassebil (2013-03-04 20:45:29+00:00)
Title: Refactor scale inclusion

I've rewritten the way scales get included. They can now be included/excluded in a more expressive way, that lets the user decide which scales to include and which to exclude.

A number of scales are included by default:

- The seven modes (ionian/major, dorian, phrygian, etc.)
- The major and minor pentatonic
- The chromatic

The syntax for configuring the build is simple:

$ jake build scales=-aeolian,-chromatic

results in a build without the aeolian and chromatic, while:

$ jake build scales=-locrian,+bebop

results in a build without the locrian, but with the (non-standard) bebop scale.

I'd like to hear if this solves the issue discussed in #24 - I personally like it, and I think we can now start adding other scales to this repository, such as the bebop, the harmonic and melodic minor, and many other interesting scales without necessarily bloating the final build!

CC'ing @ohmycode, @quickredfox and @gregjopa as you seem like the most interested guys :)