Figured bass continuation not drawn to end note in voice > 1

• Feb 6, 2020 - 14:16
Reported version
3.4
Priority
P1 - High
Type
Functional
Frequency
Once
Severity
S3 - Major
Reproducibility
Always
Status
closed
Regression
No
Workaround
No
Project

OS: macOS 10.15, Arch.: x86_64, MuseScore version (64-bit): 3.4.1.25011, revision: 20414b2

Try to enter underscore ( _ ) as a figure (meaning "continue same chord"). Upon closing the entry box, it disappears.

The workaround is to use a staff text of _ and flip it down, but that's awful. This recently worked.


Comments

Is there a difference when you apply: Cmd+G 6_ Cmd+7
So is the underline visible over a measure or is it still missing?
(stretch the line to see if it's there.)

Seems to work fine OS: openSUSE Leap 15.1, Arch.: x86_64, MuseScore version (64-bit): 3.4.1., revision: 20414b2
figured-bass.png
And it doesn't matter when I use an underscore "_" or a minus "-".
Is this specific for macOS? Can somebody check this on MS-Windows?

Attachment Size
figured-bass.png 4.11 KB

I managed to get access to a macOS (10.12.6) and tried the issue using MuseScore 3.4.2 but I wasn't able to reproduce the issue, it works fine, just like my Linux system.
Something introduced in later versions of macOS?

Thanks for trying it. Indeed, it seems to work on new scores. Maybe it was something about the score (from someone else) that didn't work, or some other factor. Cancel this report, sorry.

Title 3.4.1: Figured bass "_" as a figure doesn't work at all. 3.4.1: Figured bass "_" as a figure doesn't display in some cases
Status closed active

It's back! Here's a failing score, RimskyKorsakov35BSG.mscz The second and fourth bass quarter notes in m 4 have figures of "_", which you can see if you ctrl-G on them. They buggily hide otherwise. OS: macOS 10.15, Arch.: x86_64, MuseScore version (64-bit): 3.4.2.25137, revision: 148e43f

Status active needs info

What I personally don't understand is what the underscore is supposed to do. Are the supposed to draw lines line underscores in lyrics do, or just display a plain underscore? Is it supposed to be meaningful to add an underscore after a figure, like you would in lyrics, or only a single underscore by itself? Are multiple underscores supposed to make sense?

As far as I can see, the handbook mentions them only in the context of adding them after a figure - https://musescore.org/en/handbook/figured-bass#continuation-lines. So it isn't really clear from that what the expected effect should be when entering an underscore all by itself, or how that relates to the other supported use of underscores.

FWIW, if you enter Ctrl+space as your figure, then an underscore, you get a continuation line. But I'm not sure that's the same thing as what you are trying to achieve?

In reply to by Marc Sabatella

It's shown exactly correctly in the example included above (Feb 7 posting). It's supposed to display a plain underscore (or little line like one). On counted beats (e.g., a quarter note in 4/4), a bass note without a figure means a root position triad on that note ***unless it is figured _ ***, which means "hold the previous chord, no new chord."

That doesn't really answer my questions, though. What documentation are you referring to tell you the expected result in all those different contexts I described? With lyrics, an underscore would never display that way; you'd need Ctrl+underscore to get that. If we're going to change the behavior, it would help to have a very clearly documented description of the right behavior in the different cases we'd need to test.

That said, one thing I can see in the example here is that the results seem to differ according to whether there is a note in voice 1 on that beat or not. At least, that is how it seems to me. I'm still not totally sure how the figure on the previous or next beat are supposed to factor into this. I know how they do for lyrics, so that kind of sets some expectations, but figured bass isn't lyrics, so I would not be surprised to see differences too.

That is the bug. I can put a figure of a number on a bass note in voice 2, but not an underscore. I can only put an underscore that works on a beat that has a note in voice 1. That is the bug! (Particularly annoying since it is always voice 2 that you want to figure, when there are more than 1.). If you put in a phony note in voice 1 to figure the _, the minute you widen the note, the underscore disappears. This is clearly buggous behavior, and the conditions provoking it are now clear!

Thanks, that much seems straightforward enough. Still not clear to me how it's supposed to interact with the previous or next note, though, or at which release this last worked?

NO INTERACTION AT ALL with context in MuseScore (although if you are realizing the continuo, it continues the previous figure, INCLUDING NO FIGURE AT ALL which means "5 3"). Maybe it never worked. A piece can start with an unfigured note, and the next note can have an underscore. No figure does not mean no chord, it means "5 3". If you want "no chord", you have to write "tasto solo" (generally for a passage). That rule does not apply to non-counted beats (e.g., eighth notes in 4/4 rhythm) -- they are all "implicit underscore unless otherwise figured". It is not possible that the very first bass note of a composition would bear an underscore, but, although amusing, that is not a useful fact. (cf., "non troppo moderato").

But in terms of what MuseScore must know or do, as long as we are not talking about automated playback realization, there is no connection to any (possible) preceding or following figure at all.

You don't need this in Control-K chord notation because every unchorded note means "last chord continues", and there are no implicit chords other than that. Figured bass is different in that respect.

In reply to by BSG

In "real music" the part which is figured almost never has multiple voices. But in "closed score" notation, especially for analysis/teaching, the SATB-like notation, figured, is common, and the lowest voice is figured. MS shouldn't be judging highest or lowest, it should put the figure on whatever note you choose, which it does if the figure is an actual figure, but not _ .

In reply to by BSG

What I'm still not understanding is, if there is truly no connection to anything else, what should happen if, say, the first note of a piece has no figure, the second has just an underscore. What's the meaning of that, and how long should the extension be displayed? If that's nonsensical as it seems to me, that would seem to imply that the figure on the first note is relevant. So in that case, is it expected the previous note with include its own extender? And how long should that be? Should that connect to the underscore on the second note? There is still much that is unclear here, and again the handbook really isn't very explicit about any of this, so uit's quite difficult to understand the intended behavior.

In reply to by Marc Sabatella

I did explain that above. If the first note has no figure, and the second has an extender, than the implicit figure on the first note is 5 3, as with all unfigured principal beats, and the second continues the same chord struck on the first. The extenders in Ziya's image are one style of this; underscores are another (I'm looking for an example in the wild; the BGA doesn't use them). It works perfectly in MuseScore right now as long as you don't have a second voice on the staff. It should work it all cases.

I will add that stacked underscores within a figure (which are used to hold individual notes of a preceding figure) also fail to show unless there is a note in voice 1. This, too, should work all the time; the dependence on voice 1 is a bug.

Workaround Yes No

I took out 'workaround' . Other than using staff text, there is no workaround.

Regression Yes No
Workaround No Yes

OK, sorry I'm so dense here. You have to realize that while I'm familiar with the general idea of figured bass, my only knowledge of how it is supposed to work comes from reading the Handbook. So I'm really hoping for a pointer to somewhere in the Handbook where it explicitly talks about continuation lines on empty figures so I can more fully wrap my brain around it.

Until now, I had been - erroneously, I believe - thinking that it was being claimed continuation lines in figured bass should work like lyrics, where to extend a figure (say, 6) over four consecutive quarter notes, you'd type "6" followed by an underscore, hit space to move to the next note, enter a single underscore, hit space, underscore, space, etc. And the bug was that the continuation line didn't extend over those underscore-only notes. This made no sense to me because it doesn't match the documented way to extend a figure across four consecutive quarter notes, which is to enter the figure followed by an underscore then pressing Ctrl+7 to explicitly set the duration as a whole note. That actually works well from what I can tell, at least in most cases, but see below.

Anyhow, now I see this isn't what is being claimed at all, that actually we are talking about entering the underscore to start continuation line on an implied figure. And, even though no one has stated this explicitly that I can see, presumably also pressing Ctrl+7 or whatever to set the duration.
Because as far as I know, an "extender" that doesn't actually extend beyond a single note is normally musically meaningless, no? Unless maybe people are trying to use a short contunation line as a way of saying "the figure changes to 53 here and lasts for one note only", without writing an explicit 53? Again, nothing in the Handbook seems to support that idea whatsoever, so I'm still curious where people are getting the idea that should be a thing, but in any case, this particular usage - underscore-only figure - turns out not to be the actual issue from what I can tell. I now believe it's actually different, more general than that.

If I am right, the problem is not limited to figures consisting of underscore only. You can also reproduce a problem in the file attached above (in https://musescore.org/en/node/300693#comment-983027) if you change the figure on the second eighth notes to "6_". Still no extender. Again, musicially meaningless as far as I know, because an extender that doesn't extend has no purpose, but try entering a Ctrl+5 to extend it a full beat and you'll still see no extender. Doesn't help if you delete the underscore-only figure on beat 2 either.

The actual issue, if I am finally getting it, is this:

Continuation lines are not drawn if the end point of the specified duration (the last note or rest before the assumed next figure) does not have a note or rest in voice 1. Doesn't matter what voice the figure starts in, doesn't matter if the figure is underscore only or if there is a number there too. If there is no note or rest at the end point in voice 1, there is no continuation line drawn.

In the following example, the figures in each measure are identical: a "6" with continuation line and duration of two beats, followed by a 5 with no continuation and a duration of one beat, then a continuation line with no figure and a duration of one beat:

continuation.png

In measures 1, 2, and 4, 5, the continuation line on the 6 is only barely visible. That's because, apparently, the algorithm looks for the last note of the duration (in voice 1 only, which is the main bug) and draws to the right edge of that note. If the note containing the figure is the last note - as the case in measures 1 & 2 - it looks strange, but that's a contrived case, as no figure was needed there.

Note the continuation line is drawn more obviously in measure 3 & 6, because here the last note of the duration in voice 1 is the note on beat 2, so we have something reasonable to draw the continuation line to. This doesn't happen in measures 4 or 5, which really should show the continuation extending through the second note. You see only the short stub. This is how you can see the effect of the bug even in musically valid cases, even if the figure starts in voice 1 (it doesn't meatter which voice you enter the figure in, BTW - same behavior either way).

It's beat 4 of each of these measures that contains the underscore-only figure. As you can see, nothing at all is drawn for measures 1, 2, 4, or 5, because there is nothing for MuseScore to draw the continuation line to. Again, the rule seems to be, "draw to the right edge of the last note of the duration in voice 1". In some cases that means the the continuation line is merely too short, but in this case, it means nothing at all is drawn, because there is no "last note of the duration in voice 1"

Yes?

Status needs info active
Workaround Yes No

For the record, it seems this hasn't changed any time in the last few years, I get the same basic results in 2.3.2

In reply to by Marc Sabatella

No, this is completely misunderstood and justifying the bug. I put the figure on voice 2, not voice 1, and it damned should be there, The idea that there is "nothing in voice 1 for it to align with" is the bug, not the feature. I figured voice 2, not voice 1, and it knows exactly what to do if the figure is "2" instead of "_".

In reply to by BSG

If the figure is given as only underscore, I want an underscore, not a continuation line, It works correctly for one voice. That I can't figure voice 2 properly because underscores are beholden to voice 1 is nothing but a bug. Regardless of what implementation detail causes it, it is a bug. I cannot use an underscore figure on a note in voice 2 if there is no note there in voice 1. This is a bug, plain and simple.

??? I am not justifying it, I am trying to explain where I think the true source of it. Of course it is a bug, I never in any way whatsoever implied otherwise. I realize I wrote a lot and it might take some time to fully grasp all it all. But please, I do encourage you to sit down with the post and work through the example yourself. I believe you will understand better then, and then I may be able to fix the problem at the source.

I get that you put the figure in voice 2, what I am saying, it, the true source of the problem is not in which voice the figure is in, but whether or not MuseScore can find an end note. I've worked the example carefully and was able to show how you can trigger another effect of the same bug even when entering into voice 1. I've found the code responsible, but I do still need independent verification of the points I made, not a blanket that I "completely misunderstood". If you believe some aprticualr sentence in my post to be in error, pleade isolate that once sentence and post your example showing the error. I'd liek to fix the problem, but I continue to need help in making sure the problem is properly understood so that I implement the correct fix.

The way to overcome this in the 2-3-2 version is to use double dashes (or underscore).

figb2-3-2.png

The same is true in 3-4-x, but the lines shift due to automatic placement.

figb3-4.png

If you select all of them and turn autoplacement off, it will be improved.

figb3-4-autoPlaceent-off.png

Thanks for the followup, both of you! Good point about the double-underscore workaround in 2.3.2, but I can't get it to work as you are showing in 3.4.2. I see inly the gray lines when I try it. Not sure what we're doing differently, but could you attach your score here so I can compare?

To summarize and hopefully clarify:

Look at my example, measures 3, 4, 5, and 6. I believe 3 and 6 show the correct result. 4 & 5 show the bug, but you can see the bug both with regard to the way-too-short continuation line on the first beat and with respect to the completely missing line on beat 4.

It's the same bug, same fix: we are getting the wrong note when we try to figure out how long to draw the line, because we are only looking at voice 1 in trying to find the last note within the specified duration. I believe we need to look at all voices of the staff, regardless of which voice the figure was entered in.

Thanks for that, it helps. Looks like the workaround you mention only works if there is also a figure on the next note. Notice that it's missing for the last note of each example. Or, try deleting the 6's and you'll see the previous continuation line disappear as well. I guess that makes sense if we interpret a double underscore as always meaning "continue through the next figure". It's sort of implied by the documentation, but the example given doesn't make this clear, probably because this wasn't really the intended use.

Anyhow, I have a fix I'm testing for the original bug, seems to work OK so far:

continuation2.png

BTW, I think if we're going to support the "continuation of nothing" (underscore all by itself), this should probably be described in the Handbook.

I guess an open question to me is, should there be some sort of special case that handles the missing continuation-of-nothing on beat 4 in measures 1 & 2? There's no note at all there in any voice, so my fix doesn't apply. But there is a figure: the underscore all by itself. As measure 1 shows, you can certainly attach a normal figure to a beat with no note and it renders just fine, but this special "continuation of nothing" doesn't work in that case. The double underscore workaround works if you put a figure on the next note but not if you don't. Is that a real world use case worth worrying about also? That is, a "continuation of nothing" on a beat with no note in any voice that is not followed by a figure in the next note? That would probably require some sort of hackier fix elsewhere.

In reply to by Marc Sabatella

It makes little sense. "Continue to hold the chord for the duration of the note" is the default assumption. Changing figures in the middle of the note is common, but an underscore not under a note makes no sense (the Three Stooges used to awaken one another, "wake up and go to sleep!", which is what that would be).

Status PR created fixed

Fixed in branch master, commit 8f6934f1e6

_fix #300693: fb continuation not drawn when ending in voice 2

Resolves: https://musescore.org/en/node/300693

Continuation lines are drawn to the right edge of the last note
that starts before the end of the figure's duration.
The code that finds this note was only looking in voice 1.
That resulted in continuation lines ending short, or disappearing,
if the last note was in another voice.

Fix is to be sure to check all voices when searchiing for the end CR._

Fix version
3.5.0