Mercurial > emacs
changeset 43436:1f1affb402ce
(shell-command-on-region): Display the exit status when a command fails.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Wed, 20 Feb 2002 22:33:01 +0000 |
parents | c7aaafe7f385 |
children | 55d255989f05 |
files | lisp/simple.el |
diffstat | 1 files changed, 15 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/simple.el Wed Feb 20 22:30:39 2002 +0000 +++ b/lisp/simple.el Wed Feb 20 22:33:01 2002 +0000 @@ -1482,14 +1482,20 @@ (with-current-buffer buffer (save-excursion (goto-char (point-max)) - (insert "...Shell command failed")))) + (insert (format "...Shell command failed with code %d" + exit-status))))) (display-message-or-buffer buffer)) ;; No output; error? - (message (if (and error-file - (< 0 (nth 7 (file-attributes error-file)))) - "(Shell command %sed with some error output)" - "(Shell command %sed with no output)") - (if (equal 0 exit-status) "succeed" "fail")) + (let ((output + (if (and error-file + (< 0 (nth 7 (file-attributes error-file)))) + "some error output" + "no output"))) + (if (equal 0 exit-status) + (message "(Shell command succeeded with %s)" + output) + (message "(Shell command failed with code %d and %s)" + exit-status output))) ;; Don't kill: there might be useful info in the undo-log. ;; (kill-buffer buffer) )))) @@ -1927,7 +1933,9 @@ ((eq arg '-) -1) (t (1- arg))))) (let ((inhibit-read-only t)) - (remove-text-properties opoint (point) '(read-only nil)))) + ;; Clear `field' property for the sake of copying from the + ;; minibuffer prompt or a *shell* prompt. + (remove-text-properties opoint (point) '(read-only nil field nil)))) (if (consp arg) ;; This is like exchange-point-and-mark, but doesn't activate the mark. ;; It is cleaner to avoid activation, even though the command