Music theory and score rendering library with midi, notes, chords, scales, and more.
This crate currently uses the Noto Music font by default.
cargo install staff
example.ly
\clef treble
a'1
d'2. e'4
f'2 e'4 f'
b'2. a'4
g'2 fis'4 g'
$ staff example.ly > example.svg
```rust use staff::{midi, Chord, Pitch};
let chord = Chord::from_midi( midi!(C, 4), [midi!(E, 3), midi!(G, 3), midi!(C, 4)] );
asserteq!(chord.tostring(), "C/E");
let pitches = [Pitch::E, Pitch::G, Pitch::C]; assert!(chord.into_iter().eq(pitches)); ```