description | Scales generates fretboard patterns marking the position of notes in a given scale. |
owner | Ricardo Wurmus |
last change | Sat, 1 Oct 2016 16:40:01 +0000 (18:40 +0200) |
URL | https://git.elephly.net/software/scales.git |
Scales generates fretboard patterns marking the position of notes in a given musical scale. Many common scales and tunings are included. Scales can output patterns as ASCII text or in SVG format.
scales [options] -v, --version Display version. -h, --help Display this help. -f, --format=text|svg Print as text (default) or as SVG. -t, --tuning=EXPR Use string tuning EXPR. This can be a defined tuning such as "guitar" or "grand-stick-matched-reciprocal-6+6", or a list of note names, e.g. "(d a d g b e)". -s, --scale=SCALE Highlight notes from scale SCALE. This can be a scale name like "phrygian" or a list of steps, e.g. "(1 2 2 2 1 2 2)". -r, --root=NOTE The root note of the scale, e.g. "fis" for f sharp. Defaults to "c". -o, --offset=NUMBER The first fret to be drawn. Defaults to 0. -n, --frets=NUMBER The number of frets to be drawn. Defaults to 7.
Generate a text pattern for F# phrygian on a standard guitar fretboard:
./pre-inst-env ./scripts/scales --root fis \ --scale phrygian \ --tuning guitar
|-e---|-----|-FIS-|-g---|-----|-a---|-----| |-b---|-----|-cis-|-d---|-----|-e---|-----| |-g---|-----|-a---|-----|-b---|-----|-cis-| |-d---|-----|-e---|-----|-FIS-|-g---|-----| |-a---|-----|-b---|-----|-cis-|-d---|-----| |-e---|-----|-FIS-|-g---|-----|-a---|-----|
If you don’t want to use one of the pre-defined scales, you can specify a list of steps from the root note. Here’s the minor pentatonic on F#, using the root note followed by notes that are consecutively three, two, two, and three semitones apart:
./pre-inst-env ./scripts/scales --root fis \ --scale '(3 2 2 3)' \ --tuning bass
|-----|-----|-a---|-----|-b---|-----|-cis-| |-----|-----|-e---|-----|-FIS-|-----|-----| |-a---|-----|-b---|-----|-cis-|-----|-----| |-e---|-----|-FIS-|-----|-----|-a---|-----|
Here’s the same scale on a standard Ukulele fretboard:
./pre-inst-env ./scripts/scales --root fis \ --scale '(3 2 2 3)' \ --tuning ukulele
|-a---|-----|-b---|-----|-cis-|-----|-----| |-e---|-----|-FIS-|-----|-----|-a---|-----| |-----|-cis-|-----|-----|-e---|-----|-FIS-| |-----|-----|-a---|-----|-b---|-----|-cis-|
Scales is libre software and is released under the Affero General Public License (AGPL) version 3 or, at your option, any later version. See the COPYING file for the license text.
5 years ago | master | shortlog | log | tree |