From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Alan Mackenzie Newsgroups: gmane.emacs.devel Subject: Re: Future of display engine and lines Date: Sun, 24 Oct 2021 13:17:10 +0000 Message-ID: References: <2108181.AU8Z245p1N@galex-713.eu> <871r4fhxtd.fsf@gnus.org> <83r1cc5i8p.fsf@gnu.org> <87a6iybntc.fsf@gnus.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="25567"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Eli Zaretskii , rms@gnu.org, galex-713@galex-713.eu, emacs-devel@gnu.org To: Lars Ingebrigtsen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun Oct 24 15:18:51 2021 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 1medOk-0006Pv-GO for ged-emacs-devel@m.gmane-mx.org; Sun, 24 Oct 2021 15:18:50 +0200 Original-Received: from localhost ([::1]:53586 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1medOj-0007yX-FY for ged-emacs-devel@m.gmane-mx.org; Sun, 24 Oct 2021 09:18:49 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:49414) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1medNO-00077U-Jw for emacs-devel@gnu.org; Sun, 24 Oct 2021 09:17:26 -0400 Original-Received: from colin.muc.de ([193.149.48.1]:16790 helo=mail.muc.de) by eggs.gnu.org with smtp (Exim 4.90_1) (envelope-from ) id 1medNL-00089q-Hu for emacs-devel@gnu.org; Sun, 24 Oct 2021 09:17:26 -0400 Original-Received: (qmail 58640 invoked by uid 3782); 24 Oct 2021 13:17:11 -0000 Original-Received: from acm.muc.de (p2e5d55e8.dip0.t-ipconnect.de [46.93.85.232]) (using STARTTLS) by colin.muc.de (tmda-ofmipd) with ESMTP; Sun, 24 Oct 2021 15:17:10 +0200 Original-Received: (qmail 15460 invoked by uid 1000); 24 Oct 2021 13:17:10 -0000 Content-Disposition: inline In-Reply-To: <87a6iybntc.fsf@gnus.org> X-Submission-Agent: TMDA/1.3.x (Ph3nix) X-Primary-Address: acm@muc.de Received-SPF: pass client-ip=193.149.48.1; envelope-from=acm@muc.de; helo=mail.muc.de 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, 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:277652 Archived-At: Hello, Lars. On Sun, Oct 24, 2021 at 14:38:07 +0200, Lars Ingebrigtsen wrote: > Eli Zaretskii writes: > > Perhaps I misunderstand what "multiple columns" mean, then. Doesn't > > it mean that buffer text is displayed in separate rectangular > > portions, like this: > > aaaaaaaaaaaa bbbbbbbb ccccccc xxx xxxxxxxx xxxxxxxxxxxx > > dddddddd eeeeeeee fffffff ggg yyyyyy yyyyyyyyy yyyyyyyy > > hhhhhhhh iiiiiiiiii jjjj kkkk zzzzzzzzz zzzzzzzzzz zzzz > > where buffer position of the first "xxx" follows the buffer position > > of the last "kkkk"? > Well, it depends. Perhaps these the next point after "xxx" is before > "where". Or perhaps if you enter more text after "kkk", that box should > get a scroll bar, or perhaps it should extend downwards. > We're basically in the same design territory that HTML + CSS 3 covers, > and It's Just Very Difficult. And as you say, the main problem isn't > displaying the glyphs on the screen -- but it's defining the semantics > about how the blocks interoperate, and making a command like `M-q' do > something sensible within a block. Err, aren't we talking about Follow Mode, here? Follow Mode has been around for a year or two now, and works very well (apart from the fact there are no standard key bindings to enable it in 1/2/3 columns, or disable it). The semantics of the interoperating windows is indeed somewhat involved, and unfortunately also somewhat slow, since follow-mode is fighting the display engine over what goes where. > Within the current Emacs structure, it would have to look like a bunch > of buffers that we glue together as sub-panes inside one window, where > your example ("xxx" follows "kkkk") would be as two sub-panes from one > of these sub-buffers, and where the second sub-pane displays the text > after line 3, with the layout in question. > I mean... it'd be great, but I think we're basically talking about a > different editor. > -- > (domestic pets only, the antidote for overdose, milk.) > bloggy blog: http://lars.ingebrigtsen.no -- Alan Mackenzie (Nuremberg, Germany).