GSoC 2020 Work Product: New and Improved Multimeasure Rests and Measure Repeats
4 months ago • 4 comments
Hello, all! This is the conclusion to my GSoC 2020 blog, summarizing and linking to my work for MuseScore over the past twelve weeks.
In brief, I added support for adjusting the style of multimeasure rests, switching to old-style multimeasure rests, preventing line breaks between selected measures, automatically numbering one-measure repeats, and creating two- and four-measure repeats with MIDI playback support and the ability to import from and export to MusicXML format.
The multimeasure rest code, which can be found
Read more
Isaac Weiss
GSoC 2020 Week 12 Recap: Testing the Tests
5 months ago • 0 comments
Hello! We've reached the end (almost). The twelve weeks of coding are complete. Later this week I'll make a big post with a video summarizing the entire summer. For now, here's one last weekly recap.
Update from last week
I spent this week working on tests. The idea is to automatically warn future developers if they make a change that introduces a bug in something that was previously working. MuseScore has lots of tests in place for existing features, and
Read more
Isaac Weiss
GSoC 2020 Week 11 Recap: All Features Implemented
5 months ago • 2 comments
Just a short video for you today:
See you next week. ;-)
Read more
Isaac Weiss
GSoC 2020 Week 10 Recap: MusicXML in Difficult Circumstances
5 months ago • 1 comment
What a week.
What a week.
Update from last week
One sweltering day in August, a well-loved MacBook went to sleep and never woke up. During the very week when I was over 300 miles away from my (non-Mac) secondary machine.
I am amazed at how much I was able to accomplish under the circumstances. I commandeered someone else's gaming laptop, set up a guest account, and immediately began downloading at least a dozen gigabytes of stuff (Visual Studio, Qt,
Read more
Isaac Weiss
5 months ago • 0 comments
Update from last week
Since the playback algorithms already had handling for one-measure repeats, it turned out to require only small changes to get the two-measure and four-measure repeats to play correctly. (However, in some circumstances it is questionable what it is to "play correctly"—see https://t.me/musescoreeditorchat/82334. Please don't put your musician in a circumstance where it is questionable what it is to "play correctly.") And I was pleased to find that, by investing in playback, I got MIDI export
Read more
5 months ago • 0 comments
Hello! The last week ended up being quite different than what I had planned, but some solid improvements were made nonetheless.
Update from last week
PR #6211, my multimeasure rest work, was merged! I have now opened PR #6365 for my measure repeat work.
Inspector
According to plan, I added an Inspector for MeasureRepeats. Not according to plan, the ground shifted under my feet and suddenly all my files were in the wrong place. I should have had PR
Read more
6 months ago • 1 comment
Hello! For this week, I made a longer video:
Update from last week
I made the bond between the measures of a MeasureRepeat group much stronger, disallowing or adding special handling for as many scenarios as I could think of that would interfere with them. Among those scenarios:
- Copying and pasting measures within a group (disallowed, unless the whole group is selected)
- Pasting anything into a group (allowed, removes the MeasureRepeat and resets associated measures)
- Note input within a group
Read more
6 months ago • 0 comments
Hello again! Last week was a bit of a mixed bag. I didn't accomplish everything I hoped to, but still, progress was made. Let's get into it.
Update from last week
Bugs
My "Priority 1" issue, having to do with undo/redo, was unexpectedly fixed for me by (once again) @mattmcclinch. The "Priority 2" issue, though... I banged my head against the wall all week, and went deep, deep into the weeds with my mentor to figure
Read more
6 months ago • 9 comments
Update from last week
My goals for last week were as follows:
- Expand MeasureRepeat class to support varying numbers under the hood
- Draw the MeasureRepeat from the font instead of with a hard-coded path
- Make all current uses of MeasureRepeat specify that it is the one-measure version being called (i.e., keeping same functionality, but changing implementation)
I did all of that in the first couple of days, and went on to, well, take those under-the-hood changes
Read more
6 months ago • 0 comments
Hello, all! In the last week, I did some work a few weeks ago. Let me explain.
Update from last week
Group measures
On Wednesday I joined Marc Sabatella's weekly MuseScore livestream to demonstrate the current state of my project, and discovered a bug in my code live on the air—measure numbers were incorrect starting after a measure group.
This was a mystery to figure out because there didn't seem to be any models to follow
Read more