GSOC 2021: Chord Symbol Style Editor - Work Product
Hi, everyone! I hope all is well.
This is a summary of my project, Chord Symbol Style Editor. This project was a part of Google Summer of Code 2021.
This project is aimed at improving the customizability of chord symbols. It also helps in maintaining a uniform representation across the score.
This project consists of two components: Inspector view and Main Editor.
The Inspector view allows the user to quickly switch between chord symbol styles. It does not offer any other options to modify the chord symbols.
The main editor houses all the different options for controlling the format and appearance of chord symbols. The distinguishing feature of the new editor is the respelling function where the chord symbols are respelled to a representation that is chosen by the user. This ensures uniformity of chord symbols in the score. The different representations for each quality differ according to the style set. Some existing options are also expanded to give the user more control.
For a more detailed description, please refer to the description in the pull request.
All the work done under this project is present in this pull request.
The PR has not been merged as of 23rd Aug 2021.
All the new features of the chord symbol editor are implemented and are working as expected in the score. All of the core functionalities like the XML parsing and chord symbol respelling are complete. Some areas still need a bit of work.
In my proposal, I had set a few goals(deliverables) for the project.
Some of the major goals are:
1. Provide a practical/well-designed user interface to set chord style.
2. Allow chord style configuration using XML files.
3. Allow overriding chord style for specific chords.
4. Allow modification of each individual component of a chord(like root, quality, extension, modifier) independently.
Even though the way the project manifested itself is different than what I expected at the beginning, this editor achieves all the said goals and even more.
1. UI features - There are some features like the live preview of chord symbols styles, etc… that are left to be implemented.
2. User Testing - The editor has to undergo extensive testing and fixing to make sure that it works as expected for all possible inputs and options.