changeset 38578:4dce109d0aa3

(eval-last-sexp-1): Don't search for `...', compare with unabbreviated printed representation instead. (last-sexp-print): Bind print-length and print-level to nil.
author Gerd Moellmann <gerd@gnu.org>
date Thu, 26 Jul 2001 13:41:32 +0000
parents 6c6ed5ba3813
children 88a84a5773fc
files lisp/emacs-lisp/lisp-mode.el
diffstat 1 files changed, 7 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/emacs-lisp/lisp-mode.el	Thu Jul 26 13:34:32 2001 +0000
+++ b/lisp/emacs-lisp/lisp-mode.el	Thu Jul 26 13:41:32 2001 +0000
@@ -326,7 +326,9 @@
     (when value
       (let ((beg (previous-single-property-change (point) 'printed-value))
 	    (end (next-single-char-property-change (point) 'printed-value))
-	    (standard-output (current-buffer)))
+	    (standard-output (current-buffer))
+	    (print-length nil)
+	    (print-level nil))
 	(delete-region beg end)
 	(prin1 value)))))
 
@@ -388,7 +390,9 @@
 							'args)))))
 			   expr))
 		     (set-syntax-table stab))))))
-      (let ((print-length eval-expression-print-length)
+      (let ((unabbreviated (let ((print-length nil) (print-level nil))
+			     (prin1-to-string value)))
+	    (print-length eval-expression-print-length)
 	    (print-level eval-expression-print-level)
 	    (beg (point))
 	    end)
@@ -397,9 +401,7 @@
 	(when (and (bufferp standard-output)
 		   (or (not (null print-length))
 		       (not (null print-level)))
-		   (save-excursion
-		     (goto-char beg)
-		     (search-forward "..." end t)))
+		   (not (string= unabbreviated (buffer-substring beg end))))
 	  (let ((map (make-sparse-keymap)))
 	    (define-key map "\C-m" 'last-sexp-print)
 	    (define-key map [down-mouse-2] 'mouse-set-point)