unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: "João Távora" <joaotavora@gmail.com>
Cc: me@eshelyaron.com, emacs-devel@gnu.org
Subject: Re: Inline completion preview
Date: Fri, 27 Oct 2023 15:18:31 +0300	[thread overview]
Message-ID: <83fs1wdzs8.fsf@gnu.org> (raw)
In-Reply-To: <CALDnm521daKQbeaFiNRVPmF0OW-qSGNhSzS0s--VU-1qSMXSsA@mail.gmail.com> (message from João Távora on Fri, 27 Oct 2023 12:49:40 +0100)

> From: João Távora <joaotavora@gmail.com>
> Date: Fri, 27 Oct 2023 12:49:40 +0100
> Cc: Eshel Yaron <me@eshelyaron.com>, emacs-devel@gnu.org
> 
> On Thu, Oct 26, 2023 at 7:38 PM Eli Zaretskii <eliz@gnu.org> wrote:
> >
> > > From: Eshel Yaron <me@eshelyaron.com>
> > > Date: Thu, 26 Oct 2023 20:11:17 +0200
> > >
> > > I want to propose adding an inline completion preview mechanism to Emacs.
> > >
> > > By inline completion preview, I mean an overlay that pop ups after point
> > > showing one of the candidates for at-point completion.  You can view
> > > this mechanism as giving you a hint or suggesting a certain completion.
> >
> > I wish people would work on adding to Emacs some a GUI infrastructure
> > for showing such completion candidates like other IDEs do, instead of
> > once again using overlays with after-string properties.  The result of
> > using overlay strings is simply not visually appealing, and on top of
> > that it causes quite a few complications for the display code.
> 
> I think agree with this, but it should work with Non-GUI Emacs, too right?

Ideally, yes.

> In a TUI Emacs, there have been these nice pop-up menus for a while.  At first
> sight the display infrastructure being used there seems suitable for showing
> completions, so I wonder if that infrastructure couldn't be refactored
> then reused
> for a completion popup in core.

The text-mode frames should preferably also support this, but we
should first think how to do that on GUI frames, and only afterwards
how to express the same feature on TTY frames.

I also don't see any catastrophe in having features that can only work
on GUI frames, although we should try to avoid that.  For example,
popup menus and dialog boxes were not supported on TTY frames for 2
decades, and we didn't consider that to be such a bad thing.  So we
could develop the feature discussed here on GUI, and then take the
next 2 decades to find a way of doing that on TTY.



  parent reply	other threads:[~2023-10-27 12:18 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-26 18:11 Inline completion preview Eshel Yaron
2023-10-26 18:38 ` Eli Zaretskii
2023-10-26 19:39   ` Eshel Yaron
2023-10-27  5:52     ` Eli Zaretskii
2023-10-27 15:43       ` Eshel Yaron
2023-10-27 17:12         ` Eli Zaretskii
2023-10-27 18:13           ` Eshel Yaron
2023-10-27 20:25             ` chad
2023-10-28 16:47         ` Juri Linkov
2023-10-28 19:01           ` Eshel Yaron
2023-10-29 16:24             ` Alexander Adolf
2023-10-29 23:29               ` João Távora
2023-10-30  9:25                 ` Juergen Fenn
2023-10-30  9:36                   ` João Távora
2023-10-30 11:04                     ` Dmitry Gutov
2023-10-30 12:42                 ` Alexander Adolf
2023-10-30 13:01                   ` João Távora
2023-10-30 17:32                     ` Alexander Adolf
2023-10-30 17:52                       ` João Távora
2023-10-30 13:20                   ` Dmitry Gutov
2023-10-30 17:43                     ` Alexander Adolf
2023-10-30 22:49                       ` Dmitry Gutov
2023-10-31  6:50                         ` Eshel Yaron
2023-10-31 17:31                           ` Alexander Adolf
2023-10-31 17:43                             ` Eshel Yaron
2023-10-31 23:29                           ` Dmitry Gutov
2023-11-01  8:30                             ` Eshel Yaron
2023-11-01 10:11                               ` João Távora
2023-11-01 10:44                                 ` Eshel Yaron
2023-11-01 11:07                                   ` João Távora
2023-11-01 12:17                                     ` Eshel Yaron
2023-11-01 12:23                                     ` Dmitry Gutov
2023-11-01 14:07                                       ` Juergen Fenn
2023-11-01 19:57                                         ` Dmitry Gutov
2023-11-01 12:08                                   ` Dmitry Gutov
2023-11-01 12:14                               ` Dmitry Gutov
2023-11-01 12:24                                 ` Dmitry Gutov
2023-11-01 12:29                                 ` Eshel Yaron
2023-11-01 12:32                                   ` Dmitry Gutov
2023-11-01 12:34                                 ` Eli Zaretskii
2023-11-01 12:36                                   ` Dmitry Gutov
2023-11-01 13:28                         ` Po Lu
2023-11-01 19:49                           ` Dmitry Gutov
2023-10-27  8:58     ` Ihor Radchenko
2023-10-27 15:53       ` Eshel Yaron
2023-10-27 11:49   ` João Távora
2023-10-27 11:52     ` João Távora
2023-10-27 12:18     ` Eli Zaretskii [this message]
2023-10-27 12:55       ` João Távora
2023-10-27 12:58         ` Eli Zaretskii
2023-10-27 13:05     ` Dmitry Gutov

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=83fs1wdzs8.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=joaotavora@gmail.com \
    --cc=me@eshelyaron.com \
    /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).