From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Dmitrii Korobeinikov Newsgroups: gmane.emacs.bugs Subject: bug#35419: [Proposal] Buffer Lenses and the Case of Org-Mode (also, Jupyter) Date: Fri, 26 Apr 2019 03:14:33 +0600 Message-ID: References: <87sgu6rhkt.fsf@gmail.com> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="000000000000a59a960587614eb9" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="162860"; mail-complaints-to="usenet@blaine.gmane.org" Cc: Noam Postavsky , 35419@debbugs.gnu.org To: Philipp Stephani Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Apr 25 23:27:11 2019 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hJltf-000gDz-1v for geb-bug-gnu-emacs@m.gmane.org; Thu, 25 Apr 2019 23:27:11 +0200 Original-Received: from localhost ([127.0.0.1]:35268 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hJltd-0003oq-W2 for geb-bug-gnu-emacs@m.gmane.org; Thu, 25 Apr 2019 17:27:10 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:55078) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hJlst-0003Bf-3G for bug-gnu-emacs@gnu.org; Thu, 25 Apr 2019 17:26:24 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hJlhx-0003eh-7u for bug-gnu-emacs@gnu.org; Thu, 25 Apr 2019 17:15:06 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:45930) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hJlhx-0003eb-0O; Thu, 25 Apr 2019 17:15:05 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hJlhu-0008HE-LN; Thu, 25 Apr 2019 17:15:04 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Dmitrii Korobeinikov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, emacs-orgmode@gnu.org Resent-Date: Thu, 25 Apr 2019 21:15:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 35419 X-GNU-PR-Package: emacs,org-mode Original-Received: via spool by 35419-submit@debbugs.gnu.org id=B35419.155622689231781 (code B ref 35419); Thu, 25 Apr 2019 21:15:02 +0000 Original-Received: (at 35419) by debbugs.gnu.org; 25 Apr 2019 21:14:52 +0000 Original-Received: from localhost ([127.0.0.1]:59474 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hJlhk-0008GX-Hg for submit@debbugs.gnu.org; Thu, 25 Apr 2019 17:14:52 -0400 Original-Received: from mail-wm1-f46.google.com ([209.85.128.46]:36442) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hJlhi-0008GI-CW for 35419@debbugs.gnu.org; Thu, 25 Apr 2019 17:14:50 -0400 Original-Received: by mail-wm1-f46.google.com with SMTP id h18so1231433wml.1 for <35419@debbugs.gnu.org>; Thu, 25 Apr 2019 14:14:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=+89dsKPl9PbU76GyYH/p1fr0uvqYBe3teqqW7gbHyr0=; b=vWfouVOAonZNoLORcYXEC18JInQrjKmqLcy6cvYdiqLDQC8f1IyhAugdjl8ue/aNBw Z9Iaum/uxzAkAsgaORmYV4xzptbZFnhyZXnomL1QP0u4rdTWh0E2nZlnTlqeNn4gMgBV xk902lr1FsUd4EdDwtRw41SadqNWgcn1hSEsxCt9/u5tjQaEKaSWDqEj2kv6AvARVre5 tOlKQ3iAW1g3UkDLsErsIDDzbpOjlrYrJaa+BFGuLTgpyrvaJYabvJn5kB6paXK7FMhs heM4RtFBMcXvVkcYPHJ2UM3hb6g/SHog2WTwwrrn5+n7k5IV5axcsCZTcsd99A6Et/h4 dKhg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=+89dsKPl9PbU76GyYH/p1fr0uvqYBe3teqqW7gbHyr0=; b=TwKMfSQpfdQwfUnP/6JOPKRoawYwZEoBVMZ+ZPWev577Q5TpE2LOJ7yG7POCLQF1W7 kLCJDCDeViAZG4RcDbmKaii4NXYtkhdRgrsxu7MTeBaYX0iI1jLErGAcdTZco8Q7j1iK upFk1UfZFLcioEjFVZDjahx9Kpj2qa3N8XvN0qtbgNC5X0kA89YHSLxHiY73fiY6YXr8 QFYHzx6pH8dg8Oo1GEJ3Tqw4UN0mZLvr2U0/7I9tJFtni4xdhUPw3wfmC3/hy1KlN+ja qANmJAZ63512lMsV6BVY+6ethNClaTBY+fAgZ0eoN5WrOPrfBgCvWcHNS/LKL6IdGBW6 Be8w== X-Gm-Message-State: APjAAAVlizJjj7Y5A5d6QitjC/7xekGBqBy1ydkORmL9AWffGHPXBp/A JJqEQLWY0tGlbS7uA4eY7e9BvdHkESU04R979T8= X-Google-Smtp-Source: APXvYqzyaSl3cySlE3CSY8mvUM3bx6B/B4JbNHBHQOgtJyR89P2IbcDqKoHRRqwt9c0/PRmYQ801opgEcmgKyDbVtuM= X-Received: by 2002:a1c:f910:: with SMTP id x16mr4995909wmh.114.1556226884605; Thu, 25 Apr 2019 14:14:44 -0700 (PDT) In-Reply-To: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:158264 Archived-At: --000000000000a59a960587614eb9 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable =D1=87=D1=82, 25 =D0=B0=D0=BF=D1=80. 2019 =D0=B3. =D0=B2 23:52, Philipp Ste= phani : > Am Do., 25. Apr. 2019 um 10:41 Uhr schrieb Dmitrii Korobeinikov > : > > I have imagined that at the low level there is an actual data structure > that keeps the raw textual data and it could be directly shared by multip= le > buffers. > > That's what indirect buffers do. Maybe the indirect buffer > functionality could be beefed up to support what you want? > https://www.gnu.org/software/emacs/manual/html_node/emacs/Indirect-Buffers.= html > The text of the indirect buffer is always identical to the text of its base buffer; changes made by editing either one are visible immediately in the other. But in all other respects, the indirect buffer and its base buffer are completely separate. They can have different names, different values of point, different narrowing, different markers, different major modes, and different local variables. Awesome! Looks like we have some solid rails to drive on. BTW what's the purpose of lentic-mode then? To be "providing multiple persistent views"? https://github.com/phillord/lentic --000000000000a59a960587614eb9 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
=D1=87=D1=82, 25 = =D0=B0=D0=BF=D1=80. 2019 =D0=B3. =D0=B2 23:52, Philipp Stephani <p.stephani2@gmail.com>:
<= /div>
Am Do., 25. Apr. 2019 um 10:41 Uhr schrieb Dmitrii Korobeiniko= v
<dim1212k@gmail.= com>:
> I have imagined that at the low level there is an actual data structur= e that keeps the raw textual data and it could be directly shared by multip= le buffers.

That's what indirect buffers do. Maybe the indirect buffer
functionality could be beefed up to support what you want?
=

> The text o= f the indirect buffer is always identical to the text of its base buffer; c= hanges made by editing either one are visible immediately in the other. But= in all other respects, the indirect buffer and its base buffer are complet= ely separate. They can have different names, different values of point, dif= ferent narrowing, different markers, different major modes, and different l= ocal variables.

Awesome! Looks like we have some s= olid rails to drive on.

BTW what's the purpose= of lentic-mode then? To be "providing multiple persistent views"= ?
--000000000000a59a960587614eb9--