Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Staging] Clef misbehaviours #1248

Closed
yinanazhou opened this issue Nov 28, 2024 · 12 comments
Closed

[Staging] Clef misbehaviours #1248

yinanazhou opened this issue Nov 28, 2024 · 12 comments
Labels
to-be-merged Fixed, but waiting for RISM to merge changes to develop.

Comments

@yinanazhou
Copy link
Member

yinanazhou commented Nov 28, 2024

A pitch of a newly inserted glyph is calculated assuming top line as c4, but the glyph is placed based on the clef.
Expected behaviour:
The pitch should be calculated based on the clef.

@yinanazhou
Copy link
Member Author

Hi @fujinaga, @JoyfulGen, and @annamorphism , I would like to confirm with you where the default clef should be when there is no clef found. Should it be:

  1. Use the last clef we can find from previous staves; or
  2. Set the top line as C4

yinanazhou added a commit to DDMAL/verovio that referenced this issue Nov 30, 2024
yinanazhou added a commit to DDMAL/verovio that referenced this issue Nov 30, 2024
@yinanazhou yinanazhou added the to-be-merged Fixed, but waiting for RISM to merge changes to develop. label Nov 30, 2024
@yinanazhou
Copy link
Member Author

Hi @JoyfulGen, staging should be good after the changes get merged.

@JoyfulGen
Copy link
Contributor

Hi @fujinaga, @JoyfulGen, and @annamorphism , I would like to confirm with you where the default clef should be when there is no clef found. Should it be:

1. Use the last clef we can find from previous staves; or

2. Set the top line as C4

I think at the meeting we agreed for option 1! @annamorphism can confirm. I do have a question though: what will happen when the missing clef is at the top of the page and there's no clef on a previous staff? Will the default clef then be top line C4?

@annamorphism
Copy link

good catch! I think it does make sense to have the top line as the clef iff there is no "previous staff."

@fujinaga
Copy link
Member

fujinaga commented Dec 2, 2024

Is the top line for the c-clef the most common position?

@JoyfulGen
Copy link
Contributor

I've found another clef misbehaviour: F clefs aren't happy. If you put an F clef on a staff without a clef or after a C clef, all the glyphs after the new F clef jump up an octave. Their pitch is then correctly calculated based on the new F clef.

Demo:

Neumes.after.F.clef.jumping.mov

You can see that the glyphs on the staff below are also jumping, because they don't have a clef, so their default clef is the one on the previous staff.

yinanazhou added a commit to DDMAL/verovio that referenced this issue Dec 3, 2024
- When there is no previous clef found, use the default clef defined in `<staffDef>`, instead of using clef found later on the staff

refs: DDMAL/Neon#1248 (comment)
yinanazhou added a commit to DDMAL/verovio that referenced this issue Dec 3, 2024
- When there is no previous clef found, use the default clef defined in `<staffDef>`, instead of using clef found later on the staff

refs: DDMAL/Neon#1248 (comment)
yinanazhou added a commit to DDMAL/verovio that referenced this issue Dec 3, 2024
yinanazhou added a commit to DDMAL/Rodan that referenced this issue Dec 3, 2024
@JoyfulGen
Copy link
Contributor

@yinanazhou I found another one: if a staff doesn't have any on it and also no clef before it, I can't move any element: I can click and drag them around, but they don't snap to a staff line or space properly. And if I undo the moving action, the previous action undoes as well, so it looks like Neon isn't registering the moving at all.

Demo (I move the staff first so that you can see what the undo button does):

Uploading Can't move elements without clef.mov…

@yinanazhou
Copy link
Member Author

@JoyfulGen this should be fixed by now!

@JoyfulGen
Copy link
Contributor

@yinanazhou I can move elements on a staff without a clef now! The F clef issue is still there though, but different: now if I add an F clef to a staff, the neumes on that staff stay put, but the neumes on the staves below jump.

@yinanazhou
Copy link
Member Author

Update: neumes below also jump when I moved a clef...the shape of clef doesn't really matter.

yinanazhou added a commit to DDMAL/verovio that referenced this issue Dec 11, 2024
- Fix element jump after inserting new clef
- Fix element octave for elements after F clef

refs: DDMAL/Neon#1248 (comment)
@yinanazhou
Copy link
Member Author

Hi @JoyfulGen, the elements jump on inserting clef should now be fixed on staging! (They still jump a bit on dragging now, but I will fix that in #1250 and #1252 . I think they might be caused by the same bug.) Could you please verify and close this issue if the insertion is working as expected?

@JoyfulGen
Copy link
Contributor

@yinanazhou it looks good! Closing issue now.

craigsapp pushed a commit to rism-digital/verovio that referenced this issue Dec 20, 2024
craigsapp pushed a commit to rism-digital/verovio that referenced this issue Dec 20, 2024
- When there is no previous clef found, use the default clef defined in `<staffDef>`, instead of using clef found later on the staff

refs: DDMAL/Neon#1248 (comment)
craigsapp pushed a commit to rism-digital/verovio that referenced this issue Dec 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
to-be-merged Fixed, but waiting for RISM to merge changes to develop.
Projects
None yet
Development

No branches or pull requests

4 participants