unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Karl Fogel <kfogel@red-bean.com>
To: Richard Stallman <rms@gnu.org>
Cc: excalamus@tutanota.com, van.ly+2020@sdf.org, emacs-devel@gnu.org
Subject: Re: What is the most useful potential feature which Emacs lacks?
Date: Mon, 01 Jun 2020 22:57:14 -0500	[thread overview]
Message-ID: <87a71mm86d.fsf@red-bean.com> (raw)
In-Reply-To: <E1jfbWV-0002Am-UY@fencepost.gnu.org> (Richard Stallman's message of "Sun, 31 May 2020 23:54:03 -0400")

On 31 May 2020, Richard Stallman wrote:
>It would be good to do that in a truly usable way.
>
>Emacs has had the feature of running multiple terminals at once for
>over 20 years, but there are bad problems in it.  To do it right, to
>has to have a thread for each terminal, and they have to be able to
>get in and out of the minibuffer separately.
>
>The other way to do this is to have separate Emacs processes that
>communicate with each other.  We would need to use modification hooks
>to take note of changes and transmit them to the other Emacses.
>
>Or perhaps one Emacs could be the "server", and the others act as clients,
>maintaining mirrors of the document.

Having separate Emacs processes that communicate with each other is best, I think.  

As Yuri Khan pointed out, experienced users have customized their Emacsen in distinctive ways, such that having to edit inside someone else's Emacs setup would be annoying.

Furthermore, there are privacy concerns with sharing an Emacs process.  I might want to collaborate with people on one buffer while having private things in other buffers.  It would be harder to reliably lock out access to those other buffers if the collaboration were happening in the same Emacs process.

Meanwhile, this concern...

>However, it then follows that each instance is going to have its own
>supporting tools. So, a power user who has an elaborate setup with LSP,
>flycheck, whatever, will not be able to share the advantages of his
>setup with a newbie.

...is not a big deal IMHO.  The primary goal of collaborative editing is the editing.  Anyway, if the expert can see the newbie editing in real time, the expert can suggest usage or configuration improvements, which the newbie can install or learn to do in her own Emacs.  That's how teaching normally happens anyway.  It's not important for the newbie to have access to the expert's personal customizations, because it's rare that the most useful lesson for a newbie involves duplicating some expert's idiosyncratic personal configuraton rather than learning some built-in thing already available in Emacs.  I mean, the newbie might be urged to set a few variables in her .emacs, or turn on some auto-mode associations or something, but that's normal customization (and the expert can share *her* .e
 macs via the same collaborative editing method, if she wants to do so).

I wish I had time to work on any of the leads at https://www.emacswiki.org/emacs/CollaborativeEditing.  That page lists a number of protocols and third-party free software libraries that could be used to make Emacs do inter-process collaborative editing.  The client side of Floobits plugin listed there is free software and seems promising (it is apparently working -- I have no direct experience of this, as I haven't used it because the server-side is proprietary.  I emailed them in early May to ask how much it would cost to get them to liberate the server side, and never received a response).  'git clone https://github.com/Floobits/floobits-emacs.git' will get you the client-side code, anyway.

Best regards,
-Karl



  parent reply	other threads:[~2020-06-02  3:57 UTC|newest]

Thread overview: 144+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-27 15:58 What is the most useful potential feature which Emacs lacks? Van Ly
2020-05-28  3:13 ` Richard Stallman
2020-05-30  7:17   ` Van Ly
2020-05-31  7:10     ` Richard Stallman
2020-05-31 10:01       ` Van Ly
2020-05-31 12:49         ` excalamus--- via Emacs development discussions.
2020-06-01  3:54           ` Richard Stallman
2020-06-01  5:21             ` Yuri Khan
2020-06-02  2:55               ` Richard Stallman
2020-06-02  3:57             ` Karl Fogel [this message]
2020-06-02  5:15               ` Ihor Radchenko
2020-06-02 13:42               ` Stefan Monnier
2020-06-01  9:11           ` Bastien
2020-06-01 15:03             ` Eli Zaretskii
2020-06-01 23:32               ` Bastien
2020-06-01 23:50                 ` Jean-Christophe Helary
2020-06-06  9:42                   ` Eli Zaretskii
2020-06-06  9:58                     ` tomas
2020-06-06 10:11                       ` Eli Zaretskii
2020-06-06 10:29                         ` tomas
2020-06-06 14:19                         ` Stefan Monnier
2020-06-06 14:58                           ` Arthur Miller
2020-06-06 20:18                         ` tomas
2020-06-06 22:20                           ` Stefan Monnier
2020-06-06  9:59                     ` Thibaut Verron
2020-06-06 10:12                       ` Eli Zaretskii
2020-06-06 10:18                       ` tomas
2020-06-07  3:36                         ` collaborative editing Richard Stallman
2020-06-07  9:28                           ` tomas
2020-06-06 12:05                     ` What is the most useful potential feature which Emacs lacks? Jean-Christophe Helary
  -- strict thread matches above, loose matches on Subject: below --
2021-03-04 11:46 Evgeny Zajcev
2020-05-12  7:22 ndame
2020-05-12  7:11 Zhu Zihao
2020-05-11 20:09 ndame
2020-05-12  6:57 ` Arthur Miller
2020-05-12  7:13   ` ndame
2020-05-12 12:54     ` Stefan Kangas
2020-05-12 13:07       ` ndame
2020-05-12 14:56         ` Arthur Miller
2020-05-13  0:39   ` HaiJun Zhang
2020-05-13  1:34     ` Eduardo Ochs
2020-05-13  1:50       ` Eduardo Ochs
2020-05-12 10:00 ` H. Dieter Wilhelm
2020-05-12 11:10   ` Michael Albinus
2020-05-13  3:55     ` Richard Stallman
2020-05-13 10:32       ` Michael Albinus
2020-05-14  5:11         ` Richard Stallman
2020-05-14 10:34           ` Michael Albinus
2020-05-15  3:25             ` Richard Stallman
2020-05-15  8:15               ` Michael Albinus
2020-05-16  4:18                 ` Richard Stallman
2020-05-16 22:07                   ` H. Dieter Wilhelm
2020-05-18  3:45                     ` Richard Stallman
2020-05-17  8:28                   ` Michael Albinus
2020-05-12 11:57   ` Eric S Fraga
2020-05-12 15:34     ` Michael Albinus
2020-05-12 16:33       ` Eric S Fraga
2020-05-12 15:04   ` Arthur Miller
2020-05-12 16:00   ` Drew Adams
2020-05-12 12:30 ` Helmut Eller
2020-05-13  1:22   ` Jose A. Ortega Ruiz
     [not found]     ` <5AYrQ3kvagEiLsXcUuMZvkDj1gBHT4YnJyVCX6RsvMkayS1ZbGWk18lJOyo_m8XanhsUygUtEqZw8OOOQOlwkg==@protonmail.internalid>
2020-05-13  2:45     ` Stefan Monnier
2020-05-13  3:58       ` jao
2020-05-13 23:12   ` João Távora
2020-05-14  0:04     ` Stefan Kangas
2020-05-14 10:08       ` Helmut Eller
2020-05-14 10:17         ` tomas
2020-05-14 10:34           ` Robert Pluim
2020-05-14 10:40             ` tomas
2020-05-15  3:25               ` Richard Stallman
2020-05-15  3:39                 ` Dmitry Gutov
2020-05-15  3:25               ` Richard Stallman
2020-05-15  3:51                 ` Dmitry Gutov
2020-05-16  4:18                   ` Richard Stallman
2020-05-16  9:29                     ` Dmitry Gutov
2020-05-17  2:55                       ` Richard Stallman
2020-05-15  3:17       ` Richard Stallman
2020-05-15  6:56         ` Eli Zaretskii
2020-05-16  4:18           ` Richard Stallman
2020-05-16  7:13             ` Eli Zaretskii
2020-05-16 12:56               ` Stefan Monnier
2020-05-17  2:56               ` Richard Stallman
2020-05-17  7:22                 ` Andreas Schwab
2020-05-18  3:42                 ` Richard Stallman
2020-05-18 14:29                   ` Eli Zaretskii
2020-05-18 15:20             ` Filipp Gunbin
2020-05-18 15:26               ` Eli Zaretskii
2020-05-15  9:10         ` Robert Pluim
2020-05-15 10:21           ` Eli Zaretskii
2020-05-15 11:07             ` Robert Pluim
2020-05-15 11:28               ` Eli Zaretskii
2020-05-15 11:49                 ` Robert Pluim
2020-05-15 11:58                   ` Eli Zaretskii
2020-05-15 12:14                     ` Robert Pluim
2020-05-15 12:56                       ` Eli Zaretskii
2020-05-15 15:22                       ` Stefan Monnier
2020-05-15 15:28                         ` Robert Pluim
2020-05-16  4:18               ` Richard Stallman
2020-05-16  4:17           ` Richard Stallman
2020-05-16  6:50             ` Andreas Schwab
2020-05-16  8:24               ` Yuri Khan
2020-05-17  2:56               ` Richard Stallman
2020-05-14 11:57   ` Dmitry Gutov
2020-05-12 12:44 ` Christopher Lemmer Webber
2020-05-13 16:36   ` Karl Fogel
2020-05-14  3:01     ` Christopher Lemmer Webber
2020-05-14  4:08       ` Karl Fogel
2020-05-14 10:01         ` Robert Pluim
2020-05-14 16:35         ` Christopher Lemmer Webber
2020-05-17  1:31           ` Dmitry Gutov
2020-05-18  3:43             ` Richard Stallman
2020-05-15  3:16         ` Richard Stallman
2020-05-28  4:00           ` Karl Fogel
2020-05-28 13:18             ` Stefan Monnier
2020-05-28 17:19               ` Karl Fogel
2020-05-28 18:05                 ` Drew Adams
2020-05-28 18:45                 ` Dmitry Gutov
2020-05-28 20:52                   ` Alan Third
2020-05-28 21:02                     ` Stefan Monnier
2020-05-28 21:10                       ` Alan Third
2020-05-28 21:27                         ` andres.ramirez
2020-05-28 21:54                         ` Stefan Monnier
2020-05-29 13:24                         ` Arthur Miller
2020-05-28 21:14                       ` Joost Kremers
2020-05-29 13:24                         ` Arthur Miller
2020-05-29  1:24                       ` Karl Fogel
2020-05-29  3:36                         ` Drew Adams
2020-05-29  3:06                     ` Richard Stallman
2020-05-29  3:41                       ` Drew Adams
2020-05-29 13:19                       ` Arthur Miller
2020-05-30  5:23                         ` Thibaut Verron
2020-05-29 13:11                     ` Arthur Miller
2020-05-13 17:48 ` ndame
2020-05-14  1:15   ` Arthur Miller
2020-05-14  4:10     ` ndame
2020-05-14  4:28       ` Arthur Miller
2020-05-15 10:38       ` Eli Zaretskii
2020-05-17  5:37         ` ndame
2020-05-17 12:42           ` Stefan Kangas
2020-05-17 13:18             ` Arthur Miller
2020-05-19  3:47               ` Richard Stallman
2020-05-17 22:03             ` chad
2020-05-13 21:05 ` Vasilij Schneidermann
2020-05-14 14:35 ` Björn Lindqvist

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=87a71mm86d.fsf@red-bean.com \
    --to=kfogel@red-bean.com \
    --cc=emacs-devel@gnu.org \
    --cc=excalamus@tutanota.com \
    --cc=rms@gnu.org \
    --cc=van.ly+2020@sdf.org \
    /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).