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

Add support for MEI export and import of MuseScore IDs #22978

Open
wants to merge 8 commits into
base: master
Choose a base branch
from

Conversation

lpugin
Copy link
Contributor

@lpugin lpugin commented May 26, 2024

Adds an option so enable the use of MuseScore EIDs in the MEI export.

image

The option is not selected by default at this stage.

When selected, MEI elements take the MuseScore EID as @xml:id whenever appropriate, always prefixed with mscore-

<note xml:id="mscore-1786706395156" dur="8" pname="b" oct="4">

The LastEID is stored in the mei@xml:id, also prefixed with mscore-. The values are preserved in the importer. When re-exporting the file, only the mei@xml:id is expected to change in the same way is does with MuseScore files.

@rettinghaus
Copy link
Contributor

Great, thank you.

Still two problems with the current approach:

  • If someones manipulates the IDs, MuseScore will crash on trying to read the file
  • If you copy and paste passages, you get duplicated xml:ids

Try this file to see duplicated IDs:

DotsPlacement.zip

Also there needs to be an additional check on assigning them on load if they are valid.

@lpugin
Copy link
Contributor Author

lpugin commented May 26, 2024

If someones manipulates the IDs, MuseScore will crash on trying to read the file

Yes, this needs to be documented and users should be explained MuseScore IDs should not been edited or made up. I am planning to add that in the documentation.

If you copy and paste passages, you get duplicated xml:ids

Yes, this should be fixed, but it can be done separately since this is not strictly related to the MEI exporter.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants