Subject: Re: bug#39484: 26.3; try-completion bug

From: Wanrong Lin <[email-masked]>
Date: Tue, 27 Oct 2020 16:44:25 -0400

My understanding is: "ignoring case" here applies to the comparison 
part, not the returning part. What makes me think so:

1. That variable name is "completion-ignore-case", meaning, complete as 
much as possible ignoring case in comparison. But still, the action is 
to "complete", and "complete" should use the original candidate text 
when possible.
2.  the first example did return the original text in the candidate 
instead of the user input.
(let ((completion-ignore-case t))
        (try-completion "xy" '("XyzD" "XyzAbc"))
        )
==> "Xyz"

I am not saying other behaviors are "wrong", but not ideal in my view, 
and there should be some rationale (performance?) behind it.

Wanrong

On 10/27/2020 4:28 PM, Andreas Schwab wrote:
> On Okt 27 2020, Wanrong Lin wrote:
>
>> I remember this behavior gives me problem in "ido" trying to expand the
>> user input to the max common matched text among all candidates, because
>> as you can see, the "expansion" using this method may end up returning
>> something that is not common at all for all the candidates.
> It isn't?  "xyz" surely is a common prefix of "XyzD" and "XyzAbc",
> ignoring case.
>
> Andreas.
>