summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 0c72cea)
raw | patch | inline | side by side (parent: 0c72cea)
author | Nazri Ramliy <ayiehere@gmail.com> | |
Sat, 3 Jul 2010 02:55:06 +0000 (21:55 -0500) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Wed, 7 Jul 2010 18:23:17 +0000 (11:23 -0700) |
With a .gitconfig like this:
[color]
ui = auto
[color "grep"]
filename = magenta
if stdout is a terminal, the grep machinery will output the color
sequence \e[36m before each filename in its output.
In the case of "git grep -O foo", output is argv for the pager.
Disable color when calling the grep machinery in this case.
Signed-off-by: Nazri Ramliy <ayiehere@gmail.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
[color]
ui = auto
[color "grep"]
filename = magenta
if stdout is a terminal, the grep machinery will output the color
sequence \e[36m before each filename in its output.
In the case of "git grep -O foo", output is argv for the pager.
Disable color when calling the grep machinery in this case.
Signed-off-by: Nazri Ramliy <ayiehere@gmail.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/grep.c | patch | blob | history | |
t/t7811-grep-open.sh | patch | blob | history |
diff --git a/builtin/grep.c b/builtin/grep.c
index 4b8ddbe0d52d3aa9719372400c24959dc7efd8c2..7a9427d357cf54e02f7f251a509911a7e4a6c936 100644 (file)
--- a/builtin/grep.c
+++ b/builtin/grep.c
if (show_in_pager == default_pager)
show_in_pager = git_pager(1);
if (show_in_pager) {
+ opt.color = 0;
opt.name_only = 1;
opt.null_following_name = 1;
opt.output_priv = &path_list;
diff --git a/t/t7811-grep-open.sh b/t/t7811-grep-open.sh
index c1104413445b18bb1532931183e1c529632ad527..568a6f2b69ab5003c00f206806c3fe6289f63a98 100755 (executable)
--- a/t/t7811-grep-open.sh
+++ b/t/t7811-grep-open.sh
test_cmp empty out
'
+test_config() {
+ git config "$1" "$2" &&
+ test_when_finished "git config --unset $1"
+}
+
+test_expect_success 'copes with color settings' '
+ rm -f actual &&
+ echo grep.h >expect &&
+ test_config color.grep always &&
+ test_config color.grep.filename yellow &&
+ test_config color.grep.separator green &&
+ git grep -O'\''printf "%s\n" >actual'\'' GREP_AND &&
+ test_cmp expect actual
+'
+
test_expect_success 'run from subdir' '
rm -f actual &&
echo grep.c >expect &&