- Fix incorrect roman scale conversion
- Fix imports for autodoc to show documentation properly
- Reorganised documentation to follow Divio documentation
- Updated README with quick demo
- Completed Colab notebook as a tutorial and showcase
- Included first draft of reference documentation in NumPy documentation style
- Catch errors in Parser if
Parser.sample
fails to be read - Changed some keyword argument names to better fit with documentation
- Updated
analyse_secondary
method to be limited to secondary dominants and secondary leading tone chords by default - Fixed
analyse_secondary
method to return an empty string if the next chord is the tonic
- Include
analyse_secondary
method
- Fix accidental print in NoteEditor
- Include
__str__
representation for printing musical classes - Fix file reading for Colab notebook
- Reorganised code folder structure
- Changed note structure to be split into letter and symbol
- Added
get_letter_intervals
method to NoteEditor - Refactored tests to have more of a single responsibility
- Fixed empty README author (fixes failed build - PyPI could not read the README)
- FAILED BUILD
- Fixed empty README description
- Fixed Sphinx documentation for readthedocs
- FAILED BUILD
- Included
transpose_simple
method to only use semitones for transposing - Included initial Sphinx documentation
- Removed code with static typing
- Removed unused instance variables in classes
- Changed
Note.symbolvalue()
toNote.symbol_value()
for namespace consistency - Include
Note.letter_value()
method - Fixed wrong errors being raised
- Refactored scale building code
- Abstracted chord quality to a separate Quality class
- Quality now includes sus chords, Chords no longer have a
Chord.sus
attribute - Refactored chord notation regex parsing for methods to be reusable
- Abstracted roman numeral notation to a separate Roman class, and roman conversion to a separate ChordRomanConverter class
- Changed song in sample_sheet.cho
- Added ability to remove all added notes
incl_submodes
defaulted to False in analysing chords
- Bug fixes for sample_sheet.cho
- Separated parsing function into Editor classes - NoteEditor, KeyEditor, ScaleEditor, ChordEditor
- Refactored regex parsing for code to be more readable and for regex groups to be more distinct
- Added ChordAnalyser for analysing chords
- Added Parser class to collate all the Editors
- Added Chord class with full parsing function
- First release on PyPI.