Bug: Project > Project Settings > Format > Use different default formatting not retained across platforms.

As usual, I’ve tried looking to see if this one’s been reported but have come up with nothing, so…

Problem: A project created on the Mac with Project > Project Settings > Format > Use different formatting for new documents in this project ticked opens on Windows with the setting unticked and the default formatting itself does not correspond to the one chosen on the Mac.

You have to reapply the setting and recreate the correct formatting from scratch on Windows (e.g. by selecting an existing paragraph — which will have retained its correct formatting — and selecting Use Current.). BTW all the fonts are available on both systems, so it’s not a font conversion issue.

The same is true in reverse: the project specific default format is not retained in a Windows-created project when it’s opened in the Mac.

Once you’ve made the change by hand, then the setting is retained, but it’s not done automatically, as expected. Obviously, this isn’t a problem with the Default Formatting in the standard preferences, because you expect the devices to have different settings, but a project is designed to be used elsewhere and should retain the setting.


I’m not an expert in the inner workings of Scrivener, but I think this is still running up against the differences in the OS’s and specifically with the fonts. Windows stores its fonts in (typically) c:\Windows\Fonts. In Mac OS X, go to System > Library > Fonts. Fonts may also be found in a user’s Library > Fonts and in the computer’s Library > Fonts. Additionally, in Windows, a file name can be:
All of which point to the same file. However, in *nix systems such as OS X, those are 3 completely different files. I suspect that the font file location and name is being saved in the project settings and, when the Scrivener project moves from one OS to another, those settings are being translated to work with the current OS and not able to locate the specified font and font file location - thus having you to manually reapply the settings. And when it is set to the current OS, that is what gets saved and you are back to having to reapply those setting when you move the project back to the other OS. Rinse and repeat.
Adobe manages to reduce this by embedding fonts within the PDF (makes them big, however) when you are looking to send the file to a commercial printer that may not have that particular font installed on their computers. With ODF and DOCX files, cross-OS compatibility is handled by specifying Font classes so that the OS can test to see which font it has in that particular “class” that is near enough to the originally specified font that it doesn’t matter (too much).

That’s interesting – thanks, I hadn’t thought of that.

Just playing with the idea: it shouldn’t explain why the state of the tick box itself is not retained though, should it? And the editor itself picks up the correct font — or at least it makes the right substitution. Paragraphs in Mac Charter (or any other font) are rendered in Windows Charter — when there’s a mismatch, Scrivener will throw in something like Courier or Arial and that’s not what’s happening.

To me it looks like the initial read doesn’t pick up project preferences.xml when the project is first opened, but once you’ve recreated the settings it’s fine. That file only deals with the Project > Project Settings > Formatting panel, so it wouldn’t affect any of the other settings. I’ve no idea whether that’s the case or not…