all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Dmitry Gutov <dgutov@yandex.ru>
To: Eli Zaretskii <eliz@gnu.org>, Ergus <spacibba@aol.com>
Cc: ghe@sdf.org, casouri@gmail.com, emacs-devel@gnu.org
Subject: Re: Interactive guide for new users
Date: Sun, 13 Sep 2020 03:01:42 +0300	[thread overview]
Message-ID: <abf43eb2-f445-84c7-ca4e-24ef99a42a08@yandex.ru> (raw)
In-Reply-To: <83y2lfcdq2.fsf@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 3647 bytes --]

On 12.09.2020 16:43, Eli Zaretskii wrote:
>> Date: Sat, 12 Sep 2020 15:18:02 +0200
>> From: Ergus <spacibba@aol.com>
>> Cc: ghe@sdf.org, casouri@gmail.com, emacs-devel@gnu.org
>>
>>> "Spirit" is not what's important here, IMO.  What's important is the
>>> visual appearance and the available actions and their effects.  What I
>>> see out there is similar to Company, and quite different from
>>> icomplete-mode, even when augmented by the vertical sub-mode.
>>
>> We have xref-find-apropos and completion-at-point. But icomplete use is
>> totally different to company.
>>
>> icomplete is more a minibuffer completion engine useful while tipping
>> commands, of lookign for files. There a company panel is uncomfortable.
>>
>> While company-mode is a "suggestion menu" while editing. Maybe our error
>> have been to consider both as a single "feature".
> 
> We are miscommunicating.  I said "similar to Company", meaning that
> the completion drops down a vertical list of candidates that overlays
> the rest of the display.  AFAIK, no existing completion package offers
> something similar.

With a modest amount of work, Company could work in the minibuffer, as 
long as a frontend based on child frames is used (like 
company-posframe), `company-mode-on' is modified to allow operation 
inside minibuffer, and the minibuffer setup is altered to set 
completion-at-point-functions appropriately, so that Company knows which 
completions to offer.

That said, it would still be quite different from what VS Code, Atom and 
friends employ. See the attached screenshot for the Company-based example.

> So either we implement something similar (and
> offer it in that initial tour as an option), or we have to live with
> the fact that users will not find in Emacs completion that they expect
> to see.  In the latter case, I wonder why icomplete is deemed a step
> in the right direction, for reasons I already described: it's too
> complicated and confusion, IMO.

I don't see what's so complicated you see about icomplete-mode. If you 
have problems when trying to use it, perhaps you should ask questions?

To my knowledge, if we want to come close to what those other editors 
show, our current best bet is icomplete-vertical (or something similar 
to it) PLUS a packages that moves the minibuffer to either the center or 
the top of the frame (or makes it seem live the minibuffer has been 
moved, of course).

Here's a showcase if one such package in action:

https://raw.githubusercontent.com/honmaple/emacs-maple-minibuffer/master/screenshot/example.gif

In particular, see the examples where the dropdown is displayed at the 
top and in the middle of the frame.

The package itself is here: 
https://github.com/honmaple/emacs-maple-minibuffer

There are already several packages that try to do something like this, 
but this one seemed the most stable last time I tried.

Even so, it has unfortunate limitations like not being able to adjust 
the height according to the number of available completions. And 
different features that use minibuffer are likely to expose other sharp 
corners of this (very impressive) hack. Like, some previous version of 
icomplete-vertial failed to work with it. The current seems to work 
fine, though.

So some low-level work/redesign of minibuffer code might be needed for 
this to be ready for wide public.

Relatedly, there exists a similar effort by out very own Martin 
Rudalics, but the discussion about polishing it has died down around 
here: https://lists.gnu.org/archive/html/emacs-devel/2020-06/msg00171.html

Previously: 
https://lists.gnu.org/archive/html/emacs-devel/2020-05/msg03167.html

[-- Attachment #2: Screenshot from 2020-09-13 02-23-00.png --]
[-- Type: image/png, Size: 252137 bytes --]

  parent reply	other threads:[~2020-09-13  0:01 UTC|newest]

Thread overview: 174+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-08 18:48 Gather a list of confusions beginner tend to have Göktuğ Kayaalp
2020-09-08 19:30 ` Yuan Fu
2020-09-08 21:30   ` Praharsh Suryadevara
2020-09-09  3:51     ` Richard Stallman
2020-09-09 14:18       ` Eli Zaretskii
2020-09-09 14:24         ` Göktuğ Kayaalp
2020-09-09 15:07           ` Stefan Kangas
2020-09-09 16:09             ` Göktuğ Kayaalp
2020-09-09 16:23               ` Praharsh Suryadevara
2020-09-09 16:06           ` Praharsh Suryadevara
2020-09-11  4:13             ` Richard Stallman
2020-09-11  4:13         ` Richard Stallman
2020-09-11  4:41           ` Praharsh Suryadevara
2020-09-09  7:57     ` tomas
2020-09-10  2:40       ` Richard Stallman
2020-09-10  3:32         ` Eli Zaretskii
2020-09-10  8:29           ` tomas
2020-09-10  9:08             ` Gregory Heytings via Emacs development discussions.
2020-09-10  9:34               ` Eli Zaretskii
2020-09-10 10:08                 ` tomas
2020-09-10  9:30             ` Eli Zaretskii
2020-09-10 10:11               ` tomas
2020-09-11  4:18           ` Richard Stallman
2020-09-11  7:06             ` Eli Zaretskii
2020-09-11 13:47               ` Stefan Monnier
2020-09-12  3:22               ` Richard Stallman
2020-09-12  3:46                 ` Emanuel Berg via Emacs development discussions.
2020-09-10  8:28         ` tomas
2020-09-09 14:01   ` Eli Zaretskii
2020-09-10 23:20     ` Yuan Fu
2020-09-11  0:20       ` Interactive guide for new users (was: Re: Gather a list of confusions beginner tend to have) Stefan Kangas
2020-09-11  8:15         ` Gregory Heytings via Emacs development discussions.
2020-09-11  9:47           ` Interactive guide for new users Phil Sainty
2020-09-11 14:04           ` Interactive guide for new users (was: Re: Gather a list of confusions beginner tend to have) Yuan Fu
2020-09-11 14:38             ` Gregory Heytings via Emacs development discussions.
2020-09-11 14:49               ` Eli Zaretskii
2020-09-11 15:20                 ` Gregory Heytings via Emacs development discussions.
2020-09-11 15:28                   ` Eli Zaretskii
2020-09-11 15:46                     ` Gregory Heytings via Emacs development discussions.
2020-09-11 15:51                       ` Eli Zaretskii
2020-09-11 16:00                         ` Gregory Heytings via Emacs development discussions.
2020-09-11 17:03                           ` Interactive guide for new users Robert Pluim
2020-09-11 17:23                             ` Emanuel Berg via Emacs development discussions.
2020-09-11 17:36                               ` Robert Pluim
2020-09-11 17:39                                 ` Emanuel Berg via Emacs development discussions.
2020-09-11 18:43                           ` Interactive guide for new users (was: Re: Gather a list of confusions beginner tend to have) Eli Zaretskii
2020-09-11 19:48                             ` Ergus
2020-09-12  6:02                               ` Eli Zaretskii
2020-09-12  9:33                                 ` Ergus
2020-09-13 12:13                                   ` Interactive guide for new users Philip K.
2020-09-11 18:59                           ` FW: Interactive guide for new users (was: Re: Gather a list of confusions beginner tend to have) Drew Adams
2020-09-11 17:47                       ` Göktuğ Kayaalp
2020-09-11 17:53                         ` Emanuel Berg via Emacs development discussions.
2020-09-11 18:04                         ` Praharsh Suryadevara
2020-09-12 11:16                         ` Interactive guide for new users Lars Ingebrigtsen
2020-09-12 14:26                           ` Göktuğ Kayaalp
2020-09-12 14:55                             ` Gregory Heytings via Emacs development discussions.
2020-09-12 15:10                               ` Göktuğ Kayaalp
2020-09-12 15:18                                 ` Gregory Heytings via Emacs development discussions.
2020-09-13 18:12               ` Juri Linkov
2020-09-11 14:02         ` Interactive guide for new users (was: Re: Gather a list of confusions beginner tend to have) Yuan Fu
2020-09-12  9:31         ` Interactive guide for new users Gregory Heytings via Emacs development discussions.
2020-09-12  9:55           ` Eli Zaretskii
2020-09-12 10:35             ` Gregory Heytings via Emacs development discussions.
2020-09-12 10:52               ` Ergus
2020-09-12 10:58               ` Eli Zaretskii
2020-09-12 11:34                 ` Dmitry Gutov
2020-09-12 12:00                 ` Gregory Heytings via Emacs development discussions.
2020-09-12 12:21                   ` Eli Zaretskii
2020-09-12 13:56                     ` Gregory Heytings via Emacs development discussions.
2020-09-12 14:07                       ` Eli Zaretskii
2020-09-12 12:54                   ` Ergus
2020-09-12 12:16                 ` Ergus
2020-09-12 12:34                   ` Eli Zaretskii
2020-09-12 13:18                     ` Ergus
2020-09-12 13:43                       ` Eli Zaretskii
2020-09-12 14:17                         ` Ergus
2020-09-12 14:36                           ` Eli Zaretskii
2020-09-12 14:55                             ` Ergus
2020-09-12 16:25                             ` Ergus
2020-09-12 17:17                               ` Eli Zaretskii
2020-09-12 17:21                                 ` Yuan Fu
2020-09-12 17:39                                   ` Eli Zaretskii
2020-09-12 18:36                                   ` Gregory Heytings via Emacs development discussions.
2020-09-12 20:05                                     ` Ergus
2020-09-13  0:01                         ` Dmitry Gutov [this message]
2020-09-13  2:35                           ` Ergus
2020-09-13 17:56                             ` Dmitry Gutov
2020-09-13 22:10                               ` Gregory Heytings via Emacs development discussions.
2020-09-14 11:20                                 ` Thibaut Verron
2020-09-14 23:42                                   ` E
2020-09-15  7:40                                     ` Ergus
2020-09-15 23:40                                       ` E
2020-09-15 12:10                                   ` Stephen Leake
2020-09-15 12:22                                     ` Thibaut Verron
2020-09-15 23:33                                     ` E
2020-09-13 18:01                             ` Dmitry Gutov
2020-09-13 18:20                             ` Tim Van den Langenbergh
2020-09-13 21:10                               ` Ergus
2020-09-13  7:14                           ` Gregory Heytings via Emacs development discussions.
2020-09-13 14:04                           ` Eli Zaretskii
2020-09-13 16:38                             ` John Yates
2020-09-13 16:51                               ` Eli Zaretskii
2020-09-13 17:39                               ` Dmitry Gutov
2020-09-14 12:41                                 ` John Yates
2020-09-14 15:28                                   ` Eli Zaretskii
2020-09-15  1:42                                     ` John Yates
2020-09-15  7:00                                       ` Göktuğ Kayaalp
2020-09-16  3:30                                         ` John Yates
2020-09-16 10:14                                           ` Göktuğ Kayaalp
2020-09-15 14:15                                       ` Eli Zaretskii
2020-09-14 22:28                                   ` Dmitry Gutov
2020-09-13 17:47                             ` Dmitry Gutov
2020-09-14 14:17                             ` Gregory Heytings via Emacs development discussions.
2020-09-26  9:16               ` Elias Mårtenson
2020-09-26  9:31                 ` Eli Zaretskii
2020-09-26 14:38                 ` Drew Adams
2020-09-26 15:13                   ` Eli Zaretskii
2020-09-26 16:33                     ` Drew Adams
2020-09-26 16:39                   ` Andreas Schwab
2020-09-26 16:57                     ` Drew Adams
2020-09-26 16:01                 ` Jean Louis
2020-09-12 11:02             ` Göktuğ Kayaalp
2020-09-12 12:12               ` Gregory Heytings via Emacs development discussions.
2020-09-14 10:52               ` Robert Pluim
2020-09-19 15:20         ` Interactive guide for new users (was: Re: Gather a list of confusions beginner tend to have) Eduardo Mercovich
2020-09-19 17:02           ` Drew Adams
2020-09-21 14:50             ` Eduardo Mercovich
2020-09-21 16:07               ` Drew Adams
2020-09-21 21:40                 ` Eduardo Mercovich
2020-09-21 23:03                   ` Drew Adams
2020-09-22  3:40                 ` Richard Stallman
2020-09-22  9:06                   ` Interactive guide for new users Philip K.
2020-09-23  3:40                     ` Richard Stallman
2020-09-23 12:49                       ` Philip K.
2020-09-24  1:32                         ` Richard Stallman
2020-09-26  3:13                           ` Okam
2020-09-22 14:06                   ` Stefan Monnier
2020-09-28  9:24                   ` Po Lu
2020-09-29  3:29                     ` Richard Stallman
2020-09-19 17:16           ` Philip K.
2020-09-19 17:25             ` Eli Zaretskii
2020-09-19 18:09               ` Eduardo Mercovich
2020-09-19 18:39                 ` Eli Zaretskii
2020-09-19 21:43                   ` Eduardo Mercovich
2020-09-20  5:52                     ` Eli Zaretskii
2020-09-21 22:15                       ` Eduardo Mercovich
2020-09-22 13:56                         ` Eli Zaretskii
2020-09-23 12:54                           ` Eduardo Mercovich
2020-09-23 13:28                             ` Caio Henrique
2020-09-23 13:42                               ` Eduardo Mercovich
2020-09-23 14:16                             ` Stefan Kangas
2020-09-23 14:58                             ` Eli Zaretskii
2020-09-23 23:14                               ` Yuan Fu
2020-09-30 13:20                                 ` Eduardo Mercovich
2020-09-30 14:11                                   ` Eli Zaretskii
2020-09-19 17:53             ` Eduardo Mercovich
2020-09-20  9:26               ` Philip K.
2020-09-21 21:48                 ` Eduardo Mercovich
2020-09-11  6:45       ` Gather a list of confusions beginner tend to have Eli Zaretskii
2020-09-11  8:51         ` Dmitry Gutov
2020-09-11  8:59           ` Emanuel Berg via Emacs development discussions.
2020-09-11 13:52         ` Yuan Fu
2020-09-11 14:01           ` Eli Zaretskii
2020-09-11 14:27           ` Stefan Monnier
2020-09-09  2:01 ` Nick Savage
2020-09-09 14:48   ` Göktuğ Kayaalp
2020-09-10  2:36 ` Richard Stallman
2020-09-10 10:07   ` Göktuğ Kayaalp
2020-09-10 17:28     ` Drew Adams
2020-09-10 21:17       ` Göktuğ Kayaalp
     [not found] <<875z8ortot.fsf@gkayaalp.com>
     [not found] ` <<D09D40C2-FF5C-4D1B-A030-C710297C1AE0@gmail.com>
     [not found]   ` <<83lfhjkq0r.fsf@gnu.org>
     [not found]     ` <<8620B5CD-CA92-46BF-80A8-DBE7052F4CA6@gmail.com>
     [not found]       ` <<CADwFkm=GQqZ2e07QuC582T-MNhi1Xo4OPsMTYbQHH9gD7h6QnA@mail.gmail.com>
     [not found]         ` <<alpine.NEB.2.22.394.2009120917260453.23267@sdf.lonestar.org>
     [not found]           ` <<83d02re2uk.fsf@gnu.org>
2020-09-12 16:25             ` Interactive guide for new users Drew Adams
2020-09-13  4:34               ` Ihor Radchenko
  -- strict thread matches above, loose matches on Subject: below --
2020-09-29 11:11 Itai Efrat

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

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=abf43eb2-f445-84c7-ca4e-24ef99a42a08@yandex.ru \
    --to=dgutov@yandex.ru \
    --cc=casouri@gmail.com \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=ghe@sdf.org \
    --cc=spacibba@aol.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 external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.