I am of the opinion that just like version control, Zim is best served by hooking into third-party best of breed tools for specialized functions like this. DokuWiki for example tries to do this, but I would turn it off if I could, as I keep my DW source files in VCS. If the bzr hook functionality were extended to work with other DVCS, and simply allowed the user to point to his preferred diff/merge tools, I think that would be better than trying to code this functionality into the program itself.
I have used Unison for over a dozen years to allow for n-way sync'ing of folder trees, from small branches to whole filesystems. It is cross-platform open-source, virtually bulletproof, rides on SSH for security, allows for hub-and-spoke or mesh topologies, and regards to the specific topic here, allows the user to specify what diff/merge tools s/he wants to use to resolve conflicts. Regarding such tools, my choice in mswin is Winmerge, better than anything I've worked with on other platforms. Highly recommended for those looking to share between users or just for users sharing between multiple computers and/or drives if they don't need the version control aspect, just the sync'ing and don't trust third-party-controlled cloud services. The Unison documentation is quite extensive and points to the options needed to account for the differences<http://www.cis.upenn.edu/%7Ebcpierce/unison/download/releases/stable/unison-manual.html#merge>between how diff/merge tools handle their temp files. IMO those sponsoring the bounty should discuss such an approach.
_______________________________________________ Mailing list: https://launchpad.net/~zim-wiki Post to : zim-wiki@lists.launchpad.net Unsubscribe : https://launchpad.net/~zim-wiki More help : https://help.launchpad.net/ListHelp