Feedback for plug-in Time Signature copy/paste

• Feb 13, 2024 - 10:57

This is for copying a sequence of time signatures from one part of your score to another. It has a loop feature for those who want to copy a short sequence many, many times. The a9_prelim version is the latest experimental version. It uses the computer’s system copy/paste buffer to store info, so it can copy/paste across different Scores. This version seems to work in 3.6 and 4.2.1.

My first plug-in. Copied as much as possible from others. ;)

Will post more info shortly.

https://musescore.org/en/project/time-signature-copy-paste

https://github.com/TeeDeeY/MusescoreQML


Comments

Since I don’t know how to insert measures in the middle of a Score, you have to do it yourself. (Edit: most current version inserts measures)

First, select the range of measures. Run plug-in. Change the repeat value from 1 to the number of loops.

Click where you want to OVERWRITE. Insert a lot of measures there. (Edit: doesn’t overwrite any more) Press the GO button.

The user interface is crude. I need to find a plug-in to imitate.

Hi, I tested it with several scores and worked fine, without problems, with the restrictions you indicated (can't paste to measure #1 but also cannot paste to measure #1 of a new section).

It would be great if it detected when the actual measure duration is different from the nominal, the scores which I used to test had several of those and they needed to be edited separately, but as it is it's already a huge improvement and time saver. All the rest worked well.

Thank you for your hard work. You solved a missing functionality that was plaguing Musescore, and many needed it. I don't know if a similar method can be used to copy-paste tempo marks, but if it could, it's the other big copy-pasting tool that people are requesting for ages.

In reply to by Nuno R. Rodrigues

Thank you for testing it out. For the “actual measure time”, I couldn’t make that work but have some information which could possible set it using the command interface. I’ll have to try and see.

The comment “also cannot paste to measure #1 of a new section” didn’t seem to be a problem for me. Please describe this issue in detail.

If someone needs to insert time sigs into the first measure of their score, they should use the Musescore interface to insert multiple measures there, then time sig paste starting at measure 2, then delete measure 1. This is a limitation due to a workaround that was used.

When adding time signatures in some conditions, the nextMeasure function pointed to an incorrect measure. To work around that, the plug-in does a previous segment, next measure, next measure process. This seems to go to the measure after the measure of the updated time signature. Since there is no previous measure in measure 1, the plug-in won’t work properly.

As far as other “types” of items to copy and paste, the current problem is that my attempts to properly “add” some types of items failed. For instance, adding a new new rehearsal mark in a selected measure using a plug-in doesn’t work yet but they can be updated.

A primitive plug-in to reset all rehearsal marks to measure number is being worked on but only on those already added into the score. The copy-paste method isn’t known at this time.

I am not sure if tempo marks have the same issue. This can be looked at soon.

In reply to by Nuno R. Rodrigues

Thanks for the update. For “copy-paste tempo marks,” are you talking only about metronome marks or is there more to it? I don’t delve into complex tempo marks.

As far as future copy/paste goes , I just got a plug-in to insert new metronome tempos and Rehearsal Marks so it should be possible to later copy and paste them.

Exporting to MXL afterwards and then drag/drop into Musescore seems a good practice to clean up overlooked settings by the plug-ins. That does strip away excess (more than one per measure) metronome tempo marks. MXL export seems to keep the first tempo mark added while Musescore, before export , plays the last one, when multiple tempo marks are added. Strange.

Rehearsal Marks when exported/imported get the default justification when brought back in, likely based on the system default.

I will try to make a copy/paste plug-in for tempo and rehearsal marks, among items that regular copy/paste doesn’t handle and see how it goes. I’ll probably make a reposition Rehearsal Marks plug-in separately, which will later be integrated into a bigger one.

… all based on guesses on how things work.

Please check GitHub for the revised a6 version. The user interface isn’t updated yet but now it also copies “actual” time signature.

Revising actual TS at the time of insert didn’t work so well but after completing a line of time signatures, the plug-in jumps back and then updates the Actual Time Signature. This seems to work but please test it. Thank you.

I have started to use cmd(“insert-measure”) to insert one measure at a time but in some cases it doesn’t insert them. I made a workaround as described inside the file.

A revised version should be coming soon that does insert measures. Extra measures will need to be deleted afterwards.

Thanks for the clever plugin! Can it be used only within a single score, or also to copy time signatures from one score to another? The latter would be very useful as I'm trying to concatenate several scores into one.

In reply to by Erik A

Thanks for the feedback. Currently, it can’t work across scores as they are separate program instances.

This is the second situation where copying something from one score to another is needed. It won’t happen soon but I’ll try to make it work.

I posted a rough version that can save the time signature sequence to a file (save button). Then, you go to another instance, run the plug-in, use load button and then go-paste.

This is for design evaluation. It may work but I won’t be able to work on it for a bit, so I’m posting for evaluation. It’s on GitHub, ending in a8_prelim.

It also adds measures and adds a time signature at the insert point, to protect any prior work.

As always, appreciate your feedback so it can be more useful in the future.

It could always write the file so you don’t have to remember to save but it could be irritating as well.

More measure fields ( such as don’t count in measure number calculations) will be added in the next version.

In reply to by Erik A

I revised it with an “a8-C.” Please see if it is better. Are you using version 3.6? Also, are you using a Windows computer? The filename and directory info changes so I may need another go at it depending on your OS. I tested this on Ubuntu with MS 3.6 and 4.2.1.

Thanks for testing it out.

A revised version will use the copy/paste buffer and not use the file system, which seems different between v3 and v4, and likely different between different OSs.

In reply to by TDYama

Good suggestions. Yes, I thought I knew how to read the console log in the Mac. One can use either the Mac app "Console" or the Terminal window, of which the latter works pretty much like any Unix shell. I find lots of messages from MS in the console, but nothing that seems to come from the plugin. For example, I have tried some variants of "log show -process mscore | grep Home", which returns nothing. Suggestions are welcome. I am not a programmer and may have made a simple mistake.

In reply to by Erik A

Thanks for the feedback. Please try the a9_prelim version. It uses the “system” copy and paste buffer. It works in Musescore 3.6 and 4.2.1 on Ubuntu.

It works across scores. You just need to remember to select a sequence, run the plug in, then save then TS sequence.

Then, in another Score, run the plug-in in the second score. Select load. Make sure you select a measure to paste into. Select Paste button.

About 4 extra measures are appended, in addition to the currently inserted measures. Plus a safety time signature for the measure at the insert point.

Thanks for testing.

Do you still have an unanswered question? Please log in first to post your question.