Subject: bug#6857: shell-command should say where it is talking about

From: [email-masked]
Date: Sun, 03 Jul 2011 04:42:58 +0800

>>>>> "LMI" == Lars Magne Ingebrigtsen <[email-masked]> writes:
LMI> [email-masked] writes:

>> M-! (translated from <escape> !) runs the command shell-command, which
>> is an interactive compiled Lisp function in `simple.el'.
>> 
>> OK, but in its error message,
>> 
>> (Shell command failed with code 99 and some error output)
>> 
>> you had better tell the user just what buffer to look for that error
>> output in, lest he have to figure it out himself. Not impossible but not
>> friendly. emacs-version "24.0.50.1".

LMI> In what cases do you get an error message saying

LMI>    (Shell command failed with code 99 and some error output)

LMI> ?

LMI> I get error messages like:

LMI> /bin/bash: lala: command not found
I see. I set
(setq shell-command-default-error-buffer "shell-command-errors")
to avoid stderr and stdout being jumbled.

Therefore code like

	    (let ((output
		   (if (and error-file
			    (< 0 (nth 7 (file-attributes error-file))))
		       "some error output"
		     "no output")))

needs to mention shell-command-default-error-buffer if set, to the user.