git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 6/6] log --grep: honor grep.patterntype etc. configuration variables

From
Junio C Hamano <gitster@pobox.com>
Date
Oct 4, 2012, 01:33 UTC
Message-ID
<1349314419-8397-7-git-send-email-gitster@pobox.com>
In-Reply-To
<1349314419-8397-1-git-send-email-gitster@pobox.com>

Read grep.extendedregexp, grep.patterntype, etc. from the configuration so that "log --grep='<pcre>'" honors the user preference without an explicit -P from the command line.

Now that the callback parameter, which was so far unused, to git_log_config() has to be of type "struct rev_info *", stop passing it down to git_diff_ui_config(). The latter does not currently take any callback parameter, and when it does, we would need to make a structure that has rev info and that parameter and pass it to git_log_config() anyway, and until that happens, passing NULL will be less error prone.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 builtin/log.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/builtin/log.c b/builtin/log.c
index 07a0078..a38a6dd 100644
--- a/builtin/log.c
+++ b/builtin/log.c
@@ -329,6 +329,8 @@ static int cmd_log_walk(struct rev_info *rev)
 
 static int git_log_config(const char *var, const char *value, void *cb)
 {
+	struct rev_info *revs = cb;
+
 	if (!strcmp(var, "format.pretty"))
 		return git_config_string(&fmt_pretty, var, value);
 	if (!strcmp(var, "format.subjectprefix"))
@@ -352,7 +354,8 @@ static int git_log_config(const char *var, const char *value, void *cb)
 	if (!prefixcmp(var, "color.decorate."))
 		return parse_decorate_color_config(var, 15, value);
 
-	return git_diff_ui_config(var, value, cb);
+	grep_config(var, value, &revs->grep_filter);
+	return git_diff_ui_config(var, value, NULL);
 }
 
 int cmd_whatchanged(int argc, const char **argv, const char *prefix)
-- 
1.8.0.rc0.57.g712528f
Previous: Junio C HamanoNext: Jeff King
Message 19 of 23 in “[ANNOUNCE] Git v1.8.0-rc0”
  1. Junio C HamanoOct 1, 2012
  2. grep.patternType (was: Re: [ANNOUNCE] Git v1.8.0-rc0)Junio C Hamano, Oct 3, 2012
  3. Junio C HamanoOct 3, 2012
  4. Michal KiedrowiczOct 4, 2012
  5. J SmithOct 5, 2012
  6. 0/6 Tying loose ends of extended "grep"Junio C Hamano, Oct 4, 2012
  7. 1/6 grep: move configuration support to top-level grep.[ch]Junio C Hamano, Oct 4, 2012
  8. 2/6 grep: move pattern-type bits support to top-level grep.[ch]Junio C Hamano, Oct 4, 2012
  9. 3/6 log --grep: use the same helper to set -E/-F options as "git grep"Junio C Hamano, Oct 4, 2012
  10. Jeff KingOct 4, 2012
  11. 4/6 log --grep: accept --basic-regexp and --perl-regexpJunio C Hamano, Oct 4, 2012
  12. Jeff KingOct 4, 2012
  13. Junio C HamanoOct 4, 2012
  14. 5/6 log: pass rev_info to git_log_config()Junio C Hamano, Oct 4, 2012
  15. Junio C HamanoOct 4, 2012
  16. Junio C HamanoOct 5, 2012
  17. Jeff KingOct 5, 2012
  18. Junio C HamanoOct 5, 2012
  19. 6/6 log --grep: honor grep.patterntype etc. configuration variablesJunio C Hamano, Oct 4, 2012
  20. Jeff KingOct 4, 2012
  21. Junio C HamanoOct 4, 2012
  22. Jeff KingOct 4, 2012
  23. Junio C HamanoOct 4, 2012

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.