Speaking purely from the standpoint of the technical, I think it wouldn’t actually be that hard as a lot of code for it already exists. Here’s an experiment for you:
- Go into
File/Compile... and from the Compile for dropdown at the top, pick “MultiMarkdown”.
- In the general options tab, tick the Convert rich text to MultiMarkdown setting, and give that a quick test compile.
So you see, it handles quite a bit! But you may also notice it loses a lot as well. Anything that isn’t styled in a way that can be made to “make sense” to Markdown will be lost. Font size changes, highlights, colours, revision markings, indents, that sort of stuff. A lot of that boils down to the fundamental incompatibility between a strictly semantic and willfully simple markup system like Markdown, and something with a billion and one different combinations of settings that all essentially mean nothing except what we as humans perceive of them (big bold text? must be a heading!), like RTF. So one can train the compiler and their source material to a point of being a very effective Markdown generator—but it’s often not that way on its own.
And that’s where it perhaps gets to be a little too complicated for file sync. We’re talking style recognition, prefix/suffix settings to inject custom markup around text—and that’s just to produce it. Scrivener doesn’t have a clue what Markdown is in terms of import. The best it could do is have MMD create an HTML file and then crudely convert that to RTF, which would in essence blow away all of your formatting anyway. (I.e. the best way to import from Markdown is to use Pandoc to create DOCX files and import those.)
I think ultimately that conundrum is going to be at the heart of the any attempts to make a round trip Markdown workflow that somehow collaborates perfectly with a word processor engine and its billion and one complexity.
So to return to the start, while it may be technically easy, at a more human level of what we would expect and want—I think it would be a struggle to get this working in a way that would actually solve the “problem”.
Just a little thought I had for a way to edit externally synced files in the mobile dropbox app without losing said formating.
My solution by the way is to just write using Markdown. As you can see from the demonstration above, conversion from RTF is in fact an optional setting, and Scrivener on the whole has a lot of capacity for handling that way of writing as a native platform for it. You can get word processing files out of it, web stuff, even ebook and other formats if you install an additional converter. While Markdown is very simple to write with, it has a lot of depth to it as well, and particularly when coupled with a powerful tool like Scrivener. Our PDF documentation is produced using that approach, in fact, and you would not be able to do the majority of the formatting you see in that in Scrivener otherwise.
It’s not for everyone, sure, but I love having a consistent writing “interface” no matter what software or device I’m sitting at, and I love never losing a single gram of meaning when copying a file from one system to another. RTF? Everything goes out the window, even if you can find an RTF editor everywhere you go, there is no guarantee it will know what a footnote is, or an embedded image, what bullets should act like, or how to load your fonts correctly, etc.