Problems with ivy-prescient which added recently
wd opened this issue · 8 comments
Expected behavior
Before I upgrade to the latest version, when I run counsel-M-x
, I'll get
When I input deft
, I'll get this one. You can see the deft
command will be selected by default.
Actual behavior
After I upgrade to the latest version, the counsel-M-x
will show
And after input deft,
it will show
Steps to reproduce the problem
See the above section. I can reproduce the old results by removing all the configs related to ivy-prescient
in modules/prelude-ivy.el
.
I see here didn't include the command counsel-M-x
, but even I added it to the list, the result seems still worse than the old one. These are settings for ivy
in my .emacs.
(use-package ivy
:config
(setq ivy-virtual-abbreviate "abbreviate")
(setq ivy-on-del-error-function #'ignore)
)
Environment & Version information
Emacs version
GNU Emacs 28.0.50 (build 1, x86_64-apple-darwin20.1.0, NS appkit-2022.10 Version 11.0.1 (Build 20B50)) of 2020-12-12
Operating system
MacOS Big Sur
11.0.1
I'll see if I can make the prescient
integration optional, but given that it depends on the load order I guess that's going to be hard. Might be best to just remove it for ivy
, but let's see if @raxod502 can help us with some insight.
Unfortunately, I can't provide any insight into ivy-prescient
, as I no longer support it (in favor of selectrum-prescient
and other prescient.el
integration packages). Currently ISO a maintainer for that integration: radian-software/prescient.el#65
Got it. I guess I'll just remove it then. Thanks!
By default, prescient.el
will set prescient-sort-length-enable
to t
, that's why the results will sort by length.
Yes, but recently used commands should still be sorted first. Only commands that have never been used before will be sorted by length.
Yes, but recently used commands should still be sorted first. Only commands that have never been used before will be sorted by length.
My bad, the reason is that I haven't run any other commands yet. The command I run will show up at the top after I run it.
And these two settings will let the output behaves as before after enabling ivy-prescient
.
(setq prescient-sort-length-enable nil)
(setq ivy-prescient-retain-classic-highlighting t)
Well, in the mean time I just removed it. I guess that'd be best for most people.