From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Joe Corneli via "Emacs development discussions." Newsgroups: gmane.emacs.devel Subject: Re: Question collaborative editing - Wikipedia reference Date: Sun, 11 Oct 2020 19:40:27 +0100 Message-ID: <87pn5ozjvo.fsf@Proteus> References: <83eemji6e8.fsf@gnu.org> <20201004175447.GG15516@protected.rcdrun.com> <87362tvnil.fsf@gmail.com> <20201004194815.GH15516@protected.rcdrun.com> <11EB917D-3276-4D34-8DCD-2336E8062950@mit.edu> <20201005040245.GJ15516@protected.rcdrun.com> <20201005084441.GB4453@protected.rcdrun.com> <87zh50lhda.fsf@red-bean.com> <87pn5vgqsk.fsf@red-bean.com> <79924DB1-2613-4AF6-982C-39157CF3ED9B@mit.edu> <8C2D2AED-0AA8-48AC-ADB2-826177141F2F@gmail.com> <40B06E9F-A6D6-4F9B-8E2B-7DC55D16D0F7@mit.edu> <18458910-E6A1-4867-9936-FFA50E3E72D1@gmail.com> <4AB5904E-A646-4A17-B78C-B4E0271E28B4@mit.edu> <87imbjx0bm.fsf@tanaka.verona.se> <80512E57-D3BA-4F02-A835-DEE434278736@mit.edu> Reply-To: Joe Corneli Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="19498"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org To: Qiantan Hong Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun Oct 11 20:41:38 2020 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kRgHp-0004xB-HS for ged-emacs-devel@m.gmane-mx.org; Sun, 11 Oct 2020 20:41:37 +0200 Original-Received: from localhost ([::1]:44298 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kRgHo-0003kv-Jm for ged-emacs-devel@m.gmane-mx.org; Sun, 11 Oct 2020 14:41:36 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:38950) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kRgGo-0003FG-8D for emacs-devel@gnu.org; Sun, 11 Oct 2020 14:40:34 -0400 Original-Received: from box.hyperreal.enterprises ([85.159.211.210]:47165) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kRgGl-0000q0-LG for emacs-devel@gnu.org; Sun, 11 Oct 2020 14:40:33 -0400 Original-Received: from authenticated-user (box.hyperreal.enterprises [85.159.211.210]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by box.hyperreal.enterprises (Postfix) with ESMTPSA id 5B0343EF83; Sun, 11 Oct 2020 19:40:27 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=hyperreal.enterprises; s=mail; t=1602441627; bh=bQA7WboBO2joZVhnXhSF3gzhVSwWKLCVajDTO8PwTrc=; h=References:From:To:Cc:Subject:In-reply-to:Date:From; b=A59P+C7vcTSbmVZF4pTRF3UxPoaQNbfMOCr0tDROEJOek4rJJmKrtWrMZ794PaQaU TCwS92xbkbjpo19+BDfT1pnlIXbFivBQS6q7JTAutRG8V3MSabSlWrs9/ipe/GG9xK QATB+fQiX7bLRIWccBujJPDQqHPO/P4bUujAiQOHOa+tTBuc02G/92Z3KelT42q8Iq 1gXHV0w7hqFYUG30WqYNW7IOejepo/X7Dl4ABK1zi+AwfpRDXsECgaujuT35HM+0U4 Os/Zk8SFK3NMTkkQ9JSny/Zv7Tc5+xG+DLm/X4J5tAZF5zUqegmb5M6LgeU/1C9wbQ 4GYY5YG4nyNuQ== In-reply-to: <80512E57-D3BA-4F02-A835-DEE434278736@mit.edu> Received-SPF: pass client-ip=85.159.211.210; envelope-from=joseph.corneli.em@hyperreal.enterprises; helo=box.hyperreal.enterprises X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/11 14:40:27 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:257392 Archived-At: Qiantan Hong writes: > I=E2=80=99m now experimenting those in my local copy. > (2) I=E2=80=99m able to synchronize overlays between Emacsen now, > and as a result, e.g. org-cycle now get synced between Emacsen. > There=E2=80=99s a few choice to make though: > - what=E2=80=99s a reasonable way to decide what overlays to sync? I think it would be nice to always have the option, when using Org mode, to have *different* folding properties on different clients. E.g., if my friend is editing inside of a node that I have folded, that=E2=80=99s no problem. To me that seems like a good fit for the multiple-cursor editing paradigm. But I can also see how syncing the folding could be nice =E2=80=94 probably along with a function to "summon" other cursors to = where I am, so that everyone can join up. (This would also be nice in connection with the other feature, in which people might be working across multiple files.) Maybe what could be introduced would be crdt-sync-overlays-mode, which would be a minor mode that syncs all overlays when anyone turns it on? Furthermore, whoever turns it on could propagate their overlays around? (It would be interesting to look at use cases beyond Org mode: I have one specific one one in mind... I=E2=80=99ll see if I can dust off the code= , and if it looks worth pursuing I=E2=80=99ll contact you about it off list!) > b) share a =E2=80=9Cworkspace=E2=80=9D with flat namespace. That seems like a good strategy: this would remove the direct dependency on projectile, but there could be a simple compatibility package to allow projectile to interact with the workspace. > Another problem is how to allow clients creating new file (maybe > don=E2=80=99t?) This reminds me a little bit of org-roam-find-file. In that case, files are being synced to a local database, but in your case they=E2=80=99d be sy= nced around to a distributed database.=20=20 >> (2) Would it make sense for a future version of crdt.el to sync not >> just buffers... but also commands and windows (like lockstep?) I was wondering, how much does it break things if you were to sync the minibuffer? Would that be a cheap way to sync commands, or a disaster in the making...? --=20 Dr Joseph A. Corneli (https://github.com/holtzermann17) HYPERREAL ENTERPRISES LTD is a private company limited by shares, incorpora= ted 25th, June 2019 as Company Number 634284 on the Register of Companies for Scotland (https://beta.companieshouse.gov.uk/company/SC634284).