]> git.eshelyaron.com Git - emacs.git/commitdiff
Tweak how ido handles killing virtual buffers
authorDario Gjorgjevski <dario.gjorgjevski+git@gmail.com>
Sat, 15 Aug 2020 10:33:37 +0000 (12:33 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Sat, 15 Aug 2020 10:33:43 +0000 (12:33 +0200)
* lisp/ido.el (ido-buffer-internal): Handle killing of virtual buffers
as a special case.
(ido-visit-buffer): Document the special case (bug#38294).

etc/NEWS
lisp/ido.el

index 9fcc89c86694182c67c6ecebe13454a98e533ce1..66f4f71c55d02c9947b4e7248c8e298200037aae 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -792,6 +792,12 @@ digits.
 
 ** Miscellaneous
 
+---
+*** Killing virtual ido buffers interactively will make them go away.
+Previously, killing a virtual ido buffer with 'ido-kill-buffer' didn't
+do anything.  This has now been changed, and killing virtual buffers
+with that command will remove the buffer from recentf.
+
 ---
 *** New variable 'ffap-file-name-with-spaces'.
 If non-nil, 'find-file-at-point' and friends will try to guess more
index e834916a6dadd0963da4b42f6f97970bae3e0282..ad7500c0a1edcc80d9a8f31f08f55002bb2c3e7e 100644 (file)
@@ -2216,7 +2216,10 @@ If cursor is not at the end of the user input, move to end of input."
        ((and ido-enable-virtual-buffers
             ido-virtual-buffers
             (setq filename (assoc buf ido-virtual-buffers)))
-       (ido-visit-buffer (find-file-noselect (cdr filename)) method t))
+        (if (eq method 'kill)
+            (setq recentf-list
+                 (delete (cdr filename) recentf-list))
+         (ido-visit-buffer (find-file-noselect (cdr filename)) method t)))
 
        ((and (eq ido-create-new-buffer 'prompt)
             (null require-match)
@@ -4073,6 +4076,7 @@ Record command in `command-history' if optional RECORD is non-nil."
       (setq buffer (buffer-name buffer)))
   (let (win newframe)
     (cond
+     ;; "Killing" of virtual buffers is handled in `ido-buffer-internal'.
      ((eq method 'kill)
       (if record
          (ido-record-command 'kill-buffer buffer))