changeset 76386:8c1cfda1a9ec

(minibuffer-completing-symbol): New var. (eval-expression): Use it. (completion-setup-function): Don't bind completion-base-size when completing a symbol in the minibuffer.
author Chong Yidong <cyd@stupidchicken.com>
date Thu, 08 Mar 2007 14:43:08 +0000
parents 48a88502cc43
children 4d5b619e2b86
files lisp/simple.el
diffstat 1 files changed, 8 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/simple.el	Thu Mar 08 14:42:49 2007 +0000
+++ b/lisp/simple.el	Thu Mar 08 14:43:08 2007 +0000
@@ -1005,6 +1005,9 @@
 
 (defvar read-expression-history nil)
 
+(defvar minibuffer-completing-symbol nil
+  "Non-nil means completing a Lisp symbol in the minibuffer.")
+
 (defcustom eval-expression-print-level 4
   "Value for `print-level' while printing value in `eval-expression'.
 A value of nil means no limit."
@@ -1056,9 +1059,10 @@
 If `eval-expression-debug-on-error' is non-nil, which is the default,
 this command arranges for all errors to enter the debugger."
   (interactive
-   (list (read-from-minibuffer "Eval: "
-			       nil read-expression-map t
-			       'read-expression-history)
+   (list (let ((minibuffer-completing-symbol t))
+	   (read-from-minibuffer "Eval: "
+				 nil read-expression-map t
+				 'read-expression-history))
 	 current-prefix-arg))
 
   (if (null eval-expression-debug-on-error)
@@ -5109,6 +5113,7 @@
 		(save-excursion
 		  (skip-chars-backward completion-root-regexp)
 		  (- (point) (minibuffer-prompt-end)))))
+	     (minibuffer-completing-symbol nil)
 	     ;; Otherwise, in minibuffer, the base size is 0.
 	     ((minibufferp mainbuf) 0)))
       (setq common-string-length