Subject: Re: bug#11861: 24.1.1; ido-mode and interactive f

From: Michael Brand <[email-masked]>
Date: Tue, 9 Jul 2013 22:28:53 +0200

Hi Leo

On Tue, Jul 9, 2013 at 5:25 PM, Leo Liu <[email-masked]> wrote:
> On 2013-07-09 22:08 +0800, Michael Brand wrote:
>> in the file test.el and invoked from the directory where the file is
>> located) shows test.el highlighted as the first ido-suggestion in the
>> modeline prompt "File to load:". That is the file of the current
>> buffer test.el, as expected.
>>
>> But Emacs 24.1, 24.2 and 24.3 show the alphabetically first file in
>> the directory, highlighted as the first ido-suggestion in the prompt.
>
> I loaded a version of ido.el from 28 Feb 2011 which is a few days before
> the release of 23.3 and still couldn't reproduce this bug. I have 23.4
> installed and couldn't reproduce either.

?

There is no such bug in 23.3 and 23.4, both suggest test.el as
expected. I can reproduce the issue with 24.1, 24.2 and 24.3, these do
not suggest test.el. Did you try one of the latter with my example
command line with -q and my example file? I also assume you tried
while having additional files in the same directory with names
alphabetically before test.el.

> But from reading the code, the behaviour as you described in 23.3 would
> be wrong anyway.

> You didn't specify any default filename in the interactive form,

My previous interactive form in test.el seems not to be a good
example, so let me suggest to replace it with test_2.el with an
automated "M-x load-file":

emacs -q test_2.el -f eval-buffer

test_2.el:
;;-----------------------------------------------------------
(ido-mode 1)
(ido-everywhere 1)
(call-interactively 'load-file)
;;-----------------------------------------------------------

With 23.3 ido suggests the current buffer which I then can select,
with 24.1, 24.2 and 24.3 ido suggest the alphabetically first file of
the current directory, so I have to type the current buffer's file
name again.

> there is no reason for ido to pick test.el as the default.

Ok, for "M-x load-file" one could argue to use "M-x eval-buffer"
instead. But for "M-x org-babel-load-file" the ido suggestion was very
useful for me as I see no alternative except writing my own wrapper
for 24.1, 24.2 and 24.3 with the function current-buffer.

Michael