# HG changeset patch # User jwiegley@gmail.com # Date 1270525136 14400 # Node ID ded036b5364f8b761d9b60c2f6eaa52b25ecefe6 # Parent 3de4f4f86a824df3c05174d5bbee9ca4e8b91b44 Minor fixes to a recent contribution to ido.el * ido.el (ido-use-virtual-buffers, ido-virtual): Moved a ChangeLog comment to code, and added a :version tag. (ido-virtual-buffers): Moved defvar to fix byte-compiler warning. diff -r 3de4f4f86a82 -r ded036b5364f lisp/ChangeLog --- a/lisp/ChangeLog Tue Apr 06 04:26:37 2010 +0200 +++ b/lisp/ChangeLog Mon Apr 05 23:38:56 2010 -0400 @@ -1,3 +1,9 @@ +2010-04-06 John Wiegley + + * ido.el (ido-use-virtual-buffers, ido-virtual): Moved a ChangeLog + comment to code, and added a :version tag. + (ido-virtual-buffers): Moved defvar to fix byte-compiler warning. + 2010-04-06 Juanma Barranquero Enable recentf-mode if using virtual buffers. @@ -41,18 +47,7 @@ 2010-04-04 John Wiegley * ido.el (ido-use-virtual-buffers): New variable to indicate - whether "virtual buffer" support is enabled for IDO. Essentially - it works as follows: Say you are visiting a file and the buffer - gets cleaned up by mignight.el. Later, you want to switch to that - buffer, but find it's no longer open. With virtual buffers - enabled, the buffer name stays in the buffer list (using the - ido-virtual face, and always at the end), and if you select it, it - opens the file back up again. This allows you to think less about - whether recently opened files are still open or not. Most of the - time you can quit Emacs, restart, and then switch to a file buffer - that was previously open as if it still were. NOTE: This feature - has been present in iswitchb for several years now, and I'm - porting the same logic to IDO. + whether "virtual buffer" support is enabled for IDO. (ido-virtual): Face used to indicate virtual buffers in the list. (ido-buffer-internal): If a buffer is chosen, and no such buffer exists, but a virtual buffer of that name does (which would be why diff -r 3de4f4f86a82 -r ded036b5364f lisp/ido.el --- a/lisp/ido.el Tue Apr 06 04:26:37 2010 +0200 +++ b/lisp/ido.el Mon Apr 05 23:38:56 2010 -0400 @@ -777,8 +777,19 @@ (defcustom ido-use-virtual-buffers nil "If non-nil, refer to past buffers as well as existing ones. -This feature relies upon the `recentf' package, which will be +Essentially it works as follows: Say you are visiting a file and +the buffer gets cleaned up by mignight.el. Later, you want to +switch to that buffer, but find it's no longer open. With +virtual buffers enabled, the buffer name stays in the buffer +list (using the ido-virtual face, and always at the end), and if +you select it, it opens the file back up again. This allows you +to think less about whether recently opened files are still open +or not. Most of the time you can quit Emacs, restart, and then +switch to a file buffer that was previously open as if it still +were. + This feature relies upon the `recentf' package, which will be enabled if this variable is configured to a non-nil value." + :version "24.1" :type 'boolean :group 'ido) @@ -808,6 +819,7 @@ (defface ido-virtual '((t (:inherit font-lock-builtin-face))) "Face used by ido for matching virtual buffer names." + :version "24.1" :group 'ido) (defface ido-indicator '((((min-colors 88) (class color)) @@ -1124,6 +1136,9 @@ ;; Set to 'ignore to inhibit switching between find-file/switch-buffer. (defvar ido-context-switch-command) +;; Caches list of names generated by `ido-add-virtual-buffers-to-list' +(defvar ido-virtual-buffers nil) + ;;; FUNCTIONS (defun ido-active (&optional merge)