mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-30 19:53:09 +00:00
(rgrep): Allow grep-find-ignored-directories
to be a cons cell (test . ignored-directory) to selectively ignore some directories depending on the location of the search.
This commit is contained in:
parent
c1d5ce9488
commit
49405d0e1b
@ -1,3 +1,9 @@
|
||||
2009-07-08 Sam Steingold <sds@gnu.org>
|
||||
|
||||
* progmodes/grep.el (rgrep): Allow grep-find-ignored-directories
|
||||
to be a cons cell (test . ignored-directory) to selectively ignore
|
||||
some directories depending on the location of the search.
|
||||
|
||||
2009-07-08 Michael Albinus <michael.albinus@gmx.de>
|
||||
|
||||
* net/tramp.el (tramp-set-file-uid-gid): Handle the case the
|
||||
|
@ -194,7 +194,9 @@ Customize or call the function `grep-apply-setting'."
|
||||
|
||||
(defcustom grep-find-ignored-directories
|
||||
vc-directory-exclusion-list
|
||||
"*List of names of sub-directories which `rgrep' shall not recurse into."
|
||||
"*List of names of sub-directories which `rgrep' shall not recurse into.
|
||||
If an element is a cons cell, the car is called on the search directory
|
||||
to determine whether cdr should not be recursed into."
|
||||
:type '(repeat string)
|
||||
:group 'grep)
|
||||
|
||||
@ -891,11 +893,18 @@ This command shares argument histories with \\[lgrep] and \\[grep-find]."
|
||||
(concat (shell-quote-argument "(")
|
||||
;; we should use shell-quote-argument here
|
||||
" -path "
|
||||
(mapconcat #'(lambda (dir)
|
||||
(shell-quote-argument
|
||||
(concat "*/" dir)))
|
||||
grep-find-ignored-directories
|
||||
" -o -path ")
|
||||
(mapconcat
|
||||
#'(lambda (ignore)
|
||||
(cond ((stringp ignore)
|
||||
(shell-quote-argument
|
||||
(concat "*/" ignore)))
|
||||
((consp ignore)
|
||||
(and (funcall (car ignore) dir)
|
||||
(shell-quote-argument
|
||||
(concat "*/"
|
||||
(cdr ignore)))))))
|
||||
grep-find-ignored-directories
|
||||
" -o -path ")
|
||||
" "
|
||||
(shell-quote-argument ")")
|
||||
" -prune -o ")))))
|
||||
|
Loading…
Reference in New Issue
Block a user