difference between the two replacement setting windows

Just a very short question: What exactly is the difference between the replacement settings window in the main compile window (“1.png”) and the dedicated sub point (“2.png”)? As far as I remember I only set up all replacements for my projects in the “real” sub menu, but on some project, some rules appear in the main window, too, and they are not identical to the project settings in the sub menu (in this case I have one more rule in the second section). As the main window rules only appear on some of my projects, they also don’t seem to be global in comparison to project-wise. What’s the difference and can I delete either of those if they appear in both instances?

Thanks a lot!

EDIT: Just to be sure, as I still can’t figure out the difference, I have now set up every replacement rule twice - they are listed identically in both instances of every project now. Don’t know if those are now executed twice, but it doesn’t seem to slow down the compile process … I’ve spent the last few days to create the perfect templates for all of my regular job tasks – which was a lot of work, but I learned SO much about Scriveners deeper possibilities (although I already use it for many years), also thanks to your help!


The short answer is that the first screenshot shows replacements that apply to every project that is using that compile preset, whereas the second screenshot shows replacements that only ever apply to the project where you set them.

If I’m interpreting what I’m seeing correctly, the entire compile preset you’ve created is set to only be available to one project. But if you save that preset so that it’s available to all projects, I believe that the second replacements screen will be blank for those other projects choosing to use your compile settings, but it will be filled-in for your current project

Thanks a lot for your answer, very appreciated. I am still a bit lost, as my replacement settings were - as far as I can see - only created within a special project, with a compile setting bound to this special one, and even those shown on the “main” compile window (“1.png” - unfortunately shown on second place in this thread, sorry for the confusion) don’t appear on other projects. If this were the case, I would agree that those are global ones for every project (if I understood you correctly - if you meant it the other way round, though, it’s probably the same thing as I have no replacement rules which automatically appear in every project, no matter which of both instances). At the moment, it appears as if there are simply two different places where I can put my replacement rules with no correlation / specified difference. Which most definitely is NOT the case, of course, but I haven’t figured it out yet.

Anyway, this is no big deal. As written above, I have currently set-up the exact set of the rules in both instances to be sure. I’ll investigate this case further by activating and de-activating the rules, doing test exports, and check which ones of those adopt which rules from which instance when turned on/off. This way, I’ll hopefully be able to combine by myself and understand what the exact difference is.

When you create a new compile format (or copy another), the window that comes up has a place to put your custom format’s name, and a drop-down list for “where” to place it. In English, the “where” is either “Project Formats”, or “My Formats”. You can think of “My Formats” as “Global” formats that are available for selecting in all projects on that computer, whereas “Project Formats” are only available within the project you’re working on.

I believe the format you’re playing with is under “Project Formats”, and therefore, you shouldn’t be able to select it when compiling other projects.

Do note that you have TWO “Manuskript” formats, one under “Projekteformate” and another “Manuskript” filed under “Meine Formate”, You should edit and rename one of those so that you can’t be confused as to which one you’re using or modifying.

If you choose the one under “Meine Formate” in one project and alter the replacements in the area shown in the 1.jpg screenshot, and then move to another project, start a compile, and select the “Manuskript” filed under “Meine Formate”, you’ll find that the same replacements tab contains different (or now) replacements. If you edit the replacements in the compile format itself (window pictured in the 2.jpg screenshot, that change will be universal for all projects using that format.

Yeah, the two „Meine Formate" (“My Formats”) compile profiles below are the global ones I can choose for other projects, too – I’m still not sure if these are the explaination, but you may very well be correct! Still failing to understand what is what though: When I opened other projects, the “main window” replacement list often was blank. If those two „Meine Formate" compile settings contained global settings they should have appeared there, too, I guess. And wouldn’t this list be blank or deactivated – as you mention – as long as I have selected an only project-wise compiler? I can still modify them.

To cut a long story talk: I am aware of the project-wise/global compiler differences and therefore under the impression that (although they have the same names) I was careful and aware which ones I was using/modifying – however, I probably have mixed up something here nevertheless. Maybe I really set up some replacement rules for the two global profiles in the past, years ago, and I don’t remember. I still can’t explain why those changed from project to project - sometimes there were three of them, sometimes four, sometimes none, and I even didn‘t chose those profiles to compile. Only explaination, again, would be that I had some rules sleeping in some of my compilers I forgot about and now I can’t reconstruct the replacment rules chaos. :slight_smile: Very possible.

However, as said before, everything is working now after having set up every replacement rule in every possible instance, so it fortunately is no big deal. The worst thing that could be at the moment is that Scrivener is checking the replacement rules twice with every compiling, but I don’t notice any longer processing time. I’ll test checking und unchecking those double rules one by one at the weekend to find out which ones are really necessary and which are not.

Thanks for your input!

Okay, I couldn’t just drop it, so one last illustration (with screenshots) to hopefully show that the right pane is definitely unique to each project. The right side pane is unique to each project, despite what compile preset you choose. Here are some screenshots showing this to be true:


… And with that, I’ll let it rest. I hope it helps you avoid redundant configurations in the future.

Thanks a lot for the graphics and sorry for being to dumb … :slight_smile: This exchange is so specific and technical, I’m afraid, that it gets lost in translation – which is my bad as I am not a native English speaker. I simply have my problems to understand that either of those rule sets is globally as - in my understanding - an added/deleted global rule should also be automatically added/deleted in all other projects. In my case, both rule instances can be defined completely autonom from each other in every project. If I delete all rules from a project (no matter if the “only project wise” or “global” ones and no matter which of both sets) they still exists in the others. If I add a rule, it still isn’t added in the other projects. In this sense, your “is seen everywhere” rule in the last picture seems wrong in my case, no matter which compiler and which of both setting panels I choose. That’s where my confusion comes from, but again: I am sure we are talking about two different things here which I just can’t pin down because of the language difficulties. Sorry for that.

Anyway – again; No need to investigate this any further from any other side than myself – I’ll figure it out, it’s no big deal and everything is fortunately working at the moment, no matter if I have redundant rule settings or not. I’ll rule those out with the help of your info on the upcoming weekend. Thanks a lot for your help, time and patience! :slight_smile:

Sorry if you already got this sorted out, but to go back to the original question, the idea here behind having two lists has less to do with “global” versus “project”, and more to do with having replacements that cater to the Format itself. For example the General Non-Fiction template has some shorthand syntax that expands into figure and table caption numbers. You might think of that as being a “feature” provided by the compile format. The LaTeX project template goes even further, using replacements to help finish building LaTeX syntax that were started by the Styles feature (long story short, I needed to print what the user highlighted in their editor with a style, twice: once in the book as readable text and second as a code that adds the phrase to the book’s index. You can’t print a phrase twice with styles, but you can use styles to set up a replacement that can).

Project replacements work best for things that only make sense to one project, or as a personal preference (presumably saved into the project template you use to start new projects, if you do so). Shorthands for long proper nouns that you need to have fully spelled out, that sort of stuff.

There are good reasons to keep the mechanisms of a format separate from the project. Going back to the non-fiction template’s figure and caption shorthands, we could duplicate that format and change its replacements to follow formatting guidelines that adhere to a standard style guide. The project stays the same, using the “!fig(…)” macro, but because you can switch Formats on the fly, you can now make it print two different captioning styles. So that’s a classic case for a replacement being format level rather than project level.

Moving on from theory, a practical difference between the two is that Format replacements run last. This gives you the ability to override a format replacement by getting to the match first. Going back to the caption example, maybe you don’t want to make a whole variant of the format but you don’t like how captions print. Well you can copy the replacement out of the format pane and paste it into your project’s list, and change it there.

To touch on global versus project, perhaps part of the confusion here is that like I say the separation isn’t so much to serve that goal, and you could even argue that project replacements are kind of the global thing, because no matter what Format you choose in the sidebar they always work. But I feel that’s not a good way to think about these lists, since none of them are truly global (such a thing doesn’t exist, but if it did it would probably be in Preferences somewhere).

The main conclusion is that there is no need to have your replacement list duplicated in both places. It won’t hurt anything, because the format is never going to see an unconverted emdash, since your project converts them first.

A final practical note: much of the above isn’t terribly important unless you are making templates or formats for others. :slight_smile: We are careful with our stock templates because thousands of people will be using them, but if you’re the only user of your project’s compile settings—don’t sweat it. When I was in full on panic writing mode for the user manual, my two replacement lists were a huge ideological messes that in no way resembled the clean and logical descriptions above. :laughing: I only just recently sorted them all out.

Ioa, thanks for laying that all out, as it’s helped solidify some things I intuited about the project pane vs the compile settings pane, and taught me some things I just didn’t understand at all.

Before the “test” button in the compile windows was added, I had used the project replacements pane to test out replacements before copying them into the compile settings. While I believe that’s still a perfectly valid use for it, your explanation has me thinking more clearly about the final distribution of my replacements between these panes.

Thanks a lot for the thoroughly explanation, AmberV – really appreciated! I only have three replacement rules I universally use for every writing job – non-breaking space before “…” and “-” and correcting two space characters to one (which also could be fixed directly in the scrivener project via menu action, but I’d like to not have to remember it every time). I will set up my rules accordingly – putting them into my project replacement preferences once and start every new project from this template(s) in the future should be fine. Thanks!