From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: joakim@verona.se Newsgroups: gmane.emacs.devel Subject: Re: Question collaborative editing - Wikipedia reference Date: Fri, 09 Oct 2020 10:36:45 +0200 Message-ID: <87imbjx0bm.fsf@tanaka.verona.se> References: <83eemji6e8.fsf@gnu.org> <20201001141144.GO4797@protected.rcdrun.com> <20201001160136.chwmpollk4d3qc2e@Ergus> <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> 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="32147"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: Yuan Fu , Fermin , Jean Louis , Caio Henrique , Ergus , Noam Postavsky , Karl Fogel , Stefan Monnier , Eli Zaretskii , Emacs developers To: Qiantan Hong Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri Oct 09 10:38:20 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 1kQnuu-0008FR-IT for ged-emacs-devel@m.gmane-mx.org; Fri, 09 Oct 2020 10:38:20 +0200 Original-Received: from localhost ([::1]:42656 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kQnut-00046A-IY for ged-emacs-devel@m.gmane-mx.org; Fri, 09 Oct 2020 04:38:19 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:49944) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kQntZ-00037u-LA for emacs-devel@gnu.org; Fri, 09 Oct 2020 04:36:57 -0400 Original-Received: from smtp.outgoing.loopia.se ([93.188.3.37]:13689) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kQntV-0006Au-Ul for emacs-devel@gnu.org; Fri, 09 Oct 2020 04:36:57 -0400 Original-Received: from s807.loopia.se (localhost [127.0.0.1]) by s807.loopia.se (Postfix) with ESMTP id 172B730A6E6E for ; Fri, 9 Oct 2020 10:36:48 +0200 (CEST) Original-Received: from s499.loopia.se (unknown [172.22.191.6]) by s807.loopia.se (Postfix) with ESMTP id EAF9F2E28125; Fri, 9 Oct 2020 10:36:47 +0200 (CEST) Original-Received: from s472.loopia.se (unknown [172.22.191.6]) by s499.loopia.se (Postfix) with ESMTP id E233C1CE5EE6; Fri, 9 Oct 2020 10:36:47 +0200 (CEST) X-Virus-Scanned: amavisd-new at amavis.loopia.se Original-Received: from s645.loopia.se ([172.22.191.6]) by s472.loopia.se (s472.loopia.se [172.22.190.12]) (amavisd-new, port 10024) with LMTP id nk-qnCdWkFPv; Fri, 9 Oct 2020 10:36:46 +0200 (CEST) X-Loopia-Auth: user X-Loopia-User: joakim.verona@chimeslab.se X-Loopia-Originating-IP: 193.234.148.196 Original-Received: from tanaka.verona.se (unknown [193.234.148.196]) (Authenticated sender: joakim.verona@chimeslab.se) by s645.loopia.se (Postfix) with ESMTPSA id 5CA521579F61; Fri, 9 Oct 2020 10:36:46 +0200 (CEST) In-Reply-To: <4AB5904E-A646-4A17-B78C-B4E0271E28B4@mit.edu> (Qiantan Hong's message of "Fri, 9 Oct 2020 07:04:47 +0000") Received-SPF: pass client-ip=93.188.3.37; envelope-from=joakim@verona.se; helo=smtp.outgoing.loopia.se X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/09 04:36:49 X-ACL-Warn: Detected OS = FreeBSD 9.x or newer [fuzzy] X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable 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:257255 Archived-At: Qiantan Hong writes: > Here is the current version, I feel like a relatively complete=20 > set of essential features is implemented now. > Changes: > - Unicode support > - fixed cursor behavior > - M-x crdt-list-users displays a list of active users. Press enter > to go to the position of that user=E2=80=99s cursor Thanks for this work, I will try it within our team during one of our online sessions. I tried it briefly myself between 2 emacsen and it seemed to work nicely. /Joakim > > > > It seems that locally I didn=E2=80=99t reproduce yanking issue and multip= le=20 > crdt-test-client issue =E2=80=94 it just open another same document norma= lly, > which is not the best behavior arguably but I didn=E2=80=99t get any erro= r. > > Also in terms of further development, yes a repo will be very helpful > if anyone else is interested in contributing. I used GitHub before > but I=E2=80=99m not sure if it feels comfortable for everyone =E2=80=94 u= sing it only > as a file hosting service makes me feel better but it does run whatever > software MS wants to run under the hood=E2=80=A6 > > >> On Oct 8, 2020, at 10:42 PM, Yuan Fu wrote: >>=20 >>=20 >>=20 >>> On Oct 8, 2020, at 10:12 PM, Qiantan Hong wrote: >>>=20 >>>> Another question: According to the algorithm, what happens when both c= ursor are at the same place and one inserts text? Is the other cursor pushe= d forward or not? >>> Currently the other cursor will not be pushed forward. Any suggestion f= or =E2=80=9Cbetter=E2=80=9D behavior? >>> Also note that the cursor-treating part of version on this mailing list= is not very polished. >>> I=E2=80=99ve made some fixes and improvements on my local version, will= post shortly. >>> The new version will also contain Unicode support and active user list. >>=20 >> Pushing forward is more intuitive IMO. I asked because I see some small = problems with the cursor overlay but I=E2=80=99m sure you=E2=80=99ve fixed = them now. >>=20 >>>=20 >>>> Very cool! If I try to run crdt-test-client when already connected, Em= acs creates a new buffer and compains "Error in post-command-hook (crdt--po= st-command): (wrong-type-argument stringp nil)=E2=80=9D. Any idea why? >>> Thanks for the report! I haven=E2=80=99t consider this case. What do yo= u think is a reasonable >>> behavior? Should it make a new connection? >>=20 >> It probably doesn=E2=80=99t make much sense to have multiple connections= on a single Emacs instance to the same document. I=E2=80=99d just stop and= complain to the user. >>=20 >> Yuan > --=20 Joakim Verona joakim@verona.se