Subject: 23.0.93; Setting grep-command etc has no effect
From: Chong Yidong <[email-masked]>
To: [email-masked] (Johan Bockgård)
Cc: [email-masked]
Date: Fri, 22 May 2009 20:19:43 -0400

> emacs -Q
> M-x set-variable RET grep-command RET "ls" RET
> M-x grep RET RET
> M-x set-variable RET grep-command RET "ll" RET
> M-x grep RET   => The old command is still used.
>
> This used to work in Emacs 22.

This is due to the introduction of grep-compute-defaults and
grep-host-defaults-alist, which is supposed to offer "smarter" defaults
for these variables when you call grep on remote files.  Unfortunately,
this means that if you simply change these variables, those changes get
overwritten during the next interactive call to grep.

We should probably revisit the design of this code after the release.

In the meantime, I've made a change so that if you change these
variables via the Customize interface, the new values will take effect
correctly.