From: "João Távora" <joaotavora@gmail.com>
To: Dario Gjorgjevski <dario.gjorgjevski@gmail.com>
Cc: 42149@debbugs.gnu.org
Subject: bug#42149: Substring and flex completion ignore implicit trailing ‘any’
Date: Wed, 01 Jul 2020 12:03:20 +0100 [thread overview]
Message-ID: <87k0znsdjb.fsf@gmail.com> (raw)
In-Reply-To: <fv2zojy2o3ldqt.fsf@gmail.com> (Dario Gjorgjevski's message of "Wed, 01 Jul 2020 12:40:42 +0200")
Dario Gjorgjevski <dario.gjorgjevski@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
next prev parent reply other threads:[~2020-07-01 11:03 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-01 10:40 bug#42149: Substring and flex completion ignore implicit trailing ‘any’ Dario Gjorgjevski
2020-07-01 10:58 ` João Távora
2020-07-01 11:03 ` João Távora [this message]
2020-07-01 11:10 ` Dario Gjorgjevski
2020-09-08 9:05 ` Dario Gjorgjevski
2020-09-08 9:30 ` João Távora
2020-09-08 9:44 ` Dario Gjorgjevski
2020-09-08 10:08 ` João Távora
2020-09-08 11:12 ` Dario Gjorgjevski
2020-09-08 11:22 ` João Távora
2020-09-08 11:30 ` Dario Gjorgjevski
2020-09-08 11:32 ` João Távora
2020-09-09 10:17 ` Dario Gjorgjevski
2020-09-09 11:38 ` Dario Gjorgjevski
2020-09-09 13:13 ` Stefan Monnier
2020-09-10 11:26 ` Dario Gjorgjevski
2020-10-14 8:22 ` Dario Gjorgjevski
2020-10-14 8:39 ` João Távora
2020-10-14 9:01 ` Dario Gjorgjevski
2020-10-15 14:25 ` Dario Gjorgjevski
2020-11-20 20:39 ` Dario Gjorgjevski
2020-11-20 21:27 ` João Távora
2020-11-25 0:01 ` João Távora
2020-11-25 8:22 ` Dario Gjorgjevski
2020-11-25 12:22 ` João Távora
2020-11-25 13:27 ` Dario Gjorgjevski
2020-12-23 9:41 ` Dario Gjorgjevski
2020-12-27 20:08 ` João Távora
2020-12-27 20:23 ` João Távora
2020-12-27 21:20 ` Stefan Monnier
2020-12-28 9:30 ` João Távora
2020-12-28 16:03 ` Stefan Monnier
2020-12-28 16:58 ` João Távora
2020-12-28 16:07 ` Stefan Monnier
2020-12-28 17:04 ` João Távora
2020-12-27 21:45 ` Stefan Monnier
2020-12-28 9:38 ` João Távora
2020-12-28 10:22 ` Dario Gjorgjevski
2020-12-28 11:34 ` João Távora
2020-12-28 11:48 ` Dario Gjorgjevski
2020-12-28 12:57 ` João Távora
2020-12-28 10:17 ` Dario Gjorgjevski
2020-12-28 16:26 ` Stefan Monnier
2020-12-28 17:16 ` João Távora
2020-12-28 19:48 ` Dario Gjorgjevski
2020-12-28 20:00 ` Stefan Monnier
2020-12-28 23:20 ` João Távora
2020-12-29 13:27 ` João Távora
2021-05-13 9:24 ` Lars Ingebrigtsen
2021-05-13 14:31 ` João Távora
2021-05-13 15:41 ` Dario Gjorgjevski
2021-05-13 16:04 ` João Távora
2021-05-16 13:51 ` Lars Ingebrigtsen
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=87k0znsdjb.fsf@gmail.com \
--to=joaotavora@gmail.com \
--cc=42149@debbugs.gnu.org \
--cc=dario.gjorgjevski@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).