I am currently using Dorico 6.2.10.6140. (The reason I am not on the absolute latest version is that I prefer to be cautious about software updates, so please bear with me.)
I’ve noticed an unexpected behavior where items are unintentionally overwritten when importing them from another Dorico project using the Library Manager.
To illustrate, let’s say we want to import contents from Project B into Project A. Here are two test cases:
Case 1: Duplicating an existing Font Style
-
Create a fresh project, Project A. Duplicate the
Default Text Fontfont style, rename it toFont Style A, and set its style to Bold. -
Create another fresh project, Project B. Duplicate the
Default Text Fontfont style, rename it toFont Style B, and set its style to Italic. -
Open the Library Manager in Project A and select Project B for comparison.
-
When displaying the differences,
Font Style Ais compared directly againstFont Style B. The only options available are to either overwrite or exclude it. There is no way to addFont Style Bas a new, separate style.
Case 2: Creating a new Font Style
-
In a fresh project, Project A, create a new custom font style named
User Font Style Aand set its style to Bold. -
In another fresh project, Project B, create a new custom font style named
User Font Style Band set its style to Italic. -
Open the Library Manager in Project A and compare it with Project B.
-
Just like in Case 1,
User Font Style Ais compared directly againstUser Font Style B, resulting in the same issue.
The Cause of the Issue
The main problem is that Font Style A and Font Style B (or User Font Style A and User Font Style B) might be used for completely different purposes in their respective projects, but they are treated as the same entity.
Upon exporting the library files and inspecting them with a text editor, I found that the entityID values are identical:
-
In Case 1, both styles share the same ID:
"font.user.DefaultTextFont.1" -
In Case 2, both styles share the same ID:
"font.user.1"
Because these are the first custom font styles duplicated or created in their respective fresh projects, Dorico automatically assigns them the exact same sequential entityID.
I have confirmed that this same issue occurs with other library items, including Paragraph Styles, Character Styles, and Lines.
Questions & Suggestions
To reliably avoid overwriting fonts or symbols meant for different purposes—and conversely, to correctly match and import items meant for the same purpose—wouldn’t it be more appropriate for the Library Manager to compare library items by their name rather than their internal entityID?
Alternatively, are there any official guidelines or best practices for using Dorico to avoid these kinds of ID conflicts when managing libraries across different projects?
I would love to hear your thoughts or any advice on this.
Thank you in advance!