]> code.delx.au - gnu-emacs/commitdiff
Allow to customize names of executables used by grep.el
authorEli Zaretskii <eliz@gnu.org>
Fri, 8 Apr 2016 13:54:18 +0000 (16:54 +0300)
committerEli Zaretskii <eliz@gnu.org>
Fri, 8 Apr 2016 13:54:18 +0000 (16:54 +0300)
* lisp/progmodes/grep.el (grep-find-program): Renamed from
'find-program', which was a variable.  All uses changed.
(grep-xargs-program): Renamed from 'xargs-program', which was a
variable.  All uses changed.
(grep-program): Now a defcustom rather than a simple variable.
(Bug#23219)

lisp/progmodes/grep.el

index f04a7226d1865d0ca569453b0379c5cec5abf287..5d1b68a192d4dcd69a72baa8e645d7819fc30d8f 100644 (file)
@@ -411,21 +411,34 @@ Notice that using \\[next-error] or \\[compile-goto-error] modifies
 This gets tacked on the end of the generated expressions.")
 
 ;;;###autoload
-(defvar grep-program (purecopy "grep")
+(defcustom grep-program (purecopy "grep")
   "The default grep program for `grep-command' and `grep-find-command'.
-This variable's value takes effect when `grep-compute-defaults' is called.")
+This variable's value takes effect when `grep-compute-defaults' is called."
+  :type 'string
+  :version "25.1"
+  :group 'grep)
 
 ;;;###autoload
-(defvar find-program (purecopy "find")
+(defcustom grep-find-program (purecopy "find")
   "The default find program.
 This is used by commands like `grep-find-command', `find-dired'
-and others.")
+and others."
+  :type 'string
+  :version "25.1"
+  :group 'grep)
+
+(define-obsolete-variable-alias 'find-program 'grep-find-program "25.1")
 
 ;;;###autoload
-(defvar xargs-program (purecopy "xargs")
+(defcustom grep-xargs-program (purecopy "xargs")
   "The default xargs program for `grep-find-command'.
 See `grep-find-use-xargs'.
-This variable's value takes effect when `grep-compute-defaults' is called.")
+This variable's value takes effect when `grep-compute-defaults' is called."
+  :type 'string
+  :version "25.1"
+  :group 'grep)
+
+(define-obsolete-variable-alias 'xargs-program 'grep-xargs-program "25.1")
 
 ;;;###autoload
 (defvar grep-find-use-xargs nil
@@ -595,13 +608,14 @@ This function is called from `compilation-filter-hook'."
        (unless grep-find-use-xargs
          (setq grep-find-use-xargs
                (cond
-                ((grep-probe find-program
+                ((grep-probe grep-find-program
                              `(nil nil nil ,null-device "-exec" "echo"
                                    "{}" "+"))
                  'exec-plus)
                 ((and
-                  (grep-probe find-program `(nil nil nil ,null-device "-print0"))
-                  (grep-probe xargs-program `(nil nil nil "-0" "echo")))
+                  (grep-probe grep-find-program
+                               `(nil nil nil ,null-device "-print0"))
+                  (grep-probe grep-xargs-program `(nil nil nil "-0" "echo")))
                  'gnu)
                 (t
                  'exec))))
@@ -612,10 +626,11 @@ This function is called from `compilation-filter-hook'."
                       ;; after the pipe symbol be quoted if they use
                       ;; forward slashes as directory separators.
                       (format "%s . -type f -print0 | \"%s\" -0 %s"
-                              find-program xargs-program grep-command))
+                              grep-find-program grep-xargs-program
+                               grep-command))
                      ((memq grep-find-use-xargs '(exec exec-plus))
                       (let ((cmd0 (format "%s . -type f -exec %s"
-                                          find-program grep-command))
+                                          grep-find-program grep-command))
                             (null (if grep-use-null-device
                                       (format "%s " null-device)
                                     "")))
@@ -627,7 +642,8 @@ This function is called from `compilation-filter-hook'."
                          (1+ (length cmd0)))))
                      (t
                       (format "%s . -type f -print | \"%s\" %s"
-                              find-program xargs-program grep-command)))))
+                              grep-find-program grep-xargs-program
+                               grep-command)))))
        (unless grep-find-template
          (setq grep-find-template
                (let ((gcmd (format "%s <C> %s <R>"
@@ -637,17 +653,17 @@ This function is called from `compilation-filter-hook'."
                              "")))
                  (cond ((eq grep-find-use-xargs 'gnu)
                         (format "%s <D> <X> -type f <F> -print0 | \"%s\" -0 %s"
-                                find-program xargs-program gcmd))
+                                grep-find-program grep-xargs-program gcmd))
                        ((eq grep-find-use-xargs 'exec)
                         (format "%s <D> <X> -type f <F> -exec %s {} %s%s"
-                                find-program gcmd null
+                                grep-find-program gcmd null
                                 (shell-quote-argument ";")))
                        ((eq grep-find-use-xargs 'exec-plus)
                         (format "%s <D> <X> -type f <F> -exec %s %s{} +"
-                                find-program gcmd null))
+                                grep-find-program gcmd null))
                        (t
                         (format "%s <D> <X> -type f <F> -print | \"%s\" %s"
-                                find-program xargs-program gcmd))))))))
+                                grep-find-program grep-xargs-program gcmd))))))))
 
     ;; Save defaults for this host.
     (setq grep-host-defaults-alist