[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/complete.el,v
From: |
Stefan Monnier |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/complete.el,v |
Date: |
Mon, 07 Aug 2006 18:06:29 +0000 |
CVSROOT: /sources/emacs
Module name: emacs
Changes by: Stefan Monnier <monnier> 06/08/07 18:06:28
Index: complete.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/complete.el,v
retrieving revision 1.56
retrieving revision 1.57
diff -u -b -r1.56 -r1.57
--- complete.el 2 Aug 2006 14:08:48 -0000 1.56
+++ complete.el 7 Aug 2006 18:06:28 -0000 1.57
@@ -553,28 +553,6 @@
(setq poss (cons (car p) poss))))
(setq p (cdr p)))))
- ;; Now we have a list of possible completions
- (cond
-
- ;; No valid completions found
- ((null poss)
- (if (and (eq mode 'word)
- (not PC-word-failed-flag))
- (let ((PC-word-failed-flag t))
- (delete-backward-char 1)
- (PC-do-completion 'word))
- (beep)
- (PC-temp-minibuffer-message (if ambig
- " [Ambiguous dir name]"
- (if (eq mode 'help)
- " [No completions]"
- " [No match]")))
- nil))
-
- ;; More than one valid completion found
- ((or (cdr (setq helpposs poss))
- (memq mode '(help word)))
-
;; Handle completion-ignored-extensions
(and filename
(not (eq mode 'help))
@@ -603,6 +581,28 @@
;; If there are "good" names, use them
(and p (setq poss p))))
+ ;; Now we have a list of possible completions
+ (cond
+
+ ;; No valid completions found
+ ((null poss)
+ (if (and (eq mode 'word)
+ (not PC-word-failed-flag))
+ (let ((PC-word-failed-flag t))
+ (delete-backward-char 1)
+ (PC-do-completion 'word))
+ (beep)
+ (PC-temp-minibuffer-message (if ambig
+ " [Ambiguous dir name]"
+ (if (eq mode 'help)
+ " [No completions]"
+ " [No match]")))
+ nil))
+
+ ;; More than one valid completion found
+ ((or (cdr (setq helpposs poss))
+ (memq mode '(help word)))
+
;; Is the actual string one of the possible completions?
(setq p (and (not (eq mode 'help)) poss))
(while (and p
@@ -623,7 +623,8 @@
;; Check if next few letters are the same in all cases
(if (and (not (eq mode 'help))
- (setq prefix (try-completion (PC-chunk-after basestr skip)
(mapcar 'list poss))))
+ (setq prefix (try-completion (PC-chunk-after basestr skip)
+ poss)))
(let ((first t) i)
;; Retain capitalization of user input even if
;; completion-ignore-case is set.
@@ -669,13 +670,9 @@
(+ beg (length dirname)) end)
skip)
(mapcar
- (function
(lambda (x)
- (list
- (and (string-match skip x)
- (substring
- x
- (match-end 0))))))
+ (when (string-match skip x)
+ (substring x (match-end 0))))
poss)))
(or (> i 0) (> (length prefix) 0))
(or (not (eq mode 'word))