all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
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



  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.