summaryrefslogtreecommitdiff
path: root/lisp/complete.el
diff options
context:
space:
mode:
authorChong Yidong <cyd@stupidchicken.com>2007-03-05 14:55:05 +0000
committerChong Yidong <cyd@stupidchicken.com>2007-03-05 14:55:05 +0000
commitb89d8a7719611f0d8eafaca7b4b297823160cb15 (patch)
treee77ba18371525fee4cdc9615a2edabc37f9cf80c /lisp/complete.el
parent50991b39b11c9ae054e1b0ea58aad063ddc5dd24 (diff)
downloademacs-b89d8a7719611f0d8eafaca7b4b297823160cb15.tar.gz
(PC-do-completion): If completion-ignore-case is non-nil, replace
field with completion string before exiting.
Diffstat (limited to 'lisp/complete.el')
-rw-r--r--lisp/complete.el11
1 files changed, 9 insertions, 2 deletions
diff --git a/lisp/complete.el b/lisp/complete.el
index cc8f29356b6..b56dc268c04 100644
--- a/lisp/complete.el
+++ b/lisp/complete.el
@@ -404,8 +404,15 @@ of `minibuffer-completion-table' and the minibuffer contents.")
;; Check if buffer contents can already be considered complete
(if (and (eq mode 'exit)
- (test-completion-ignore-case str table pred))
- 'complete
+ (test-completion str table pred))
+ (progn
+ ;; If completion-ignore-case is non-nil, insert the
+ ;; completion string since that may have a different case.
+ (when completion-ignore-case
+ (setq str (try-completion str table pred))
+ (delete-region beg end)
+ (insert str))
+ 'complete)
;; Do substitutions in directory names
(and filename