GNU bug report logs -
#42149
Substring and flex completion ignore implicit trailing ‘any’
Previous Next
Full log
View this message in rfc822 format
Dario Gjorgjevski <dario.gjorgjevski <at> gmail.com> writes:
> > Hi,
> >
> > I have found out that substring and flex completion ignore the implicit
> > trailing ‘any’ introduced by ‘completion-pcm--optimize-pattern’. This
> > is evident from the examples shown next.
> >
> > My Emacs version is 28.0.50, built on 2020-07-01 from commit e98ddd6fc1.
> >
> > Example 1
> > =========
> >
> > (completion-substring-all-completions "f" (list "f") nil 1)
> >
> > and
> >
> > (completion-flex-all-completions "f" (list "f") nil 1)
> >
> > both result in
> >
> > (#("f" 0 1 (face completions-common-part completion-score 0.0)) . 0)
> >
> > whereas I would expect a completion score of 1.
> >
> > Example 2
> > =========
> >
> > (completion-substring-all-completions "fo" (list "fo") nil 1)
> >
> > results in
> >
> > (#("fo" 0 1 (face completions-common-part completion-score 0.5) 1 2
> > (face (completions-first-difference completions-common-part))) . 0)
> >
> But does the problem also manifest itself with two-character
> completions? I.e. is the 0.5 perfect match for "fo" (in the example you
> gave) ever surpassed by another, presumably less good, match?
Answering my own question, the answer seems to be "no".
(completion-substring-all-completions "fo" (list "f" "fo" "foot") nil 1)
(#("fo" 0 1
(face completions-common-part completion-score 0.5)
1 2
(face
(completions-first-difference completions-common-part)))
#("foot" 0 1
(face completions-common-part completion-score 0.25)
1 2
(face
(completions-first-difference completions-common-part)))
. 0)
But indeed there is the problem of the 1-long. And the problem is that
_every_ completion gets 0.
(completion-substring-all-completions "f" (list "f" "fo" "foot") nil 1)
(#("f" 0 1
(face completions-common-part completion-score 0.0))
#("fo" 0 1
(face completions-common-part completion-score 0.0)
1 2
(face completions-first-difference))
#("foot" 0 1
(face completions-common-part completion-score 0.0)
1 2
(face completions-first-difference))
. 0)
I still don't know what the proper fix this, just adding some
information I think is relevant.
Thanks,
João
This bug report was last modified 4 years and 7 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.