'Live preview' compile?

I suspect this is horrendously complicated to do, but I’d like a live preview when setting up Compiles.

At the moment, the compile settings are immensely powerful - for instance when I’m writing a script, by scrupulous use of binder levels, titles, synopses, notes, metadata, and text documents, I generate numbered outlines, bullet outlines, treatments (kinda), multiple drafts of scripts, etc. entirely using compile. That’s fantastic, particularly when I want to work on paper for a bit, or have to work on a non-Mac.

However setting these up is rather longwinded. If I’m missing a trick here, I’d love to know, and I’ll shutup.

Currently it means:

  1. Choose existing Compile Settings.
  2. Tweak a thing.
  3. Save the Compile Settings.
  4. Output to rtf/pdf
  5. Preview.
  6. Note what I want to change
  7. Back to Scrivener. File>Compile
  8. Go back to 2 and repeat until everything’s right.

With a live preview, everything from ‘4’ onwards could go.

Essentially, it’s very setting up a database report, and once they’re done, they’re done. But doing them is quite time consuming, and while I appreciate procrastination excuses as much as the next writer, I’d love to be able to set up a Compile more easily.

The trouble is that a live preview would take as long to put together as a compile, so each time you changed a setting, you would have to wait for Scrivener to compile the whole thing so that it could show it in a PDF view - which gains nothing, as you can already compile for printing and then hit “Preview”. And Scrivener can’t really put together some dummy text to give you a one-page preview because it has no idea about the content of your book, but if it tried to take text from somewhere in your book for a one- or two-page preview, it would most likely get the wrong place, or it wouldn’t be enough to see how all the settings affect things.

More importantly, it would only be able to give you a true preview of printing or PDF - Scrivener can’t show you exactly how the document will look in Word, or Nisus, or Final Draft, or on your e-book.

Really, the text preview in the “Formatting” pane is intended to give you as much of a preview as possible.

So, as much as I would love a live preview - it’s something I looked into - it’s just not really possible given the nature of the beast.

All the best,

I kind of suspected as much. Ah well.

Looking at it again just now, it occurred to me that putting a ‘Preview’ button on the Compile dialogue would save an awful lot of saving and renaming and whatnot. So the workflow would go ‘tweak,preview,close preview,tweak, preview, close preview’ etc. missing out the save stuff.

The trouble there is that there is no way of programmatically accessing the PDF preview stuff that can be done automatically via the print panel. So, at the moment you have to choose “Compile For: Printing / PDF”, then click “Compile”, then click on “Preview” in the print panel that appears. What you are requesting is the ability to have that “Preview” button in the main panel, but unfortunately that preview function isn’t available via any Cocoa methods. The only way would be to temporarily compile a PDF to disk, then load that into Preview and delete it - not great. But also this would require Scrivener to switch to print/PDF format in the background when you click on preview, so again it is only really useful for showing print previews.

Fair enough. One last try.

Several of the necessary clicks are to save changes to a given set of Compile settings, and require re-entering the name exactly each time (so I don’t end up with 37 nearly identical versions in the list) and then confirming I do want to overwrite the previously saved settings. Is there a way round this? Something as simple as autofilling the ‘title’ field of the save dialogue box would be quite helpful.

Sorry if I missed this above, but are you using 1.x? In the new version, the last filename give to compile will be saved for future use, so every time you compile that same name and location comes up and you can just simply hit return and click Replace (or if you have full keyboard access enabled, Tab and then Return) to overwrite the master.

Are you talking about the Save/Load options or the regular Save/Compile option that saves per-project? The latter is fine, and would be faster since the OP’s talking about a single project, and then at the end of the day when the settings are right, just run the “save…” once to make the settings accessible to other projects. But if you mean saving the settings so they’re accessible in other projects auto-loads the right file name, I’m not seeing that–the dialogue comes up blank, and I can’t figure out a way to get it to put in the name without retyping. What am I missing?

Okay that is where I was confused, I was thinking “Save” in terms of holding down the Option key and saving the compile settings to the project. Hmm, I think an easier interface for this would be an additional button that lets you update an existing custom preset with the current settings, rather than going through the Save button. Part of the problem with augmenting the Save button is that Scrivener doesn’t keep track of the original preset, it’s a one-way operation only.

Ah, okay, right.

I think the point’s still valid though to simplify the working method for this process:

You don’t need to do step 3 every time, because the settings are saved, for that project, when you run the compile: when you open compile again, the settings are how you left them. So if you’re not switching to another compile setting (away from your customized one) in the course of this process of redo, redo, redo, then you don’t need to save until you have everything the way you want. The save at that point will make it available as a compile setting in the dropdown menu for not only that but all your other projects.

Absolutely, the save preset feature is only for making a preset persistent beyond the current project’s compile settings. So the only two uses where it is really necessary are (a) making settings available to other projects, and (b) giving you the ability to play around with a radically different layout in the project, without losing your master settings. If all you are doing is the compile-review-tweak-compile process in a single project, taking the time to save it as a preset each iteration is a waste of time. If the process is designated for multiple projects, I’d just perfect one first (the trickiest project being the best to work with as the exemplar), and then once perfected, save and propagate to the other projects.

Also some of these steps can be cut down a bit by using an application, like Skim, that can detect changes made to the file while it is open. The first time you compile and save a PDF, Skim will ask if it should auto-update when filesystem changes are detected, and from that point onward you can just compile and then Cmd-Tab to view the updated work in Skim.

Thanks. I didn’t know the settings saved for that particular project, I should’ve checked. And using Skim would simplify things. But I most definitely do want to use Compiles across different projects - that’s one of its strengths to me.