I was trying to save a project under a different name with Save As and I got an Interesting message.
The project ‘5-Progress.scriv’ could not be saved to ‘/Volumes/WRITING/Writing/Series 0 - Dusada/0-Tora/8-Progress.scriv’.
There was a problem saving a copy of the project. Check that you have enough free disk space and the correct permissions to save to the chosen location. Files that could be recovered have been saved to /Users/robertmorgan/Documents/5-Progress-1.scriv Recovered. The project will now close.
I am using Scrivener 2.0.2, on a PPC Mac Mini, OS 10.5.8, there is 67 GB free on the drive, The file is only 1.4 MB in size. Seeing I created the original document in this directory, I doubt it is a permissions error.
This error means that your Mac has refused to allow Scrivener to save - unfortunately it doesn’t provide any more information than a “NO, you can’t save”, though. So it’s your Mac’s file system that is refusing to save the file when Scrivener requests it to. Try checking the permissions, and also try saving other files into the same directory. Also try moving the file to another directory and see if it will save elsewhere.
The bit about “/Volumes/WRITING/” says to me that you may not be saving to your mac’s internal hard drive. Did you rename “Macintosh HD” to “Writing”? Or are you saving your project to another drive, like a thumb drive or other external media?
Yes, I am writing to External Media.
The External media is formated Fat-32 which lacks any type of security scheme.
So I have Full permissions to Write to that Media and the folders
Note:
Writing this got me to thinking so I did a little testing and I think I have found the Issue:
I created the a new project in the Documents directory, added a little text and saved it.
Then I did a Save as to the Documents Directory, It saved it, No issues.
Then I did a Save as to the External Media (Fat-32),it saved it, No issues.
Then I did a Save as to the Documents Directory, it Failed and project was closed.
I Created a New project on the External Media (Fat-32), added a little text, and save it, it saved, no Issue.
Then I did a Save as to the External Media (Fat-32), it Failed and Project was Closed.
I reopened the project on the External Media (Fat-32), It opened, I added text, saved it, it saved, no issue.
Then I did a Save as to the Documents Directory; it Failed and Project was Closed.
I opened the project in Documents, did a Save As to a FireWire Drive (Mac OS Extended Format), it saved, no issue, I closed the project.
I opened the Project on the FireWire Drive, added text, did a Save as to the Documents directory, in Saved, No issue.
Possible Causes:
You are checking for permissions at some point and because the Fat-32 system has no files security system it fails. But I find it interesting that If I go in to the OS, I can moved files do and from the External Media.
I do not have this issue with any other application, so I’m not sure this is an OS issue.
So… This is not a Deal Breaker, because there is a work around, but it is annoying.
I don’t remember having this issue with Scrivener 1.0 on the same computer.
Nothing has changed between 1.0 and 2.0 in this regard, and Scrivener is doing no permissions checks. Scrivener calls on the Cocoa -writeToFile:… methods. These methods invoke the file system, which then returns YES or NO depending on whether or not the save works. At this point, Scrivener spews a message if it received a NO from the file system.
But you wouldn’t have seen this issue in 1.0 if it pertains to Save As anyway, because 1.x had no “Save As” feature at all.
Scrivener’s “Save As” does work differently to most programs’ “Save As” internally for very good reasons though. When you open a file in most programs, it is loaded entirely into memory. When you Save or Save As, the data from memory is written to disk. In Scrivener, a project contains many files, and you wouldn’t want them all loaded into memory - especially if you have dozens of PDF, image and media files that may consume a lot of memory if all loaded into memory at once. Thus, when you open a project in Scrivener, the binder data is loaded into memory and so is the data for any files in the project currently being viewed. When you click on an item in the binder, that gets loaded into memory too. (Remember that a .scriv file is essentially a folder of files.) Because of this, when you use “Save As”, Scrivener does not have everything in memory to save to the new location. Instead, it copies the project file to the new location and then saves the stuff that is in memory into the new location too. It is this copy operation that is different from most other programs which don’t need to do this, so it sounds as though it may be at this point that things are failing - in this case, the Cocoa -copyFiles… method is invoked which calls on the OS file system, which returns YES or NO, and it sounds as though it is returning NO and thus you are seeing the error.
It seems the issue is Fat-32 on the External Media.
I formated one of then as Mac os Extended and had No Issue doing a ‘Save as’ to or from the drive.
So this might be a Coco API/OS issue that hasn’t been reported.
So the Lesson Learned here is format the Removable Thumb Drive in MAC OS Extended and all is good.
I use Thumb drive, because I move between my desktop and laptop.
I use the Elago Micro SD HC USB adapter, with an Micro SD memory card.
The nice thing about this USB adapter is it can stay in the laptop without fear of it breaking off, as you shove you laptop in to your backpack or case.
I will format them differently from now on.