[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Question collaborative editing.
From: |
Karl Fogel |
Subject: |
Re: Question collaborative editing. |
Date: |
Mon, 21 Sep 2020 15:25:38 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) |
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/
- Question collaborative editing., Ergus, 2020/09/21
- Re: Question collaborative editing., Stefan Monnier, 2020/09/21
- Re: Question collaborative editing., Ergus, 2020/09/21
- Re: Question collaborative editing.,
Karl Fogel <=
- Re: Question collaborative editing., Ergus, 2020/09/23
- Re: Question collaborative editing., Fermin, 2020/09/24
- Re: Question collaborative editing., Ergus, 2020/09/24
- Re: Question collaborative editing., Fermin, 2020/09/25
- Re: Question collaborative editing., Ergus, 2020/09/26
- Re: Question collaborative editing., Qiantan Hong, 2020/09/29
- Re: Question collaborative editing., Ergus, 2020/09/29
- Re: Question collaborative editing., Jean Louis, 2020/09/30
- Re: Question collaborative editing., Ergus, 2020/09/27
- Re: Question collaborative editing., Fermin, 2020/09/28