Duplicating flow doesn't duplicate everything

I have a flow that I’ve made all of my engraving modifications for and then I duplicated it. Some of the modifications I made in the source flow do not copy to the duplicated flow. I’ve attached a file that shows the issue.

Here are the steps I followed:

  1. For an instrument change, apply custom text in engraving mode
  2. Duplicate flow
  3. In the duplicate, see the custom text is not applied

This becomes quite the pain when I have a flow that I need to duplicate because I have two versions of the same song in different keys. I want to be able to perfect the engraving in the original flow and then duplicate the flow with all of those modifications still in place.

duplicate-flow-issue.dorico (670.4 KB)

I would think duplicating a flow should mean actually duplicating everything, but that doesn’t seem to be the case here.

That said, it’s possible I’m doing something wrong, but the local/global settings don’t seem to work how I think they should. For example, when I modify the instrument change text above in the score layout, even with “Set local properties” set to “Globally”, I still have to apply that text modification in the actual part layout.

Hi @etelford for your workflow, maybe you could use a duplicate of the layout (instead of duplicating the flow) and use the transposing options so that every change in the music is reflected, and you can propagate the properties between layouts. (Sorry I am not at the computer at the moment and cannot check if what I have written is nonsense…)

@Christian_R Interesting idea. However, I don’t think it will work. I need the flow to be in a completely different key (and possibly different parts of the flow to be different).

The reason the custom instrument change text isn’t preserved when you duplicate the flow is because of the way the “address” for that property is stored internally. The address for the property directly references the voice stream of the instrument on which the label appears, and in a new flow, that voice isn’t available (since all voices are independent between flows). Dorico doesn’t currently “rewrite” these kinds of property addresses when duplicating a flow to map between the different voices used in each flow, though it is potentially something we could implement in a future version.

Thanks for the explanation, Daniel. I hope more flexibility around this makes it in a future version.