[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/subr.el,v
From: |
Stefan Monnier |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/subr.el,v |
Date: |
Tue, 10 Jun 2008 16:12:20 +0000 |
CVSROOT: /sources/emacs
Module name: emacs
Changes by: Stefan Monnier <monnier> 08/06/10 16:12:19
Index: subr.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/subr.el,v
retrieving revision 1.598
retrieving revision 1.599
diff -u -b -r1.598 -r1.599
--- subr.el 10 Jun 2008 03:10:06 -0000 1.598
+++ subr.el 10 Jun 2008 16:12:18 -0000 1.599
@@ -2034,32 +2034,18 @@
Display MESSAGE (optional fourth arg) in the echo area.
If MESSAGE is nil, instructions to type EXIT-CHAR are displayed there."
(or exit-char (setq exit-char ?\s))
- (let ((inhibit-read-only t)
- ;; Don't modify the undo list at all.
- (buffer-undo-list t)
- (modified (buffer-modified-p))
- (name buffer-file-name)
- insert-end)
+ (let ((ol (make-overlay pos pos))
+ (message (copy-sequence string)))
(unwind-protect
(progn
(save-excursion
+ (overlay-put ol 'after-string message)
(goto-char pos)
;; To avoid trouble with out-of-bounds position
(setq pos (point))
- ;; defeat file locking... don't try this at home, kids!
- (setq buffer-file-name nil)
- (insert-before-markers string)
- (setq insert-end (point))
;; If the message end is off screen, recenter now.
- (if (< (window-end nil t) insert-end)
- (recenter (/ (window-height) 2)))
- ;; If that pushed message start off the screen,
- ;; scroll to start it at the top of the screen.
- (move-to-window-line 0)
- (if (> (point) pos)
- (progn
- (goto-char pos)
- (recenter 0))))
+ (if (<= (window-end nil t) pos)
+ (recenter (/ (window-height) 2))))
(message (or message "Type %s to continue editing.")
(single-key-description exit-char))
(let (char)
@@ -2073,17 +2059,12 @@
;; `exit-char' is a character, hence it differs
;; from char, which is an event.
(setq unread-command-events (list char))))
- ;; `exit-char' can be an event, or an event description
- ;; list.
+ ;; `exit-char' can be an event, or an event description list.
(setq char (read-event))
(or (eq char exit-char)
(eq char (event-convert-list exit-char))
(setq unread-command-events (list char))))))
- (if insert-end
- (save-excursion
- (delete-region pos insert-end)))
- (setq buffer-file-name name)
- (set-buffer-modified-p modified))))
+ (delete-overlay ol))))
;;;; Overlay operations