unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Ergus <spacibba@aol.com>
To: Karl Fogel <kfogel@red-bean.com>
Cc: Stefan Monnier <monnier@iro.umontreal.ca>, emacs-devel@gnu.org
Subject: Re: Question collaborative editing.
Date: Thu, 24 Sep 2020 03:36:55 +0200	[thread overview]
Message-ID: <20200924013655.asv2tem25cbwv5et@Ergus> (raw)
In-Reply-To: <87eemuanct.fsf@red-bean.com>

On Mon, Sep 21, 2020 at 03:25:38PM -0500, Karl Fogel wrote:
>On 21 Sep 2020, Stefan Monnier wrote:
>>> Just a question. I have seen in emacswiki the different alternatives for
>>> collaborative editing and so far all of them look a bit hack so I
>>> decided to ask if anyone is working in such a functionality for
>>> emacs or have any hint. Maybe with tramp or emacsserver?
>>
>>Discussed before.
>>Emacsserver/client is definitely not a good solution for it.
>>
>>Rudel (in GNU ELPA) was a serious attempt to do it, but it's been
>>unmaintained for a long time, so it needs a fair bit of love.
>>
>>I don't think there's a protocol for that with a good Emacs client (or
>>server) yet :-(
>
>I'm very interested in this too, but don't have time to work on it.
>
>However, I've been collecting references related to collaborative editing, especially in Emacs, in case I were ever to get time to work on it.  Perhaps those references would be useful for you, Ergus, so here they are in Org Mode format:
>
>* Collaborative Editing | Parallel Editing | OT, CDRT, and more
>** [[https://github.com/holtzermann17/linepad][Linepad]] Emacs + Etherpad.  But no progress since 2012?
>** [[https://anarc.at/blog/2018-06-26-collaborative-editors-history/][Historical inventory of collaborative editors]] (2018)
>** [[https://github.com/zk-phi/togetherly/][Togetherly]] Emacs-only; simple, but apparently works.  Insecure.  (2017)
>** [[https://blog.kevinjahns.de/are-crdts-suitable-for-shared-editing/][Are CRDTs suitable for shared editing?]]
>   Author of [[https://github.com/yjs/yjs][Yjs]] talks about his optimizations.
>   "In this article, I will introduce you to a simple optimization for
>   CRDTs and examine the exact performance trade-off of using Yjs for
>   shared editing. I hope to convince you that the overhead is
>   actually very small even for large documents with long edit
>   histories."
>** https://github.com/codimd/server
>** [[https://floobits.com/help/plugins/emacs][Floobits client-side Emacs plugin]]
>   The server-side is proprietary (see https://floobits.com/) but the Emacs
>   client-side plugin is free software, under the Apache-2.0 license; you can do
>   'git clone https://github.com/Floobits/floobits-emacs.git' to get it.
>   This doesn't work without the proprietary server, of course, but it might help
>   as a guide to what's needed on the client side.  I emailed Floobits and asked them
>   whether they would consider freeing their server-side code, perhaps for a fee,
>   but never received a response.  Email reference:
>   > From: Karl Fogel
>   > To: Floobits Info Contact Address
>   > Subject: An odd business inquiry.
>   > Date: Wed, 06 May 2020 00:00:21 -0500
>   > Message-ID: <87368d1wuy.fsf@red-bean.com>
>*** [[https://github.com/codimd/server/blob/master/docs/dev/ot.md][Docs on Operational Transform]]
>*** https://operational-transformation.github.io/
>** [[https://martin.kleppmann.com/papers/pushpin-papoc20.pdf][PushPin: Towards Production-Quality Peer-to-PeerCollaboration]]
>   Peter van Hardenberg
>   Ink & Switch, LLCSan Francisco, CA, USA
>
>   Martin Kleppmann
>   University of Cambridge
>   Cambridge, United Kingdom
>** [[https://lord.io/blog/2019/splicing-crdts/][Notes on Splicing CRDTs for Structured Hypertext]]
>** https://github.com/typeintandem/tandem
>** "Creating a Collaborative Editor" (Pierre Hedkvist, 11 June 2019)
>   https://www.pierrehedkvist.com/posts/1-creating-a-collaborative-editor
>** "Data Laced with History: Causal Trees & Operational CRDTs"
>   Etherpad, Google Docs, etc
>   http://archagon.net/blog/2018/03/24/data-laced-with-history/
>

Very thanks Karl thanks to your link I found this:

https://conclave-team.github.io/conclave-site/


Which is indeed very detailed.



  reply	other threads:[~2020-09-24  1:36 UTC|newest]

Thread overview: 151+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20200921120518.35d56p747pr5mhta.ref@Ergus>
2020-09-21 12:05 ` Question collaborative editing Ergus
2020-09-21 13:35   ` Stefan Monnier
2020-09-21 16:24     ` Ergus
2020-09-21 20:25     ` Karl Fogel
2020-09-24  1:36       ` Ergus [this message]
2020-09-24 21:41         ` Fermin
2020-09-25  0:22           ` Ergus
2020-09-25 10:34             ` Fermin
2020-09-26 16:33               ` Ergus
2020-09-29 16:01                 ` Qiantan Hong
2020-09-29 21:46                   ` Ergus
2020-09-30  9:52                     ` Jean Louis
2020-09-28  0:43               ` Ergus
2020-09-29  0:00                 ` Fermin
2020-09-29  1:01                   ` Noam Postavsky
2020-09-29  8:25                     ` Jean Louis
2020-09-29 12:45                       ` Ergus
2020-09-29 15:58                         ` Qiantan Hong
2020-09-29 16:29                           ` Stefan Monnier
2020-09-29 16:33                             ` Qiantan Hong
2020-10-27  5:10                             ` Qiantan Hong
2020-10-27 12:46                               ` Jean Louis
2020-09-29 17:35                         ` Karl Fogel
2020-09-29 21:58                           ` Ergus
2020-09-29 23:40                             ` Qiantan Hong
2020-09-30  0:13                               ` Ergus
2020-09-30  0:47                                 ` Qiantan Hong
2020-09-30  7:40                                 ` Karl Fogel
2020-09-30 13:19                                   ` Ergus
2020-09-30 17:00                                     ` Karl Fogel
2020-10-02 18:48                                     ` Emacs + Etherpad compatibility? (was: Question collaborative editing.) Karl Fogel
2020-10-02 20:34                                       ` Emacs + Etherpad compatibility? Stefan Monnier
2020-10-03 10:01                                         ` Michael Albinus
2020-09-30 13:46                                 ` Question collaborative editing Eli Zaretskii
2020-09-30 13:43                               ` Eli Zaretskii
2020-09-30 15:47                                 ` Qiantan Hong
2020-09-30 16:19                                   ` Eli Zaretskii
2020-09-30 17:00                                     ` Qiantan Hong
2020-09-30 17:04                                       ` Qiantan Hong
2020-09-30 17:20                                         ` Eli Zaretskii
2020-09-30 17:48                                           ` Qiantan Hong
2020-09-30 18:08                                             ` Eli Zaretskii
2020-09-30 23:11                                               ` Ergus
2020-10-01 13:40                                                 ` Eli Zaretskii
2020-10-01 15:21                                                   ` Qiantan Hong
2020-10-01 23:10                                                     ` Karl Fogel
2020-10-01 15:55                                                   ` Ergus
2020-09-30 17:08                                       ` Stefan Monnier
2020-10-01 14:11                                     ` Jean Louis
2020-10-01 16:01                                       ` Ergus
2020-10-01 16:44                                         ` Pankaj Jangid
2020-10-01 16:53                                           ` Ergus
2020-10-01 17:29                                             ` Yuri Khan
2020-10-02  3:00                                               ` Pankaj Jangid
2020-10-02  7:30                                             ` Michael Albinus
2020-10-02  7:35                                               ` Eli Zaretskii
2020-10-02 10:01                                               ` Pankaj Jangid
2020-10-02 11:33                                               ` Ergus
2020-10-02 12:13                                                 ` Michael Albinus
2020-10-04 17:54                                           ` Question collaborative editing - Wikipedia reference Jean Louis
2020-10-04 18:45                                             ` Caio Henrique
2020-10-04 19:48                                               ` Jean Louis
2020-10-04 23:59                                                 ` Qiantan Hong
2020-10-05  0:05                                                   ` Qiantan Hong
2020-10-05  1:08                                                     ` Karl Fogel
2020-10-05  4:40                                                     ` Karl Fogel
2020-10-05  5:48                                                       ` Jean Louis
2020-10-05  6:18                                                         ` Qiantan Hong
     [not found]                                                           ` <EC602765-9F1A-4269-9F2E-4F05C50AE1E7@mit.edu>
2020-10-05  8:07                                                             ` crdt.el collaborative real time editing for Emacs Jean Louis
2020-10-05  8:22                                                               ` Qiantan Hong
2020-10-05 14:03                                                                 ` Jean Louis
2020-10-05 17:05                                                                   ` Qiantan Hong
2020-10-05 18:17                                                                     ` Jean Louis
2020-10-05 14:11                                                                 ` Jean Louis
2020-10-05  9:39                                                               ` Eli Zaretskii
2020-10-05  8:51                                                           ` Jean Louis
2020-10-05  3:53                                                   ` crdt.el - collaborative " Jean Louis
2020-10-05  4:02                                                   ` Question collaborative editing - Wikipedia reference Jean Louis
2020-10-05  4:11                                                     ` Qiantan Hong
2020-10-05  5:34                                                       ` Jean Louis
2020-10-05  5:58                                                       ` Eli Zaretskii
2020-10-05  6:15                                                     ` Stefan Monnier
2020-10-05  6:51                                                       ` Eli Zaretskii
2020-10-05  7:31                                                         ` Ergus via Emacs development discussions.
2020-10-05  8:44                                                       ` Jean Louis
2020-10-05 13:20                                                         ` Stefan Monnier
2020-10-05 17:20                                                           ` Karl Fogel
2020-10-06  1:03                                                             ` Qiantan Hong
2020-10-06  1:41                                                               ` T.V Raman
2020-10-06  8:52                                                               ` Jean Louis
2020-10-06 17:32                                                               ` Jean Louis
2020-10-20 16:15                                                                 ` Ergus
2020-10-20 17:11                                                                   ` Qiantan Hong
2020-10-20 18:51                                                                     ` Jean Louis
2020-10-26 20:36                                                                       ` Qiantan Hong
2020-10-27 21:54                                                                         ` Mathias Dahl
2020-10-27 22:45                                                                           ` Qiantan Hong
2020-10-29 16:21                                                                             ` Ergus
2020-10-28 16:29                                                                         ` Question collaborative editing - tools to connect Jean Louis
2020-10-28 16:40                                                                           ` Qiantan Hong
2020-10-28 17:13                                                                             ` Question collaborative editing - crdt.el, does it use SSL? Jean Louis
2020-10-28 21:51                                                                               ` Qiantan Hong
2020-10-28 22:36                                                                                 ` Jean Louis
2020-10-28 23:08                                                                                   ` Qiantan Hong
2020-10-29  5:43                                                                                     ` Jean Louis
2020-11-02  9:47                                                                                       ` Robert Pluim
2020-11-02 10:02                                                                                         ` Jean Louis
2020-10-28 17:20                                                                             ` Question collaborative editing - torify emacs Jean Louis
2020-10-28 18:01                                                                               ` Qiantan Hong
2020-10-28 18:56                                                                                 ` Jean Louis
2020-10-29  4:57                                                                             ` Question collaborative editing - tools to connect Richard Stallman
2020-10-31  4:16                                                                           ` Qiantan Hong
2020-10-31  5:33                                                                             ` Jean Louis
2020-10-20 18:21                                                                   ` Question collaborative editing - Wikipedia reference Jean Louis
2020-10-06 18:20                                                               ` Karl Fogel
2020-10-07  0:00                                                                 ` Qiantan Hong
2020-10-09  1:50                                                                   ` Yuan Fu
2020-10-09  1:58                                                                   ` Yuan Fu
2020-10-09  2:12                                                                     ` Qiantan Hong
2020-10-09  2:42                                                                       ` Yuan Fu
2020-10-09  7:04                                                                         ` Qiantan Hong
2020-10-09  8:36                                                                           ` joakim
2020-10-09 13:33                                                                             ` Joe Corneli
2020-10-09 15:33                                                                               ` Qiantan Hong
2020-10-11 17:49                                                                               ` Qiantan Hong
2020-10-11 18:21                                                                                 ` Eli Zaretskii
2020-10-11 18:26                                                                                   ` Qiantan Hong
2020-10-11 18:56                                                                                     ` Eli Zaretskii
2020-10-11 19:57                                                                                       ` Qiantan Hong
2020-10-12  2:26                                                                                         ` Eli Zaretskii
2020-10-12  3:22                                                                                           ` Qiantan Hong
2020-10-12 14:40                                                                                             ` Eli Zaretskii
2020-10-12 16:53                                                                                               ` Qiantan Hong
2020-10-13 13:31                                                                                                 ` Yuan Fu
2020-10-11 18:40                                                                                 ` Joe Corneli via Emacs development discussions.
2020-10-09 17:46                                                                           ` Jean Louis
2020-10-09 17:50                                                                             ` Qiantan Hong
2020-10-09 20:31                                                                           ` Karl Fogel
2020-10-10 17:09                                                                             ` Qiantan Hong
2020-10-09  7:09                                                                         ` Qiantan Hong
2020-10-05  5:50                                                   ` Eli Zaretskii
2020-10-05  3:10                                               ` Richard Stallman
2020-10-20 16:37                                             ` Aurélien Aptel
2020-10-20 18:41                                               ` Jean Louis
2020-10-26 19:47                                                 ` Eli Zaretskii
2020-10-26 20:26                                                   ` too many Jean Louis
2020-10-28  4:45                                                   ` Question collaborative editing - Wikipedia reference Richard Stallman
2020-10-28 15:08                                                     ` Eli Zaretskii
2020-10-28 16:20                                                       ` Jean Louis
2020-10-28 16:33                                                         ` Eli Zaretskii
2020-10-28 16:59                                                           ` Jean Louis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200924013655.asv2tem25cbwv5et@Ergus \
    --to=spacibba@aol.com \
    --cc=emacs-devel@gnu.org \
    --cc=kfogel@red-bean.com \
    --cc=monnier@iro.umontreal.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).