diff options
author | Dmitriy <me@kemko.ru> | 2014-03-24 10:17:19 +0300 |
---|---|---|
committer | kemko <me@kemko.ru> | 2014-04-19 00:03:36 +0400 |
commit | 9385b3ee0a8425ae8a2b5c16084d4fab1ebc3764 (patch) | |
tree | ed13fa976c8d87c01ca5f980af9bbb8b49adb82c /lib/grep.zsh | |
parent | ffc17b6b4d55f74b9d3786ba790b7340865e5014 (diff) | |
download | zsh-9385b3ee0a8425ae8a2b5c16084d4fab1ebc3764.tar.gz zsh-9385b3ee0a8425ae8a2b5c16084d4fab1ebc3764.tar.bz2 zsh-9385b3ee0a8425ae8a2b5c16084d4fab1ebc3764.zip |
set exclude-dir or exclude grep flags only if available
Diffstat (limited to 'lib/grep.zsh')
-rw-r--r-- | lib/grep.zsh | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/lib/grep.zsh b/lib/grep.zsh index 977435ee4..276fec382 100644 --- a/lib/grep.zsh +++ b/lib/grep.zsh @@ -3,11 +3,22 @@ # Examples: http://rubyurl.com/ZXv # -# avoid VCS folders -GREP_OPTIONS= -for PATTERN in .cvs .git .hg .svn; do - GREP_OPTIONS+="--exclude-dir=$PATTERN " -done -GREP_OPTIONS+="--color=auto" +GREP_OPTIONS="--color=auto" + +# avoid VCS folders (if the necessary grep flags are available) +grep-flag-available() { + echo | grep $1 "" >/dev/null 2>&1 +} +if grep-flag-available --exclude-dir=.cvs; then + for PATTERN in .cvs .git .hg .svn; do + GREP_OPTIONS+=" --exclude-dir=$PATTERN" + done +elif grep-flag-available --exclude=.cvs; then + for PATTERN in .cvs .git .hg .svn; do + GREP_OPTIONS+=" --exclude=$PATTERN" + done +fi +unfunction grep-flag-available + export GREP_OPTIONS="$GREP_OPTIONS" export GREP_COLOR='1;32' |