Saving Format idea

Can you add an option to save a Scrivener file in an container format like you can do with the backups. It will be very helpful in uploading to dropbox. Dropbox will only have one file instead of many. And then my recent list in dropbox will only reflect one file change.

It will also make it easy to move my projects around. And less likely of one of my files being edited or deleted by accident.

At least just add the option.


PS. Why aren’t these files in a container file?


Sorry, no, this isn’t possible. If it were possible, we would have used a compressed file format from the start, or even a completely flat XML format. Scrivener is built so that each project can be used as a shoebox - you can put anything in it, and create as much text as you want. You may notice that many word processors slow down when you fill them up with 100,000+ words, and they don’t even have all your research files in them. Scrivener’s file format is the whole reason it can remain fast no matter how many files you bring into the project.

You could have a gigabyte of research in Scrivener and it would still run fast - because of its file format. This is because, when you load a Scrivener project, all it loads into memory are the binder structure XML file (.scrivx), the search indexes (a plain text representation of your text for searching), and a couple of settings files, all of which takes up very little memory. Nothing else is loaded until needed. So, when you click on a text file in the binder, only then is it loaded into memory. For PDF, movie and other research files, they also only get loaded into memory as needed, and cleared from memory again as soon as you switch to another document. This keeps Scrivener’s memory footprint light and allows it to deal with projects that can grow to any size - and we have users with projects in the gigabytes because of the research files in there.

It couldn’t do this with a container format. It would need either to load the entire file into memory (which is what word processors do with container formats such as .docx), or it would need to spend ages unzipping the entire thing into a temporary copy somewhere, and then trying to zip up the entire thing again every time you saved - and imagine doing that for a file of 100MB, let alone a gigabyte, how slow that would make things.

The only way to adopt a container format would be to ditch all of Scrivener’s research features - to remove the ability to bring in any file type and make it text-only. Even then it wouldn’t be as fast if you had many text files in it containing images, though.

All the best,