I'm looking for a tool, collection of tools and/or plugins, or even works-in-progress in this general direction, for this quite demanding (and possibly conflicting) set of requirements:
- user friendly. This tool is to be used by not-so-technically-minded people, therefore, a simple, intuitive interface is a must.
- real-time collaborative editing
- 1 file format only: plain-text, multi-markdown (MMD). It must:
- show a live preview of the document being edited
- store the text files on specific, configurable, local network locations (as plain text, not hidden in some database). Note that this rules out things like Dropbox and Google Apps, as they store everything in their cloud, not the local network (or local cloud)
- be highly configurable (not by normal users, but on admin level) with custom templates, CSS, etc. (that all show in the live preview of course)
- multiple MMD files (plus "invisible" support files and scripts) constitute a single document (so things like tabs, local project files, etc. would be useful)
- usable online or offline, with minimal synchronization issues when users re-connect after having been working offline for a couple of days.
- intermediate versions of the document should be "taggable", much like a commit message (SVN or git integration would be a good option). These tags are to be used to generate some text in the final document and should therefore always remain editable, but always preserve their link to the specific snapshot of the MMD file(s).
- Tags should be definable by each user.
- Reverting everything back to a specific tags should
- be no more than a few clicks
- take into account "unfinished" work (stuff added between two tags) of other users.
- Have a plugin system to allow for extensions/modifications of the program's behavior
- Windows, Mac, Linux, ...browser-based would definitely be acceptable.
- infinite undo (that is ideally also preserved after closing the tool and re-opening it, perhaps even on a different PC)
- commercial or open source doesn't matter much. I prefer open source of course (with LGPL or equivalent), but commercial is also an option.
So far it would seem that Etherpad comes closest, but I can't find plugins/projects/etc. to cover many things on this list (for example, MMD support with live previews, or the "tagging" part).
In other words, it would probably have to be made largely from scratch...Or are there some things I have overlooked?