Using "Preset Replacements"


I have a project that I want to compile to two different formats. I have different replacement rules for each format and assumed that preset replacements (since they are independent of projects?) are set up for this type of task?

Is this possible in Scrivener and is there some other explanation about the difference between project replacements and custom replacements as I don’t understand the documentation (and this doesn’t seem to be covered in any videos?) and it’s never behaved the way I expected.

Here’s how I expected it to work. I save a new format -say “Format X” in “Manage Compile Format Presets” (which subsequently appears in the “Format As” menu under “My Formats”). I then define new replacements in “preset replacements” which I can then subsequently apply by selecting Format X.

While compiling with any new replacement in this way however, these replacement rules are subsequently “forgotten” i.e. scrivener never seems to remember any “preset replacements” either by compiling or saving (with that rather odd “Save” that the “Compile” button changes into if you can remember to press the opt key) except if the “Format As” is set to “custom”?


“Preset” in this context means the replacements in that list are saved into the compile preset (which you infer correctly, but I’ll expand on why I think it might be tripping you up, below) what you can select from the “Format As” drop-down at the top. They encompass things that are inherent to the particular formatting preset. We don’t use this feature a whole lot in our example presets, but there are a few cases. It’s mostly meant to benefit your own presets. If you come up with a good compile look that matches what you need for a good number of your projects, and have an internal convention for replacements that you like to use, then putting them in the preset tab and saving your settings for future use would be a wise move.

The project tab means just that. They are saved into the project as inherent to the specific work, rather than as something useful in general to anything that might use those compile settings in the future. This also means you can switch presets without losing them.

That’s because, if I’m reading you correctly, your going about saving the preset backwards. Saving your settings to a preset is a one-time thing that takes a snapshot of the current settings for future use. Once you start changing things in the compile panes, it is no longer that preset (really, technically it never is; presets are a way of setting a bunch of things automatically, not something you “load” in the conventional sense) and this is why the “Format As” label changes to “Custom”. You can, after tweaking it further and adding Preset Replacements, re-save the preset over the old one using the same name to update it. So I think that will solve the confusion you’ve run into with this.

The “Save” alternate button in this case has nothing to do with presets. That’s just so you can save your settings without actually going through the whole compile process. Say you’re writing, and suddenly you think of a useful macro for a replacement. You jump into the compiler, add it, then Opt-Save. If that wasn’t there, you hadn’t to go through the whole (potentially long) compile process just to update your settings.

So again, the only way to update a Preset is to go back into the preset management interface and save it again.

Yes that’s what I thought I was doing but haven’t been able to re-use them or see them saved. Rather than describe my failed attempts perhaps you could describe an example with the steps where you can get to re-use some presets you … preset?

Ok here is a failed attempt anyway. Yes I think I got that. So with the current preset replacements I either save by compiling and/or opt-saving to whatever is in the “Format As” field (or as you say “take a snapshot of the current settings”). But then when I go to compile again with that same “Format As” field (that I just “saved to”) that preset is gone? But if I go back to “custom” it appears again?


Okay, so say you have a preset named “Classic Novel”. You’ve made some changes to the default “Paperback Novel”, perhaps to the paper size, and added a few replacements to the preset tab. If you create a new blank project and then compile and choose “Classic Novel” all of the settings you saved at the time that you saved it will be applied to that project. If you go into, say, the Transformations pane and enable the option that deletes struck out text, it will say “Custom”, because you’ve deviated from the “Classic Novel”. Your settings are now custom. If you compile or save the settings, they will stay that way until you change them further. There is no need to go back and reselect “Classic Novel” unless you want to revert your settings to the way that preset was when you originally saved it.

And if you wanted to update “Classic Novel” with your new settings for use with other projects, you would use “Manage Compile Format Presets…”, select “Classic Novel” in that panel and click on the “Update” button.

Ok, I think I’ve groked it. Let me just try and source the confusion. The saving that I was after only occurs after I have clicked on the update button and not clicking the save with the option key or by compiling. All the latter does is save those settings to custom - if I want to attach those updates to a particular preset it is via the update via the Manage Compile Format Presets.

I think the confusion here is that when you select a particular preset you see changes in the pane that correspond to that particular preset. This leads you to assume (at least it did for me) that when you compile or save those changes will attach to whatever preset was currently selected in “the format” as menu. Alas this not the case - what actuality is saved is the custom setting. This also explains another confusion I had that having “saved” when I did a subsequent compile the format as came back as “custom” instead of the new format that I thought I had just saved to.

I suspect the reason why it is implemented like this is that saving to a new setting is perhaps a rarish maneuver and one that hence involves a few extra deliberative steps (as opposed to the idiom I was expecting - like file saving). Nonetheless, I think it could be made more intuitive but just to be clear - Here is what I would have expected in help for this idiom as the above is not precise for someone new.

Some step-like instructions (if my groking is not gronking) that I might have expected would go something like this:

To create some new presets for later re-use you can do the following:

  1. Click Compile
  2. Select a preset in the “Format As” menu
    (this will form the basis of your presets -Selecting “Original” is the most basic setting whereas the pre-defined settings come with their own tailored settings. Under the “All options” tab you might want to click on the elements of the left-hand side “Compilation Options” to see some of the settings that define this preset.
  3. Add a new setting by say adding a replacement row in the “Replacements” compilation option.
  4. We can save this new setting in two ways. Either do a compile (by clicking a Compile ) or else more conveniently in this trial by clicking the option key and then save (the option key causes the compile key to change to Save)
  5. Click Compile again
    (You will notice that the Format As is no longer the previous preset setting but is a “Custom Setting”. This is because with this new setting the total preset is not the same as the previous preset settings. Say however we want to save this total new set of settings as a New Preset)
  6. In the Format As menu click on the bottommost “Manage Compile Format Presets”
  7. In the new pane click the + key
    8.Enter your name for the new compile format say - “New Preset” click OK
  8. A “New Preset” should then appear with it’s corresponding checkbox ticked.
  9. Click the Update and then confirm that overwriting will take place (there is nothing to overwrite with this “New Preset” but it is probably better practice to create your own preset rather than overwrite a built in preset).
  10. Click OK.
  11. Note that the “Format As” menu has “New Preset” selected and looking at the full menu this appears amongst the list of predefined formats. So long as the checkbox (mentioned in step 9) is clicked this will always appear as an option to be selected whenever you want these “New Preset” settings to be applied in your compile.

Obviously a video of the above would provide further clarification.

I think this flow could be much improved but don’t have time to go into such design - suffice to say I think a more “file-based” idiom would get more people using this functionality.

At any rate thanks for your help in understanding how it currently works.

You don’t need step 10. “Update” is for updating existing presets, so you don’t need to use it when creating a new preset, although it doesn’t hurt. As for making it file-based, I think that would make it less useful to users, but you can import and export presets via the Manage Compile Format Presets panel.

Well, to be fair, it wouldn’t be much of a preset system if everything you changed in the compile interface caused the preset itself to change. You’d never be able to return to the original settings, because they would always be immediately and forever erased by doing any small tweak to the settings. Basically, since you seem to be thinking of this like files, to put it to a file analogy, you’re proposal is that if you use the Novel project template to start a book, then that template should update with any changes you make to it automatically. While that might sound convenient if all your are doing is editing the template—that actually wouldn’t make any sense for the majority of cases where you are using the template (or compile preset) to bring you to the neighbourhood but not all the way to the door—because each time you go there you visit a different house. The project template gets you started, but from there on out its your book. The compile preset gets you started, but from there on out its unique settings to that project alone.

Now after all of that you could go back and save the settings back to the preset, just like you could make a ‘Novel’ project template that already had a novel written into it. That probably wouldn’t be terribly useful, but if you did so it would be something you’d have to explicitly do, because that isn’t terribly useful to most people.

Thus, if the changes you make do make themselves relevant to the preset, then you specifically need to update it in the same panel that you used to create it.

Precisely so, I’d say, and it’s not really that difficult to bring up the window to save it if need be. Of course, while you are in the process of making one, this happens more often, but it’ll slow down as it becomes more refined and eventually you’ll find you don’t edit it for years. :slight_smile: Again, using project templates as this analogy is fairly close: these tend to go through a period of frequent saving when you are making a new project template for yourself. For a while, you end up having to use that template saving routine a lot because you think you are done, and then you think of “one more thing” to add to it, so you use it to make another temporary project, edit the project, and then save it back as a template and delete the temporary project (or just keep a template editing project around on your drive). Clunky and so many steps, right? But really this is something you do ten times in five years, so in the grand scheme of things it’s okay to keep the update route out of the way, especially if it keeps the line between preset/template and content as clear as possible. You muddy that, and it becomes a constant support issue where people have damaged their prototypes and there is no way to get them back.

Despite what it may seem, you don’t always want things to be super easy in software design. :slight_smile: Some things should require a few extra steps for the same reason we put banisters along the edge of porches.

I didn’t propose any of the above as far as I can tell?

Why not just do the following: Start with a preset. If you make changes to it a * appears in the upper-right to indicate a modification as per files. If you want to change that whole preset Click Save. If you want to start a new preset click “Save As”. If you want to squirrel away the changes for a later top-up with other other presets/projects click “Save Delta”. Same functionality, much less button presses, more consistent, more intuitive.

Speak for yourself :smiley:

Nah get rid of them … provide plenty of safety nets but invite more people to an even better view :stuck_out_tongue: