bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#42101: icomplete-fido-ret doesn't always use minibuffer-default when


From: Andrew Schwartzmeyer
Subject: bug#42101: icomplete-fido-ret doesn't always use minibuffer-default when input is empty
Date: Sat, 27 Jun 2020 22:59:40 -0700

Hi,

Funny bug, haven’t figured out the cause. It may be hard to repro.

If you have some amount of minibuffer history, you can cause icomplete-fido-ret 
to not accept the minibuffer-default. An example is having history such that 
'C-h v' when point is on ‘completion-styles’ causes ‘completion-styles-alist’ 
to be the first history element. Since the minibuffer-default shows 
‘completion-styles’ (being that it’s under point, and I’ve not entered any text 
into the minibuffer), I’d expect RET to choose ‘completion-styles’, but instead 
it choses ‘completion-styles-alist’ (the head of the presented candidates, 
‘completion-styles’ is instead the second candidate).

This repros in fido-mode, but not icomplete-mode. I took a look at the relevant 
functions called on RET for these modes but am having trouble finding the issue.

I think the root cause is that if minibuffer-default matches a candidate 
exactly, that candidate should always become the first history element, but 
this isn’t happening. I’m not sure why; I played around with different 
completion-styles but that had no effect. Regardless, if there is no input but 
there is minibuffer-default, various code in icomplete.el suggests that 
'minibuffer-complete-and-exit’ should just be called, I don’t know why it’s not 
happening.

Any ideas?

Thanks,

Andy




reply via email to

[Prev in Thread] Current Thread [Next in Thread]