Merge branch 'jr/grep-en-config'

* jr/grep-en-config:
  grep: allow -E and -n to be turned on by default via configuration
This commit is contained in:
Junio C Hamano 2011-04-01 17:56:27 -07:00
commit b966427b53
4 changed files with 52 additions and 1 deletions

View File

@ -1098,6 +1098,12 @@ All gitcvs variables except for 'gitcvs.usecrlfattr' and
is one of "ext" and "pserver") to make them apply only for the given is one of "ext" and "pserver") to make them apply only for the given
access method. access method.
grep.lineNumber::
If set to true, enable '-n' option by default.
grep.extendedRegexp::
If set to true, enable '--extended-regexp' option by default.
gui.commitmsgwidth:: gui.commitmsgwidth::
Defines how wide the commit message window is in the Defines how wide the commit message window is in the
linkgit:git-gui[1]. "75" is the default. linkgit:git-gui[1]. "75" is the default.

View File

@ -31,6 +31,16 @@ Look for specified patterns in the tracked files in the work tree, blobs
registered in the index file, or blobs in given tree objects. registered in the index file, or blobs in given tree objects.
CONFIGURATION
-------------
grep.lineNumber::
If set to true, enable '-n' option by default.
grep.extendedRegexp::
If set to true, enable '--extended-regexp' option by default.
OPTIONS OPTIONS
------- -------
--cached:: --cached::

View File

@ -302,6 +302,19 @@ static int grep_config(const char *var, const char *value, void *cb)
default: return 0; default: return 0;
} }
if (!strcmp(var, "grep.extendedregexp")) {
if (git_config_bool(var, value))
opt->regflags |= REG_EXTENDED;
else
opt->regflags &= ~REG_EXTENDED;
return 0;
}
if (!strcmp(var, "grep.linenumber")) {
opt->linenum = git_config_bool(var, value);
return 0;
}
if (!strcmp(var, "color.grep")) if (!strcmp(var, "color.grep"))
opt->color = git_config_colorbool(var, value, -1); opt->color = git_config_colorbool(var, value, -1);
else if (!strcmp(var, "color.grep.context")) else if (!strcmp(var, "color.grep.context"))

View File

@ -59,7 +59,29 @@ do
echo ${HC}file:4:foo mmap bar_mmap echo ${HC}file:4:foo mmap bar_mmap
echo ${HC}file:5:foo_mmap bar mmap baz echo ${HC}file:5:foo_mmap bar mmap baz
} >expected && } >expected &&
git grep -n -w -e mmap $H >actual && git -c grep.linenumber=false grep -n -w -e mmap $H >actual &&
test_cmp expected actual
'
test_expect_success "grep -w $L" '
{
echo ${HC}file:1:foo mmap bar
echo ${HC}file:3:foo_mmap bar mmap
echo ${HC}file:4:foo mmap bar_mmap
echo ${HC}file:5:foo_mmap bar mmap baz
} >expected &&
git -c grep.linenumber=true grep -w -e mmap $H >actual &&
test_cmp expected actual
'
test_expect_success "grep -w $L" '
{
echo ${HC}file:foo mmap bar
echo ${HC}file:foo_mmap bar mmap
echo ${HC}file:foo mmap bar_mmap
echo ${HC}file:foo_mmap bar mmap baz
} >expected &&
git -c grep.linenumber=true grep --no-line-number -w -e mmap $H >actual &&
test_cmp expected actual test_cmp expected actual
' '