Project Template vs User Library

What is the difference between a Project Template (as created by File | Save As Project Template…) and a User Library (as created by Library | Export Library…)

What is the intended use case for each?

In particular, which is more appropriate for creating a House Style file?

What is the significance of the “.doricolib” file extension?

And finally, what is the file “userlibrary.xml” (mentioned in a number of messages here on this forum) and where does it live?



My understanding is that a template is just a preconfigured project with instruments/layout as you like it, whereas the Library would be used to export/import settings from one project to another (eg maybe a previous project?). This is how I use it anyway…

I’d say the template is what you’re after. It’s all ready to go. But if you have an old project, you could transfer your project settings from the new to the old and it will look pretty.

  • Factory default library = what Dorico ships with

  • User library = your own defaults, for all projects you start on your computer

  • Project template = settings within one project

(more or less)

You can use the Library Manager to transfer settings (aka “house styles”) between projects and between users in a variety of ways; you can compare a new project to an existing project file, and copy across that file’s settings, for instance.

1 Like

When exporting a user library, does it also export modified page templates within that document? (Modified in the engraving options, not via a page override). I ask because I recently did just that but when importing the library into another existing file (with no page overrides) the page template was not changed. The issue was the size of a text frame I had made bigger in the exported library was the same size as in the original existing file even after importing the library.

Page templates sets are a type of collection that can be transferred using the Library Manager, so this should in theory be possible. If it didn’t come through via the library import/export, maybe try using the Library Manager to bring page template sets across into the current from their original project?


I found that every time I make and name a custom template set, Dorico always exports it properly, to confirm what Lillie suggests.

Tangentially, I tried adding this xml node for the custom template set to DefaultLibraryAdditions folder with all my other customization settings, but it doesn’t seem to show up as an option in new projects at all - it seems it wants to be manually imported and is never loaded automatically. But looking at now, I think my naming might be confusing it…

In my fiddling around with these, it seems like Dorico only looks for the entityIDs pageset.fullscore and pageset.part. It doesn’t seem to look for other custom entityIDs you might want to add. You can however add all your custom templates to the pageset.fullscore and pageset.part pagePairDefinitionSets. In any new file, they will show as “Default Score” and “Default Part” as you are overwriting the Dorico default sets. It sure is convenient though! For example, in any new file from File/New, I now have 7 templates in Default Full Score and 11 in Default Part, including all my VS, page turn, and tacet templates so I’m up and working without having to import anything.

1 Like

Thank you for this, @FredGUnn! If I’m understanding you correctly, there are two options then:

  • create a custom page template set. It will export properly with all of its custom attributes and name, but it can only be added to new projects by manually importing it.

  • create custom individual template pages inside the default template set. They can be automatically loaded into all future “new” projects. The original factory “Default” and “First” pages can be preserved in this option, right?

This is superhelpful, cheers!

1 Like

Yeah, I think those are the only two options currently. Obviously when you are cutting and pasting your pages from an exported set into pageset.fullscore and pageset.part, those will take precedence over any factory defaults that are in scorelibrary.xml. It’s been a bit since I set these up so I don’t remember exactly, but I would think you could paste the factory settings into your doricolib file (from scorelibrary.xml) if you wanted to keep them and then all your custom pages as extraPageDefinitions. I just got rid of the factory templates as I only wanted my own custom templates.

It would be nice if we could keep the factory templates, and then add our own entityIDs for custom template sets, but Dorico doesn’t seem to look for anything other than the two factory entityIDs. At least we can customize what those contain anyway.

1 Like

Awesome, thanks!

Just trying something quick with renaming alone, it seems this might also serve as a way to preserve factory “Default” and “First” pages:

That’s now my to-do for this afternoon. Apologies to @JAMES_GILBERT for hijacking!

1 Like

I thought I had double checked and replicated the error before I posted my message. I had some extra time to triple check it and what do you know? It works the way I would expect it to. The text frame was bigger. No problem so anyone else who was curious reading this in the future, the answer to my first question was yes, it does transfer templates. Thanks.

1 Like