From: Leo <sdl.web@gmail.com>
To: Tassilo Horn <tassilo@member.fsf.org>
Cc: emacs-devel@gnu.org
Subject: Re: Concerning the new `ido-use-virtual-buffers' feature
Date: Fri, 28 May 2010 02:45:52 +0100 [thread overview]
Message-ID: <AANLkTimL78ey_g9VuGw0ydS6wnrtnRZq8WN7-hfdLrDz@mail.gmail.com> (raw)
In-Reply-To: <AANLkTil4nqaPC3r-7DmznN-K0ITrO-m9MkXGoyatFe_v@mail.gmail.com>
On 28 May 2010 02:21, Leo <sdl.web@gmail.com> wrote:
>>> I think it is in the added code in ido-exhibit which is run in
>>> post-command-hook if I remember correctly.
>>>
>>> When your input doesn't match any (including virtual ones), the code
>>> in ido-exhibit tells ido (the big LOOP in ido-read-internal) to
>>> rebuild the buffer list and there isn't any match so it rebuild again
>>> and again. Go into a infinite loop.
>>>
>>> You could try creating a new let-bound variable to detect such a
>>> situation and avoid the infinite loop.
>>
>> Thanks for that. Here's a new patch which uses a new dynamic variable.
>> It seems to work as far as I can tell, but it would be great if you
>> could give it a test drive.
>>
>> One other wishlist item would be to remove virtual buffers from the
>> completion list as soon as the input string matches a normal buffer
>> again, because the user deleted some chars from the input...
>>
>> Bye,
>> Tassilo
>
> I slightly modified the patch and implemented the wishlist item.
>
> For buffers, if a let-bound variable can be added in
> ido-buffers-internal I usually avoid adding it in ido-read-internal.
>
> To remove virtual buffers as soon as input matches existing ones, the
> idea is to build a list of existing buffers (ignored buffers are not
> included) and then match the input against it in ido-exhibit. My
> testing is very brief though it seems working fine. Could you test it
> more thoroughly? Also remember to try the toggle virtual buffers key
> C-o too. Thanks.
>
> Leo
>
The can be changed
@@ -3427,7 +3431,9 @@ for first matching file."
(if default
(setq ido-temp-list
(cons default (delete default ido-temp-list))))
- (if ido-use-virtual-buffers
+ (if (or (eq ido-use-virtual-buffers 'always)
+ (and (boundp ido-virtual-buffers-enabled)
+ ido-virtual-buffers-enabled))
(ido-add-virtual-buffers-to-list))
(run-hooks 'ido-make-buffer-list-hook)
ido-temp-list))
to:
@@ -2736,7 +2739,8 @@ C-x C-f ... C-d enter `dired' on current directory."
See `ido-use-virtual-buffers' for explanation of virtual buffer."
(interactive)
(when (and ido-mode (eq ido-cur-item 'buffer))
- (setq ido-use-virtual-buffers (not ido-use-virtual-buffers))
+ (setq ido-virtual-buffers-enabled
+ (not ido-virtual-buffers-enabled))
(setq ido-text-init ido-text)
(setq ido-exit 'refresh)
(exit-minibuffer)))
Leo
next prev parent reply other threads:[~2010-05-28 1:45 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-27 9:56 Concerning the new `ido-use-virtual-buffers' feature Leo
2010-05-27 10:57 ` Tassilo Horn
2010-05-27 18:01 ` Leo
2010-05-27 19:05 ` Tassilo Horn
2010-05-28 1:21 ` Leo
2010-05-28 1:45 ` Leo [this message]
2010-05-28 6:21 ` Tassilo Horn
2010-05-28 9:07 ` Leo
2010-05-28 9:26 ` Leo
2010-05-28 10:35 ` Juanma Barranquero
2010-05-28 12:15 ` Leo
2010-05-28 12:29 ` Tassilo Horn
2010-05-29 14:15 ` Leo
2010-06-01 23:54 ` Juanma Barranquero
2010-06-02 3:28 ` Leo
2010-06-02 5:57 ` Juanma Barranquero
2010-06-02 9:43 ` Leo
[not found] ` <AANLkTilMurdEZBA-kiWHlS9-r0VK6W5v@mail.gmail.com>
2011-10-16 10:06 ` Antoine Levitt
2013-07-06 12:57 ` Leo Liu
[not found] ` <201006020842.48913.tassilo@member.fsf.org>
[not found] ` <AANLkTikTDRtnbzNHTzVlMvHyl0pDHuhpQLu5k8Il4vP0@mail.gmail.com>
2010-06-02 8:29 ` Tassilo Horn
2010-06-02 9:28 ` Juanma Barranquero
2010-06-02 9:55 ` Tassilo Horn
2010-06-02 10:27 ` Juanma Barranquero
-- strict thread matches above, loose matches on Subject: below --
2010-05-26 10:14 Tassilo Horn
2010-05-26 20:59 ` John Wiegley
2010-05-27 6:54 ` Tassilo Horn
2010-05-27 6:57 ` John Wiegley
2010-05-27 8:10 ` Tassilo Horn
2010-05-27 8:26 ` John Wiegley
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=AANLkTimL78ey_g9VuGw0ydS6wnrtnRZq8WN7-hfdLrDz@mail.gmail.com \
--to=sdl.web@gmail.com \
--cc=emacs-devel@gnu.org \
--cc=tassilo@member.fsf.org \
/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 external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.