emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Question collaborative editing - Wikipedia reference


From: Yuan Fu
Subject: Re: Question collaborative editing - Wikipedia reference
Date: Tue, 13 Oct 2020 09:31:11 -0400


> On Oct 12, 2020, at 12:53 PM, Qiantan Hong <qhong@mit.edu> wrote:
> 
> The problem with this is it will require considering conflict
> resolution for every combination of command (which is basically
> impossible) and it’s hard to even just guarantee eventual consistency.
> 
> One simple example to illustrate this:
> * Level 1
> ** Level 2
> some text
> 
> User 1 pressed TAB (to invoke org-cycle) on ** Level 2,
> user 2 delete ** Level 2 in the same time.
> If we just send (command,location) over the wire,
> in the end user 1 will end up having a folded “some text”
> without “**level 2” heading, and user1 will have level 1 folded.
> 
> With a overlay-synchronization approach, I was able to
> support org-cycle with eventual consistency guarantee in 1 line
> (just add to the filter). 
> (The synchronization implementation itself is about 100 lines).
> I was thinking that my way of filtering might not be general enough
> but now I think there’s probably very few use cases for this —
> org-cycle is a useful one — so I don’t need to worry much about
> filtering customization. What do others think?

Maybe define a profile system? Server can specify what to sync: org overlay, 
read-only properties, etc. And implement the synchronization as a plug-in. Note 
that some overlays are mananged by packages (i.e., keeps a pointer to the 
overlay) so syncing other overlays could leads to problems.

Yuan




reply via email to

[Prev in Thread] Current Thread [Next in Thread]