Mercurial > emacs
diff lisp/files.el @ 83554:b8d9a391daf3
Merged from emacs@sv.gnu.org
Patches applied:
* emacs@sv.gnu.org/emacs--devo--0--patch-599
Merge from erc--main--0
* emacs@sv.gnu.org/emacs--devo--0--patch-600
Merge from erc--main--0
* emacs@sv.gnu.org/emacs--devo--0--patch-601
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-602
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-603
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-604
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-605
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-606
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-607
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-608
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-609
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-610
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-611
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-612
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-613
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-614
Make byte compiler correctly write circular constants
* emacs@sv.gnu.org/emacs--devo--0--patch-615
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-616
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-617
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-618
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-192
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-193
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-194
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-195
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-196
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-594
author | Karoly Lorentey <lorentey@elte.hu> |
---|---|
date | Mon, 29 Jan 2007 22:21:19 +0000 |
parents | 32073cbc5eb6 d11aab871a28 |
children | 07774e5c3ff5 |
line wrap: on
line diff
--- a/lisp/files.el Sat Jan 13 22:59:28 2007 +0000 +++ b/lisp/files.el Mon Jan 29 22:21:19 2007 +0000 @@ -2,7 +2,7 @@ ;; Copyright (C) 1985, 1986, 1987, 1992, 1993, 1994, 1995, 1996, ;; 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, -;; 2006 Free Software Foundation, Inc. +;; 2006, 2007 Free Software Foundation, Inc. ;; Maintainer: FSF @@ -1223,11 +1223,11 @@ (unless (run-hook-with-args-until-failure 'kill-buffer-query-functions) (error "Aborted")) (when (and (buffer-modified-p) (buffer-file-name)) - (if (yes-or-no-p (format "Buffer %s is modified; save it first? " + (if (yes-or-no-p (format "Buffer %s is modified; kill anyway? " (buffer-name))) - (save-buffer) - (unless (yes-or-no-p "Kill and replace the buffer without saving it? ") - (error "Aborted")))) + (unless (yes-or-no-p "Kill and replace the buffer without saving it? ") + (error "Aborted")) + (save-buffer))) (let ((obuf (current-buffer)) (ofile buffer-file-name) (onum buffer-file-number) @@ -2506,6 +2506,7 @@ ", or C-v to scroll"))) (goto-char (point-min)) (let ((cursor-in-echo-area t) + (executing-kbd-macro executing-kbd-macro) (exit-chars (if offer-save '(?! ?y ?n ?\s ?\C-g) '(?y ?n ?\s ?\C-g))) done) @@ -2513,11 +2514,17 @@ (message prompt) (setq char (read-event)) (if (numberp char) - (if (eq char ?\C-v) - (condition-case nil - (scroll-up) - (error (goto-char (point-min)))) - (setq done (memq (downcase char) exit-chars)))))) + (cond ((eq char ?\C-v) + (condition-case nil + (scroll-up) + (error (goto-char (point-min))))) + ;; read-event returns -1 if we are in a kbd + ;; macro and there are no more events in the + ;; macro. In that case, attempt to get an + ;; event interactively. + ((and executing-kbd-macro (= char -1)) + (setq executing-kbd-macro nil)) + (t (setq done (memq (downcase char) exit-chars))))))) (setq char (downcase char)) (when (and offer-save (= char ?!) unsafe-vars) (dolist (elt unsafe-vars)