Skip to content

petvajda/solfege

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

solfege

Build Status

Solfege Library in Python. Supporting Note and Scale creation. Just pass a base Note and the library can tell all the notes in a major scale and modes (I-VII). More Info on Scale and Modes

Example C Major Scale and D Dorian:

from solfege import Scale

cmaj=Scale("C")
print(cmaj)
C D E F G A B
cmaj.name
'Ionian'
emaj=Scale("E")
print(emaj)
E F# G# A B C# D#
cdor=Scale("C", 2)
print(cdor)
C D Eb F G A Bb
cdor.roman
'II'

Also basic interval support (more will come later):

from solfege import Note

print(Note("C#").h_up())
D
print(Note("C#").w_up())
D#

Some useful scripts for example generating random key and modes to play on your instrument:

$ python3 solfege/gen_exercise.py
D [2, 5, 1, 6, 3]
C# [6, 3, 7, 2, 5, 1, 4]

Example how to generate notation for scales with VexTab:

$ python3 solfege/gen_c_modes_html.py

Then open the generated test_c_modes.html with your browser.

Releases

No releases published

Packages

No packages published

Languages