Search-and-replace tool for text matter in scores

• Oct 20, 2016 - 00:37
Reported version
Ergonomical (UX)
S5 - Suggestion

In current stable versions, there is no tool to enable a user to do a 'search and replace' operation on a score. CTL+F brings up a search box, but it will only find measures by number. If I want to search for particular lyric phrase or syllable, or a specific staff or system text element, I am out of luck, and have to do it manually.

Because of the addition of text matter linked to the music notation, choral work is much more complex to produce than instrumental work. Let's say a freelance arranger or composer has submitted an mscz file of a multi-part motet or madrigal, and I send it off to my choral editor for verification. She reports back that a number of oft-repeated words in the lyrics are incorrectly hyphenated (for keeping melismatic vowels open) throughout the score: 'Dom-i-ne' instead of 'Do-mi-ne' and 'Ex-aud-i' instead of 'E-xau-di', for example. We must correct that before the score is published, but in this hypothetical score of six voices and 126 measures, there are 279 instances of incorrect hyhpenation which need to be fixed.

At present, the only way to do that is manually, one voice and one measure at a time.

Could a 'search and replace' tool, such as are found in many word-processing programs and text editors, be implemented for 3.0, so that (a) lyrics would be searchable, and (b) a 'replace with...' string could be entered to automate the process even further?


I did it, by opening the mscx file (hidden in the mscz) with a text editor, and later open the modified mscx and saving in mscz.

Of course take copies....
To do before inserting pictures.
Not sure that you could just replace the modified mscx by the modified one.

You can extract the mscx from the mscz (which might include images and will include thumbnails), using e.g. 7Zip, modify the mscx and place it back in the mscz, I've done this successfully several times (e.g. to change part names, get rid of some well hidden references to Times font when importing 1.x scores, etc). It still is a nasty workaround and nothing for the faint-hearted. And of course best be done on a backup ;-)

I had actually thought of that, although I hadn't tried it till this morning when I saw these posts. It turns out that I can export an mscx file directly from 2.0.1, then open it with Word Pad and use the search-and-replace tool built into that. The part I haven't worked out yet is how to get the modified xml file back into mscz format. Indeed, as Jojo points out, that whole process is a kludge that would be beyond most users' comfort zones (and I hope I never have to use it).

So the question remains whether an on-board search-and-replace tool is something which could be developed for 3.0?

I'll add my request for this capability in the UI. I often have situations where I begin a project by modifying an existing score. I use various kinds of text in my material, especially teaching material, and often must globally change every textual appearance of a given string. An example might be a page of chord inversion exercises, where I might need to change all references to G13 into Eb13, or "fifth string" to "sixth string." Such references would appear in explanatory text rather than in chord symbols or other staff elements, which of course can be addressed using other means.

In reply to by Recorder485

For anyone still interested, I know it's years late, but you can open the mscx file from within MuseScore, then use Save as and make sure the file type is mscz to create an mscz file.

In reply to by Recorder485

Good day,
I exported Handel's Hallelujah SATB chorus to .mscx. Opened it in WordPad, did a find on "jah" (in hallelujah) and replaced it with "ja" to translate it into Afrikaans. Saved it as Hallelujakoor h out.mscx. WordPad still showed .txt (in save as type box) but saved it without txt suffix. Then opened it seamlessly in Musescore 3. All instnace hallelujah now halleluja. This all took just a few minutes. Saved me deleting the h manually a gazillion times... Thanks for pointing my nose in the right direction.

Hello! Does any of you have tips & tricks for how I can do the same with notes? Eg. I would like to change a long piece written in melodic minor to harmonic. Is there a find & replace function for something like this? Thanks in advance.

Is there a way to find/replace text and text style?
For example, to find all instances of "mute" that have been entered, either from the TEXT palette or typed in manually, and change all to be italic? Or change text and style to be: "sord." in italic?

Workaround Yes No

I'll wait and see just how bad it might be to change each one manually, it's a big piece and don't want to make any global errors...