Find and Replace feature
This would work in a similar way to the "Find and Replace" feature in a text editor. The idea is that you have a large file and you want to make an identical change to every instance of a particular group of notes.
For example, I have imported a midi file and I want to do this for every occurrence in the file:
Find:
Replace with:
(Bonus points if you can identify the song! Hint: it's from a Gilbert and Sullivan operetta.)
Usage:
-
Select a range of notes/symbols.
-
Go to Find/Replace. Select "Use selection for Find". A preview image appears in the dialogue box.
-
Close the Find/Replace dialogue. Make changes to the selection. Select it again.
-
Re-open the Find/Replace dialogue. Select "Use selection for Replace". A preview image appears.
-
Click "Find Next". The score jumps ahead to the next instance of "Find" and it is selected in the background.
-
Click "Replace". It is replaced.
-
Click "Find Next".
-
Click "Replace".
-
Etc. You could also click "Replace All".
- Select a range of notes/symbols.
- Go to Find/Replace. Select "Use selection for Find". A preview image appears in the dialogue box.
- Close the Find/Replace dialogue. Make changes to the selection. Select it again.
- Re-open the Find/Replace dialogue. Select "Use selection for Replace". A preview image appears.
- Click "Find Next". The score jumps ahead to the next instance of "Find" and it is selected in the background.
- Click "Replace". It is replaced.
- Click "Find Next".
- Click "Replace".
- Etc. You could also click "Replace All".
There could be a drop-down list of recently used selections for Find and a separate list for Replace.
This feature could possibly be implemented via a plugin.
Comments
Exactly what I am looking for. How can we push this through?
This is quite a complex thing to do with sheet music - much harder than for text.
If you want this now your best bet is to save (a copy of) your score in the MSCX format and open it with a text editor and then do Find and Replace on the XML code. If you add "find me" as lyric or text marking near the section of interest in MuseScore that will help you find your place in the XML.
Always keep a backup copy when editing an MSCX file by hand in case you make a syntax error which corrupts the file and can't see how to fix it.
In reply to This is quite a complex… by shoogle
I was looking for this feature (want to replace all G chord by G7).
In another century I used NOTATOR on ATARI, and it will be possible to change WHAT you choose, WHERE you want, selection or measure or a time, or a complete stave, and change in WHAT you want, it was very, very useful. For exemple, all the stacato in 8 measures become marcatto, or with 2 eight notes, all along a piece, you want to write in swing, dotted eight note and 16 th , we ask all the second eight notes,, and , in the same work, you ask the eight note becomes 16th and also it moves on the 4th part of the time, it works, and after, you take the first eight note and you transform all, in dotted eight note. This fonction was called TRANSFORM
Musescore... you need this. This is grade school functionality. Be able to select any object [note, chord symbol, dynamic marking, expression - Find/Replace.
In reply to Musescore... you need this… by Tamjam
To be fair, we`re not looking at, for instance, a Word document. The coding for text is the simplest and oldest there is, and the find and replace function is so easy an elementary coder could reproduce the program super fast. Notation is much more complicated - there's playback, timing, engraving, styling, distances and anchorings, and shapes that the computer has to consider that are much more complicated than text.
Perhaps my computer is just slow, but seeing how the simple fact of "there's a lot of music written here" can make my playback kinda screwy and slow already, I can see how Find/Replace could quickly crash the computer as it tries to handle finding multiple instances of music and change them (potentially drastically) all at the same time. I feel like MuseScore is still a baby in terms of how powerful it can become in the future.
I don't see an option for upvoting. Is there a formal feature request area, and a means that encourages people to pursue new features? Also, if this is opensource, are we appealing to friendly volunteers, or execs of Musescore who would hire their own developers to do the job? I'm happily crowdfund the best feature requests! But I don't even see an option to like this request, let-alone upvote it so it gets higher on a list of feature requests. I simply want to replace all B Naturals with Cbs. This seems to have been an error the program made during transposition. But sometimes the opposite is desired, when theoretically correct transposition yields too many bb's or x's (double flats or double sharps). Of course the functionality would need to require the ability to indicate naturals, bs, #s, xs, & bbs
In reply to I don't see an option for… by danpianoman
It may be possible to rename pitches via a plugin by setting the Tonal Pitch Class of a note.
https://musescore.github.io/MuseScore_PluginAPI_Docs/plugins/html/tpc.h…
In reply to It may be possible via a… by yonah_ag
There may already be such a plugin:
https://musescore.org/en/project/enharmonics-replace-chosen-accidentals…
In reply to There may already be such a… by yonah_ag
Thank you. Indeed.
But also look at:
https://musescore.org/en/node/360437
The OP mentions that start/end cmd are needed but I cannot reproduce. Should not harm to add it…
In reply to Thank you. Indeed. But also… by elsewhere
Start/End allow you to use Musescore's Undo command. What do you mean by '"cannot reproduce"?
In reply to Start/End allow you to use… by yonah_ag
I mean: the plugin works (and Undoes (Ctrl-Z)) without Start/End, even in big scores. It's a very simple subtitution of tpc values. And I know that Start/End is needed in lots of circumstances, e.g to sandwich cmd ("next-score"). I asked the OP "to show me his", but I get no reaction.
EDIT: I run MU3.6. I vaguely recall that Start/End is always needed in MU4. So I'll put it in, but cannot test it. I don't run MU4
In reply to I mean: the plugin works … by elsewhere
IIRC on Mu4 startCmd/endCmd are mandatory
In reply to IIRC on Mu4 startCmd/endCmd… by Jojo-Schmitz
Great minds think alike Jojo!!
In reply to Great minds think alike Jojo… by elsewhere
So much nicer an expression than its German counterpart "Zwei Doofe, 1 Gedanke"