From: Gregory Heytings <gregory@heytings.org>
To: "João Távora" <joaotavora@gmail.com>
Cc: emacs-devel@gnu.org
Subject: Re: [PATCH] (icomplete-vertical-mode): Add support for affixations and, annotations
Date: Tue, 01 Jun 2021 14:47:43 +0000 [thread overview]
Message-ID: <b49749e34d99d725398c@heytings.org> (raw)
In-Reply-To: <875yyxaoxp.fsf@gmail.com>
>>> I didn't get a terrible amount of feedback, but I spent the week
>>> testing that branch, making small adjustments, and verifying that the
>>> default Icomplete and Fido behaviour are unchanged. So I've now
>>> pushed the icomplete-vertical-mode rework to master.
>>
>> Okay, so I guess it's too late to send you feedback... I asked you to
>> wait a few days more, and promised to send you feedback this week.
>
> You can still send feedback, of course. Just because it's in master
> doesn't mean it's written in stone.
>
That's most often the case, but let's see whether this one is an
exception.
>
> I did wait a few days more to your request but I didn't think it made
> sense to wait many more as I need to move on to other developments that
> kind of depend on it. Anyway, I think you'll like the new mode, but let
> me know what you think.
>
I've now spent some time to test the feature and to look at your code, and
here are a few comments:
1. Your code is not modular enough, for example, IMO it would be much
better if the the annotation function and the "candidate number/total
number of candidates" indication were (user-configurable) hooks, instead
of hard-coding these operations in the code. Not everyone wants to see
these numbers, not everyone wants to see annotations even if they are
available, some might want to add annotations to the candidates list with
their own chosen formatting, and so forth.
2. I don't understand why you used "icomplete-scroll" for the variable
name, and why it is not a defcustom. IMO it should have been something
more explicit like "icomplete-vertical-scroll-candidate-list". And with a
hook, this variable would not be necessary.
3. As I feared, the code to scroll the candidates list does not work
correctly alas. I've put lots of efforts to make "icomplete-vertical"
work correctly in virtually every possible case, so I find this very
regrettable. For example, with frame-height = 47, 10 candidates are
displayed, yet the candidates list rotates on the 7th candidate (instead
of the 11th one). With frame-height = 30, 6 candidates are displayed, and
the candidates list rotates on the 6th candidate (instead of the 7th one).
With frame-height = 22, 4 candidates are displayed, and the candidates
list correctly rotates on the 5th candidate. With frame-height = 15, two
candidates are displayed, yet the candidates list rotates on the 4th
candidate (instead of the 3th one, and in this case you don't even see the
current candidate anymore).
If I start working on this (again), I would likely change most of your
code into something else, and it would take some time, because it's a
difficult problem. Would you agree with this?
next prev parent reply other threads:[~2021-06-01 14:47 UTC|newest]
Thread overview: 177+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-22 21:00 [PATCH] (icomplete-vertical-mode): Add support for affixations and, annotations Daniel Mendler
2021-05-23 9:37 ` João Távora
[not found] ` <adbebf98-eb86-9b8b-f191-e2e9f00cf80b@daniel-mendler.de>
2021-05-23 19:55 ` João Távora
2021-05-23 20:14 ` Daniel Mendler
2021-05-23 21:04 ` João Távora
2021-05-23 21:31 ` Daniel Mendler
2021-05-23 21:54 ` João Távora
2021-05-23 22:38 ` Daniel Mendler
2021-05-24 22:46 ` João Távora
2021-05-25 3:06 ` Daniel Mendler
2021-05-25 9:21 ` João Távora
2021-05-26 18:12 ` João Távora
2021-05-26 19:32 ` Daniel Semyonov via Emacs development discussions.
2021-05-23 23:04 ` Daniel Mendler
2021-05-23 23:39 ` Stefan Monnier
2021-05-24 22:54 ` João Távora
2021-05-25 1:38 ` Stefan Monnier
2021-05-25 8:39 ` João Távora
2021-05-25 11:00 ` Gregory Heytings
2021-05-26 0:03 ` João Távora
2021-05-25 3:12 ` Daniel Mendler
2021-05-25 9:25 ` João Távora
2021-05-24 19:05 ` João Távora
2021-05-24 19:13 ` João Távora
2021-05-24 19:53 ` Daniel Mendler
2021-05-24 23:04 ` João Távora
2021-05-25 3:14 ` Daniel Mendler
2021-05-25 9:31 ` João Távora
2021-05-25 9:40 ` Daniel Mendler
2021-05-24 22:05 ` Dmitry Gutov
2021-05-23 23:37 ` Juri Linkov
2021-05-23 23:39 ` Juri Linkov
2021-05-24 10:26 ` Daniel Mendler
2021-05-24 22:07 ` Juri Linkov
2021-05-25 2:53 ` Daniel Mendler
2021-05-25 8:30 ` João Távora
2021-05-25 16:59 ` Juri Linkov
2021-05-25 17:46 ` João Távora
2021-05-25 20:37 ` Juri Linkov
2021-05-26 21:45 ` Juri Linkov
2021-05-26 22:20 ` Dmitry Gutov
2021-05-26 23:17 ` João Távora
2021-05-27 1:06 ` Dmitry Gutov
2021-05-27 7:29 ` João Távora
2021-05-27 13:15 ` Dmitry Gutov
2021-05-27 14:19 ` João Távora
2021-05-27 18:52 ` Dmitry Gutov
2021-05-27 20:58 ` João Távora
2021-05-28 8:08 ` Daniel Mendler
2021-05-28 8:34 ` João Távora
2021-05-28 9:06 ` Daniel Mendler
2021-05-28 10:09 ` João Távora
2021-05-28 11:16 ` Daniel Mendler
2021-05-28 11:41 ` João Távora
2021-05-28 11:55 ` Daniel Mendler
2021-05-28 12:15 ` João Távora
2021-05-28 12:32 ` Daniel Mendler
2021-05-28 13:17 ` João Távora
2021-05-28 13:55 ` Daniel Mendler
2021-05-28 18:46 ` Juri Linkov
2021-05-29 8:11 ` Daniel Mendler
2021-05-28 12:44 ` Dmitry Gutov
2021-05-28 13:14 ` Daniel Mendler
2021-05-28 13:57 ` Dmitry Gutov
2021-05-28 14:10 ` Daniel Mendler
2021-05-28 14:57 ` Dmitry Gutov
2021-05-28 16:01 ` Daniel Mendler
2021-06-01 9:56 ` João Távora
2021-06-01 11:27 ` Daniel Mendler
2021-06-01 12:00 ` João Távora
2021-06-01 12:37 ` Daniel Mendler
2021-06-01 14:30 ` João Távora
2021-06-01 14:40 ` Daniel Mendler
2021-06-01 15:49 ` João Távora
2021-06-01 16:00 ` Daniel Mendler
2021-06-01 18:47 ` João Távora
2021-06-01 19:03 ` Daniel Mendler
2021-06-01 22:32 ` João Távora
2021-06-01 20:22 ` Stefan Monnier
2021-06-01 22:39 ` João Távora
2021-06-02 2:40 ` Stefan Monnier
2021-06-02 7:53 ` João Távora
2021-06-02 13:48 ` Stefan Monnier
2021-06-01 23:04 ` Dmitry Gutov
2021-06-01 23:22 ` João Távora
2021-06-01 23:29 ` João Távora
2021-06-01 23:46 ` Dmitry Gutov
2021-06-02 0:02 ` João Távora
2021-06-02 11:48 ` Dmitry Gutov
2021-06-02 12:59 ` João Távora
2021-06-02 18:29 ` Dmitry Gutov
2021-06-02 18:52 ` João Távora
2021-06-02 14:19 ` complexity in minibuffer (was: (icomplete-vertical-mode): Add support for affixations and, annotations) Stefan Monnier
2021-06-02 14:33 ` João Távora
2021-06-02 15:06 ` complexity in minibuffer Stefan Monnier
2021-06-02 15:20 ` João Távora
2021-06-02 15:29 ` Dmitry Gutov
2021-06-02 15:37 ` João Távora
2021-06-02 18:11 ` Dmitry Gutov
2021-06-02 18:30 ` João Távora
2021-06-02 15:38 ` Stefan Monnier
2021-06-02 15:45 ` João Távora
2021-06-02 15:59 ` Daniel Mendler
2021-06-02 16:29 ` João Távora
2021-06-02 15:53 ` Daniel Mendler
2021-06-02 18:31 ` Dmitry Gutov
2021-06-02 19:03 ` João Távora
2021-06-02 20:15 ` Dmitry Gutov
2021-06-02 22:11 ` Juri Linkov
2021-06-03 9:04 ` João Távora
2021-06-03 20:28 ` Juri Linkov
2021-06-01 15:58 ` [PATCH] (icomplete-vertical-mode): Add support for affixations and, annotations Stefan Monnier
2021-06-01 16:04 ` Daniel Mendler
2021-06-02 5:17 ` tumashu
2021-06-02 7:48 ` João Távora
2021-06-02 10:40 ` Dmitry Gutov
2021-06-02 11:04 ` João Távora
2021-06-02 11:28 ` Dmitry Gutov
2021-06-02 11:33 ` João Távora
2021-06-02 12:31 ` Dmitry Gutov
2021-06-02 13:16 ` João Távora
2021-06-05 1:48 ` Dmitry Gutov
2021-06-05 9:21 ` João Távora
2021-06-05 23:06 ` Dmitry Gutov
2021-06-05 23:25 ` João Távora
2021-06-05 4:23 ` Stefan Monnier
2021-06-05 9:26 ` João Távora
2021-06-05 13:02 ` Ergus
2021-06-05 23:47 ` Dmitry Gutov
2021-06-06 2:30 ` Stefan Monnier
2021-06-02 13:38 ` Stefan Monnier
2021-06-02 14:11 ` Dmitry Gutov
2021-06-02 14:54 ` Stefan Monnier
2021-06-02 15:07 ` João Távora
2021-06-05 1:08 ` Dmitry Gutov
2021-06-05 9:16 ` João Távora
2021-06-01 14:47 ` Gregory Heytings [this message]
2021-06-01 14:53 ` Daniel Mendler
2021-06-01 14:58 ` Gregory Heytings
2021-06-01 15:06 ` Daniel Mendler
2021-06-01 15:33 ` Gregory Heytings
2021-06-01 15:41 ` Daniel Mendler
2021-06-01 15:09 ` João Távora
2021-06-01 15:12 ` Daniel Mendler
2021-06-01 15:06 ` João Távora
[not found] ` <b49749e34d620592d83a@heytings.org>
[not found] ` <CALDnm53Wdnp0yAu6uQd8A=6-uLArCBEdj4F+aVzUdFOT00XMWw@mail.gmail.com>
[not found] ` <b49749e34dc4e4287593@heytings.org>
[not found] ` <87lf7t8wfz.fsf@gmail.com>
2021-06-01 15:24 ` Gregory Heytings
2021-06-01 23:05 ` João Távora
2021-05-24 23:02 ` Dmitry Gutov
2021-05-24 23:04 ` Dmitry Gutov
2021-05-23 21:35 ` Daniel Mendler
2021-05-23 22:42 ` Dmitry Gutov
2021-05-23 23:33 ` Stefan Monnier
2021-05-23 23:42 ` Juri Linkov
2021-05-24 23:24 ` Dmitry Gutov
2021-05-23 23:35 ` Juri Linkov
2021-05-24 3:23 ` Stefan Monnier
2021-05-24 10:34 ` Daniel Mendler
2021-05-24 16:22 ` Caching where-is-internal (was: (icomplete-vertical-mode): Add support for affixations and, annotations) Stefan Monnier
2021-05-24 16:31 ` Daniel Mendler
2021-05-24 19:53 ` Caching where-is-internal Stefan Monnier
2021-05-24 20:07 ` Daniel Mendler
2021-05-24 20:33 ` Stefan Monnier
2021-05-24 20:45 ` Daniel Mendler
2021-05-24 21:44 ` Stefan Monnier
2021-05-24 21:52 ` [PATCH] (icomplete-vertical-mode): Add support for affixations and, annotations Juri Linkov
2021-05-24 22:41 ` João Távora
2021-05-25 1:27 ` Stefan Monnier
2021-05-24 22:37 ` João Távora
2021-05-25 16:53 ` Juri Linkov
2021-05-25 17:24 ` Stefan Monnier
2021-05-25 17:40 ` João Távora
2021-05-25 20:01 ` Stefan Monnier
2021-05-25 20:27 ` Dmitry Gutov
2021-05-25 20:46 ` João Távora
-- strict thread matches above, loose matches on Subject: below --
2021-06-02 8:25 Manuel Uberti
2021-06-02 11:07 ` João Távora
2021-06-02 11:29 ` Manuel Uberti
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=b49749e34d99d725398c@heytings.org \
--to=gregory@heytings.org \
--cc=emacs-devel@gnu.org \
--cc=joaotavora@gmail.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).