diff --git a/lib/grep.zsh b/lib/grep.zsh index 276fec382..348ebe623 100644 --- a/lib/grep.zsh +++ b/lib/grep.zsh @@ -1,24 +1,24 @@ -# -# Color grep results -# Examples: http://rubyurl.com/ZXv -# - -GREP_OPTIONS="--color=auto" - -# avoid VCS folders (if the necessary grep flags are available) +# is x grep argument 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' +# color grep results +GREP_OPTIONS="--color=auto" + +# ignore VCS folders (if the necessary grep flags are available) +VCS_FOLDERS="{.bzr,.cvs,.git,.hg,.svn}" + +if grep-flag-available --exclude-dir=.cvs; then + GREP_OPTIONS+=" --exclude-dir=$VCS_FOLDERS" +elif grep-flag-available --exclude=.cvs; then + GREP_OPTIONS+=" --exclude=$VCS_FOLDERS" +fi + +# export grep settings +alias grep="grep $GREP_OPTIONS" + +# clean up +unset GREP_OPTIONS +unset VCS_FOLDERS +unfunction grep-flag-available