unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: "Óscar Fuentes" <ofv@wanadoo.es>
Cc: emacs-devel@gnu.org
Subject: Re: Platform independent graphical display for Emacs
Date: Sat, 25 Dec 2021 16:36:44 +0200	[thread overview]
Message-ID: <83a6gorbsz.fsf@gnu.org> (raw)
In-Reply-To: <87bl14srou.fsf@telefonica.net> (message from Óscar Fuentes on Sat, 25 Dec 2021 15:08:17 +0100)

> From: Óscar Fuentes <ofv@wanadoo.es>
> Date: Sat, 25 Dec 2021 15:08:17 +0100
> 
> > If you think this kind of enhancement could materialize just by
> > changing the *term backends of the Emacs display, you don't have a
> > clear idea about the relevant architecture aspects of that.  It is
> > nigh impossible to do something like that without the knowledge of
> > xdisp.c and dispnew.c.  I'm telling you that as the single person
> > around here who has any kind of practical experience in implementing
> > something like that: the TTY menus do something very similar, and that
> > code gets away by the skin of its teeth, and would be probably simply
> > impossible with GUI display.
> >
> > Throwing around such ideas without any real knowledge is simply
> > irresponsible.  Someone might believe you and spend some non-trivial
> > time trying to implement that.
> 
> You are overthinking something that's actually very simple: locating the
> x coordinate of the n-th column and drawing a vertical line from top to
> bottom of the window on each redisplay.

I think you have very inaccurate idea of what a redisplay cycle looks
like.

> If I were the hacker implementing the proposal, I would start with the
> data structures that hold what needs to be shown and with a surface:
> then, do the rendering. I know it is not as straightfordward as just
> throwing a bunch of text on a textbox, but what I've seen on the sources
> and your claims makes me think that any attempt at reusing the legacy
> code (the one that actually paints the frame's contents) would be a
> waste of time.

You are actually talking about redesigning the current display engine.
Which is a Good Thing, I think, because it was designed 23 years ago,
and nowadays we clearly see its limitations.  So please keep going
with this, and hopefully we will have a new display engine capable of
much more, and much better matching today's technologies and
expectations.

But saying that this can be done by just "drawing a vertical line" is
inaccurate at best.

> You are talking as if the complexity, quirks and limitations of Emacs'
> display engine were something good, something to be preserved, when it
> is quite the contrary, ever more when so few people understands it.

No, I'm saying that we shouldn't pretend we can implement features
like the one you mentioned without redesigning the display engine.
Just changing or replacing its terminal-specific backend will not be
enough.

Which is why replacing the toolkit(s) should have quite a different
perspective and different goals.



  reply	other threads:[~2021-12-25 14:36 UTC|newest]

Thread overview: 118+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-22 19:19 Motif support xenodasein--- via Emacs development discussions.
2021-12-22 19:35 ` Arthur Miller
2021-12-22 19:37 ` Eli Zaretskii
2021-12-22 20:24   ` Óscar Fuentes
2021-12-23  6:42     ` Eli Zaretskii
2021-12-23  7:58       ` Arthur Miller
2021-12-23  8:55         ` Eli Zaretskii
2021-12-23 11:46           ` Arthur Miller
2021-12-23 11:52             ` Po Lu
2021-12-23 12:43               ` Arthur Miller
2021-12-23 12:52                 ` Po Lu
2021-12-23 17:35                   ` Arthur Miller
2021-12-24  0:38                     ` Po Lu
2021-12-24  1:17                       ` xenodasein--- via Emacs development discussions.
2021-12-24  1:24                         ` Po Lu
2021-12-24  1:37                           ` xenodasein--- via Emacs development discussions.
2021-12-24  7:24                             ` Eli Zaretskii
2021-12-24  8:06                               ` xenodasein--- via Emacs development discussions.
2021-12-24  8:24                                 ` Stefan Kangas
2021-12-24  8:37                                 ` Eli Zaretskii
2021-12-24  2:20                           ` Stefan Kangas
2021-12-24  2:43                             ` Po Lu
2021-12-24  2:59                             ` [External] : " Drew Adams
2021-12-24  3:17                               ` xenodasein--- via Emacs development discussions.
2021-12-24  3:26                                 ` Po Lu
2021-12-24  3:36                                   ` xenodasein--- via Emacs development discussions.
2021-12-24  7:27                                     ` Eli Zaretskii
2021-12-24  4:30                               ` Platform independent graphical display for Emacs Stefan Kangas
2021-12-24  4:44                                 ` Po Lu
2021-12-24  6:28                                   ` Stefan Kangas
2021-12-24  6:43                                     ` Po Lu
2021-12-24  5:24                                 ` [External] : " Drew Adams
2021-12-24  7:33                                 ` Eli Zaretskii
2021-12-24  8:10                                   ` xenodasein--- via Emacs development discussions.
2021-12-24  8:41                                     ` Eli Zaretskii
2021-12-24  8:48                                       ` xenodasein--- via Emacs development discussions.
2021-12-25  0:30                                   ` Dmitry Gutov
2021-12-25  7:25                                     ` Eli Zaretskii
2021-12-25 11:23                                       ` Dmitry Gutov
2021-12-25 11:38                                         ` Eli Zaretskii
2021-12-25 11:57                                           ` Dmitry Gutov
2021-12-25 12:06                                             ` Eli Zaretskii
2021-12-25 12:59                                               ` Dmitry Gutov
2021-12-25 13:08                                                 ` Eli Zaretskii
2021-12-25 12:06                                             ` Po Lu
2021-12-25 13:08                                               ` Dmitry Gutov
2021-12-25 13:36                                                 ` Po Lu
2021-12-25 12:20                                           ` Óscar Fuentes
2021-12-25 12:29                                             ` Po Lu
2021-12-25 12:49                                               ` Dmitry Gutov
2021-12-25 12:54                                                 ` Po Lu
2021-12-25 13:03                                                   ` Dmitry Gutov
2021-12-25 13:07                                                     ` Po Lu
2021-12-25 13:09                                               ` Óscar Fuentes
2021-12-25 13:20                                                 ` Eli Zaretskii
2021-12-25 14:08                                                   ` Óscar Fuentes
2021-12-25 14:36                                                     ` Eli Zaretskii [this message]
2021-12-25 13:39                                                 ` Po Lu
2021-12-25 13:44                                                   ` xenodasein--- via Emacs development discussions.
2021-12-25 12:37                                             ` Eli Zaretskii
2021-12-25 13:00                                               ` xenodasein--- via Emacs development discussions.
2021-12-25 13:05                                                 ` Eli Zaretskii
2021-12-25 13:11                                                   ` xenodasein--- via Emacs development discussions.
2021-12-25 13:17                                               ` Óscar Fuentes
2021-12-25 13:26                                                 ` xenodasein--- via Emacs development discussions.
2021-12-25 13:27                                                 ` xenodasein--- via Emacs development discussions.
2021-12-25 11:51                                         ` Po Lu
2021-12-25 13:24                                           ` Dmitry Gutov
2021-12-25 13:31                                             ` Po Lu
2021-12-25 14:14                                               ` Dmitry Gutov
2021-12-25 14:30                                                 ` Óscar Fuentes
2021-12-26  1:12                                                 ` Po Lu
2021-12-26  1:51                                                   ` Stefan Kangas
2021-12-26  1:56                                                     ` Po Lu
2021-12-24  9:55                                 ` Lars Ingebrigtsen
2021-12-24 10:02                                   ` Po Lu
2021-12-24 10:16                                   ` Stephen Berman
2021-12-24 10:54                                     ` xenodasein--- via Emacs development discussions.
2021-12-24 11:07                                       ` Po Lu
2021-12-24 11:29                                         ` xenodasein--- via Emacs development discussions.
2021-12-24 11:31                                           ` Po Lu
2021-12-24 11:39                                             ` xenodasein--- via Emacs development discussions.
2021-12-24 12:08                                               ` Po Lu
2021-12-24 12:22                                                 ` xenodasein--- via Emacs development discussions.
2021-12-24 12:27                                                   ` Po Lu
2021-12-24 12:57                                                     ` xenodasein--- via Emacs development discussions.
2021-12-24 13:09                                                       ` Po Lu
2021-12-24 14:27                                                         ` xenodasein--- via Emacs development discussions.
2021-12-24 16:05                                                         ` martin rudalics
2021-12-25  0:22                                                           ` Po Lu
2021-12-25  9:18                                                             ` martin rudalics
2021-12-25  9:42                                                               ` Po Lu
2021-12-26  8:25                                                             ` martin rudalics
2021-12-26 10:16                                                               ` Po Lu
2021-12-24 11:45                                   ` Óscar Fuentes
2021-12-24 12:02                                     ` Eli Zaretskii
2021-12-24 13:19                                       ` Óscar Fuentes
2021-12-24 13:26                                         ` Po Lu
2021-12-24 14:00                                           ` Óscar Fuentes
2021-12-25  0:20                                             ` Po Lu
2021-12-25  0:47                                               ` Óscar Fuentes
2021-12-25  0:57                                                 ` Po Lu
2021-12-25  3:24                                           ` Jose A. Ortega Ruiz
2021-12-25  5:03                                             ` Po Lu
2021-12-25  5:12                                               ` Jose Antonio Ortega Ruiz
2021-12-25  5:23                                                 ` Po Lu
2021-12-25  6:57                                                 ` Eli Zaretskii
2021-12-25  9:18                                               ` martin rudalics
2021-12-25  5:41                                             ` LdBeth
2021-12-25  5:51                                               ` Po Lu
2021-12-24 13:42                                         ` Eli Zaretskii
2021-12-24 14:19                                           ` Óscar Fuentes
2021-12-24 11:50                                   ` Eli Zaretskii
2021-12-25 12:45                                     ` xenodasein--- via Emacs development discussions.
2021-12-24  7:17                         ` Motif support Eli Zaretskii
2021-12-24  0:46                     ` Po Lu
2021-12-23 15:05   ` xenodasein--- via Emacs development discussions.
2021-12-23 15:08     ` Eli Zaretskii

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=83a6gorbsz.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=ofv@wanadoo.es \
    /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).