From: Joe Ratterman <jratt0@xxxxxxxxx> Add two configration variables grep.extendedRegexp and grep.lineNumbers to allow the user to skip typing -E and -n on the command line, respectively. Scripts that are meant to be used by random users and/or in random repositories now have use -G and/or --no-line-number options as appropriately to override the settings in the repository or user's ~/.gitconfig settings. Just because the script didn't say "git grep -n" no longer guarantees that the output from the command will not have line numbers. Signed-off-by: Joe Ratterman <jratt0@xxxxxxxxx> Signed-off-by: Junio C Hamano <gitster@xxxxxxxxx> --- * Having discussed the b/c issue to death, here is an updated version of your patch to be applied on top of your --[no-]line-number patch. I addressed both the title for shortlog and names of the variables, but two more important fixes are not to overwrite the whole regflags and not to assume that the value of REG_EXTENDED is 01. I did not add tests, but we do need one perhaps at the end of t7810 to move things forward. Documentation/config.txt | 6 ++++++ Documentation/git-grep.txt | 10 ++++++++++ builtin/grep.c | 10 ++++++++++ 3 files changed, 26 insertions(+), 0 deletions(-) diff --git a/Documentation/config.txt b/Documentation/config.txt index 8ea55d4..1ae5d80 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -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 access method. +grep.lineNumbers:: + If set to true, enable '-n' option by default. + +grep.extendedRegexp:: + If set to true, enable '--extended-regexp' option by default. + gui.commitmsgwidth:: Defines how wide the commit message window is in the linkgit:git-gui[1]. "75" is the default. diff --git a/Documentation/git-grep.txt b/Documentation/git-grep.txt index 132505e..d7c2427 100644 --- a/Documentation/git-grep.txt +++ b/Documentation/git-grep.txt @@ -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. +CONFIGURATION +------------- + +grep.lineNumbers:: + If set to true, enable '-n' option by default. + +grep.extendedRegexp:: + If set to true, enable '--extended-regexp' option by default. + + OPTIONS ------- --cached:: diff --git a/builtin/grep.c b/builtin/grep.c index 85e9583..62d8b11 100644 --- a/builtin/grep.c +++ b/builtin/grep.c @@ -302,6 +302,16 @@ static int grep_config(const char *var, const char *value, void *cb) default: return 0; } + if (!strcmp(var, "grep.extendedregexp")) { + opt->regflags |= git_config_bool(var, value) ? REG_EXTENDED : 0; + return 0; + } + + if (!strcmp(var, "grep.linenumbers")) { + opt->linenum = git_config_bool(var, value); + return 0; + } + if (!strcmp(var, "color.grep")) opt->color = git_config_colorbool(var, value, -1); else if (!strcmp(var, "color.grep.context")) -- 1.7.4.2.412.g61e8a -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html