;;; Code:
-;; CL needed for cadr and last
-(if (not (and (fboundp 'cadr)
- (fboundp 'last)))
- (require 'cl))
-
(require 'font-lock)
;;; User Variables
"*List of regexps or functions matching buffer names to ignore.
For example, traditional behavior is not to list buffers whose names begin
with a space, for which the regexp is `^ '. See the source file for
-example functions that filter buffernames."
+example functions that filter buffer names."
:type '(repeat (choice regexp function))
:group 'iswitchb)
(put 'iswitchb-buffer-ignore 'risky-local-variable t)
:group 'iswitchb)
(defcustom iswitchb-use-faces t
- "*Non-nil means use font-lock fonts for showing first match."
+ "*Non-nil means use font-lock faces for showing first match."
:type 'boolean
:group 'iswitchb)
(define-obsolete-variable-alias 'iswitchb-use-fonts 'iswitchb-use-faces "22.1")
;;; ISWITCHB KEYMAP
(defun iswitchb-define-mode-map ()
- "Set up the keymap for `iswitchb-buffer'.
-This is obsolete. Use \\[iswitchb-mode] or customize the
-variable `iswitchb-mode'."
+ "Set up the keymap for `iswitchb-buffer'."
(interactive)
(let (map)
;; generated every time so that it can inherit new functions.
(setq iswitchb-mode-map map)
(run-hooks 'iswitchb-define-mode-map-hook)))
+(make-obsolete 'iswitchb-define-mode-map
+ "use M-x iswitchb-mode or customize the variable `iswitchb-mode'."
+ "21.1")
+
;;; MAIN FUNCTION
(defun iswitchb ()
"Switch to buffer matching a substring.
PROMPT is the prompt to give to the user.
DEFAULT if given is the default buffer to be selected, which will
go to the front of the list.
-If REQUIRE-MATCH is non-nil, an existing-buffer must be selected.
+If REQUIRE-MATCH is non-nil, an existing buffer must be selected.
If START is a string, the selection process is started with that
string.
If MATCHES-SET is non-nil, the buflist is not updated before
"Find common completion of `iswitchb-text' in `iswitchb-matches'.
The result is stored in `iswitchb-common-match-string'."
- (let* (val)
+ (let (val)
(setq iswitchb-common-match-string nil)
(if (and iswitchb-matches
(not iswitchb-regexp) ;; testing
(setq iswitchb-exit 'findfile)
(exit-minibuffer))
-(eval-when-compile
- (defvar recentf-list))
+(defvar recentf-list)
(defun iswitchb-next-match ()
"Put first element of `iswitchb-matches' at the end of the list."
"Set `iswitchb-matches' to the list of buffers matching prompt."
(if iswitchb-rescan
(setq iswitchb-matches
- (let* ((buflist iswitchb-buflist))
+ (let ((buflist iswitchb-buflist))
(iswitchb-get-matched-buffers iswitchb-text iswitchb-regexp
buflist))
iswitchb-virtual-buffers nil)))
"Return buffers matching REGEXP.
If STRING-FORMAT is nil, consider REGEXP as just a string.
BUFFER-LIST can be list of buffers or list of strings."
- (let* ((case-fold-search (iswitchb-case))
+ (let ((case-fold-search (iswitchb-case))
name ret)
(if (null string-format) (setq regexp (regexp-quote regexp)))
(setq iswitchb-invalid-regexp nil)
;;; VISIT CHOSEN BUFFER
(defun iswitchb-visit-buffer (buffer)
"Visit buffer named BUFFER according to `iswitchb-method'."
- (let* (win newframe)
+ (let (win newframe)
(cond
((eq iswitchb-method 'samewindow)
(switch-to-buffer buffer))
(defun iswitchb-default-keybindings ()
"Set up default keybindings for `iswitchb-buffer'.
Call this function to override the normal bindings. This function also
-adds a hook to the minibuffer.
-
-Obsolescent. Use `iswitchb-mode'."
+adds a hook to the minibuffer."
(interactive)
(add-hook 'minibuffer-setup-hook 'iswitchb-minibuffer-setup)
(global-set-key "\C-xb" 'iswitchb-buffer)
(global-set-key "\C-x4\C-o" 'iswitchb-display-buffer)
(global-set-key "\C-x5b" 'iswitchb-buffer-other-frame))
+(make-obsolete 'iswitchb-default-keybindings 'iswitchb-mode "21.1")
+
(defun iswitchb-buffer ()
"Switch to another buffer.
(insert (iswitchb-completions
contents))))))
-(eval-when-compile
- (defvar most-len)
- (defvar most-is-exact))
+(defvar most-len)
+(defvar most-is-exact)
(defun iswitchb-output-completion (com)
(if (= (length com) most-len)