# HG changeset patch # User Michael Albinus # Date 1185134370 0 # Node ID 73ba7647c96062fca99642336a337acdc00b03d9 # Parent 4618c4e4232a891f9d18bc16178be0044d65a2d7 * progmodes/grep.el (grep-compute-defaults): Keep default values. diff -r 4618c4e4232a -r 73ba7647c960 lisp/ChangeLog --- a/lisp/ChangeLog Sun Jul 22 19:54:08 2007 +0000 +++ b/lisp/ChangeLog Sun Jul 22 19:59:30 2007 +0000 @@ -1,3 +1,7 @@ +2007-07-22 Michael Albinus + + * progmodes/grep.el (grep-compute-defaults): Keep default values. + 2007-07-22 Ralf Angeli * textmodes/reftex.el (reftex-access-parse-file): Create parse diff -r 4618c4e4232a -r 73ba7647c960 lisp/progmodes/grep.el --- a/lisp/progmodes/grep.el Sun Jul 22 19:54:08 2007 +0000 +++ b/lisp/progmodes/grep.el Sun Jul 22 19:59:30 2007 +0000 @@ -383,45 +383,51 @@ ;;;###autoload (defun grep-compute-defaults () - (let ((host-id - (intern (or (file-remote-p default-directory 'host) "localhost")))) + ;; Keep default values. + (unless grep-host-defaults-alist + (add-to-list + 'grep-host-defaults-alist + (cons nil + `((grep-command ,grep-command) + (grep-template ,grep-template) + (grep-use-null-device ,grep-use-null-device) + (grep-find-command ,grep-find-command) + (grep-find-template ,grep-find-template) + (grep-find-use-xargs ,grep-find-use-xargs) + (grep-highlight-matches ,grep-highlight-matches))))) + (let* ((host-id + (intern (or (file-remote-p default-directory 'host) "localhost"))) + (host-defaults (assq host-id grep-host-defaults-alist)) + (defaults (assq nil grep-host-defaults-alist))) ;; There are different defaults on different hosts. They must be - ;; computed for every host once, then they are kept in the - ;; variables' property host-id for reuse. + ;; computed for every host once. (setq grep-command - (or (cadr (assq 'grep-command - (assq host-id grep-host-defaults-alist))) - (eval (car (get 'grep-command 'standard-value)))) + (or (cadr (assq 'grep-command host-defaults)) + (cadr (assq 'grep-command defaults))) grep-template - (or (cadr (assq 'grep-template - (assq host-id grep-host-defaults-alist))) - (eval (car (get 'grep-template 'standard-value)))) + (or (cadr (assq 'grep-template host-defaults)) + (cadr (assq 'grep-template defaults))) grep-use-null-device - (or (cadr (assq 'grep-use-null-device - (assq host-id grep-host-defaults-alist))) - (eval (car (get 'grep-use-null-device 'standard-value)))) + (or (cadr (assq 'grep-use-null-device host-defaults)) + (cadr (assq 'grep-use-null-device defaults))) grep-find-command - (or (cadr (assq 'grep-find-command - (assq host-id grep-host-defaults-alist))) - (eval (car (get 'grep-find-command 'standard-value)))) + (or (cadr (assq 'grep-find-command host-defaults)) + (cadr (assq 'grep-find-command defaults))) grep-find-template - (or (cadr (assq 'grep-find-template - (assq host-id grep-host-defaults-alist))) - (eval (car (get 'grep-find-template 'standard-value)))) + (or (cadr (assq 'grep-find-template host-defaults)) + (cadr (assq 'grep-find-template defaults))) grep-find-use-xargs - (or (cadr (assq 'grep-find-use-xargs - (assq host-id grep-host-defaults-alist))) - (eval (car (get 'grep-find-use-xargs 'standard-value)))) + (or (cadr (assq 'grep-find-use-xargs host-defaults)) + (cadr (assq 'grep-find-use-xargs defaults))) grep-highlight-matches - (or (cadr (assq 'grep-highlight-matches - (assq host-id grep-host-defaults-alist))) - (eval (car (get 'grep-highlight-matches 'standard-value))))) + (or (cadr (assq 'grep-highlight-matches host-defaults)) + (cadr (assq 'grep-highlight-matches defaults)))) (unless (or (not grep-use-null-device) (eq grep-use-null-device t)) (setq grep-use-null-device