Crates.io | gitar |
lib.rs | gitar |
version | 0.1.1 |
source | src |
created_at | 2020-05-08 10:32:47.933217 |
updated_at | 2020-05-09 04:30:23.417015 |
description | A command-line tool for programmer-guitarists. |
homepage | |
repository | https://github.com/thfm/gitar |
max_upload_size | |
id | 238850 |
size | 26,493 |
A command-line tool for programmer-guitarists.
Gitar? Do you git it?
Note: you will need Rust on your machine in order to use this tool. If you don't, you can visit https://rustup.rs/ to install it.
$ git clone https://github.com/thfm/gitar.git
$ cd gitar
$ cargo install --path . --force
Functionality for note input is common between commands; thus, it is covered here once for convenience.
You only need to supply a name when inputting notes, but can optionally specify an octave number as well (for situations where it matters):
note names must be one of the following (case-sensitive): C
, Db
, D
, Eb
, E
, F
, Gb
, G
, Ab
, A
, Bb
, B
and octave numbers are simply any positive whole number
Examples of valid note inputs are C
, F
, Ab0
, and B10
.
Examples of invalid note inputs are D#3
and A-10
.
find
The find
command is for finding the different fretboard locations of a note. For example,
$ gitar find E4
produces a fretboard diagram that looks like this:
5 occurences:
-----∗ 0
││││││ 1
││││││ 2
││││││ 3
││││││ 4
││││∗│ 5
││││││ 6
││││││ 7
││││││ 8
│││∗││ 9
││││││ 10
││││││ 11
││││││ 12
││││││ 13
││∗│││ 14
││││││ 15
││││││ 16
││││││ 17
││││││ 18
│∗││││ 19
Each fretboard location is shown as a ∗
, with the numbers on the side indicating the fret number.
If there are no occurences of the given note, the output will say as such:
$ gitar find Bb20
No occurences.
tuning
What if you want to find the locations of a certain note in a non-standard tuning? Simply specify open string note values for the tuning
option:
$ gitar find D2 --tuning D2 A2 D3 G3 B3 E4
1 occurence:
∗----- 0
You don't actually have to put in six values; in fact, you can type any number of notes, and the program will construct a guitar with that many strings. This means that you can use find
for bass guitars as well, as is demonstrated below:
$ gitar find Gb1 --tuning E1 A1 D2 G2
1 occurence:
∗│││ 2
capo
You can add a capo by specifying the fret that you want it to be placed on after the capo
option:
$ gitar find F2 --capo 1
∗----- 0
Note that the fret numbering will change to treat the capo as if it were the nut.
frets
Finally, you may encounter a scenario where the output of find
is different from what you expect. Take the following, for example:
$ gitar find E6
This outputs No occurences
, which is true for most guitars, except for those with 24 or more frets (or a different tuning). You can use the frets
option if this exception applies:
$ gitar find E6 --frets 24
1 occurence:
│││││∗ 24
This option is also useful for when you want to simulate a guitar with less than the default number of frets (which, in this program, is 21):
$ gitar find F4 -f 18
4 occurences:
│││││∗ 1
││││││ 2
││││││ 3
││││││ 4
││││││ 5
││││∗│ 6
││││││ 7
││││││ 8
││││││ 9
│││∗││ 10
││││││ 11
││││││ 12
││││││ 13
││││││ 14
││∗│││ 15