(EDIT: See my last comment down below, with a much more detailed presentation of the problem and the solution, along with music examples that demonstrate the issue more clearly.)
I have followed the efforts from the new engraving and design team to get Musescore up to "industry standard" and produce professional looking scores out of the box with great excitement and high expectations.
But there is one issue that I have been missing in the discussions and presentations: horizontal spacing.
I am not thinking here of the micro-level issues regarding accidentals and cross-beams etc., but the overall way of laying out whatever music there is nicely on the assigned space of paper.
Of course, there may be cases where one would want the last system to be unfilled, but in music printing, even more than in text, the rule is that one wants to fill systems and pages and distribute the music as evenly as possible over whatever space is necessary at the moment: a full-width last system is better than a narrow one, and a full last page is better than one with a single system on it. If there is one thing that makes a score look unprofessional, it is when there are chunks of music with irregular spacing. Unfortunately, with Musescore, it is almost parodic how often a small change somewhere in a score results in one single measure on an additional system, perhaps even on a new page.
Currently there seems to be a limit set at three measures in Musescore: up to that point, the last system of a score will be left-aligned - add another measure, and the last line will be justified. This is presumably to avoid having a full-width measure. But the expected behaviour - i.e. the behaviour that would produce the most professional-looking score - would be to recalculate all the music up to that point, to find the best distribution of measures of the score as a whole, in order to achieve the ideal of full systems and pages.
One reply that one frequently meets in the forum when issues like this are brought up is that it is very easy to add manual system and page breaks. That may be so, but it is not a solution. It would be like telling a (digital) typographer to just add hard line-breaks at every line. That is of course not how it should work.
I see two different issues related to this:
What Stretch should do
- If the suggested behaviour requires too much constant calculation to be practical during note-input, the Stretch system should be improved, so that one could at least achieve professional-looking scores with a separate operation. It seems that "Reset stretch" currently does NOT recalculate the spacing of the piece as a whole, but only resets it to whatever it was (or would have been) before any manual changes.
The Lesson from LilyPond and LaTeX
- Following up on this, I've always (i.e. since before MS 1.0) wondered why there doesn't seem to have been any cooperation with the LilyPond community. If there is one area where Lilypond shines, it is in the field of horizontal spacing, where the LaTeX ideal of producing ideal defaults and good algorithms for dealing with standard situations is translated very successfully to music notation. In music, more than in text, it is necessary to do "paragraph" based and not line based calculations. Today, Musescore seems to do line by line (like Microsoft Word does): justifying one line of text/music, and then letting the next note/letter take care of itself. LaTeX instead evaluates the whole paragraph to get as evenly spaced text as possible. That is what Musescore should do too.
I welcome comments - and if what I'm after can already be done, then I'm all ears.