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

[PATCH v2 2/2] grep: long context options

From
René Scharfe <rene.scharfe@lsrfire.ath.cx>
Date
Aug 1, 2011, 17:22 UTC
Message-ID
<4E36E0EC.1000508@lsrfire.ath.cx>
In-Reply-To
<CAGdFq_go0xYy9BZWRDxAFGV95G7V-P9-=7VhsodLd+z-ho09Qw@mail.gmail.com>

Take long option names for -A (--after-context), -B (--before-context) and -C (--context) from GNU grep and add a similar long option name for -W (--function-context).

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
---
 Documentation/git-grep.txt |   26 +++++++++++++++++---------
 builtin/grep.c             |    8 ++++----
 2 files changed, 21 insertions(+), 13 deletions(-)
diff --git a/Documentation/git-grep.txt b/Documentation/git-grep.txt
index 6cd0c50..af501d2 100644
--- a/Documentation/git-grep.txt
+++ b/Documentation/git-grep.txt
@@ -155,15 +155,6 @@ OPTIONS
 	Show the filename above the matches in that file instead of
 	at the start of each shown line.
 
--[ABC] <context>::
-	Show `context` trailing (`A` -- after), or leading (`B`
-	-- before), or both (`C` -- context) lines, and place a
-	line containing `--` between contiguous groups of
-	matches.
-
--<num>::
-	A shortcut for specifying `-C<num>`.
-
 -p::
 --show-function::
 	Show the preceding line that contains the function name of
@@ -172,7 +163,24 @@ OPTIONS
 	patch hunk headers (see 'Defining a custom hunk-header' in
 	linkgit:gitattributes[5]).
 
+-<num>::
+-C <num>::
+--context <num>::
+	Show <num> leading and trailing lines, and place a line
+	containing `--` between contiguous groups of matches.
+
+-A <num>::
+--after-context <num>::
+	Show <num> trailing lines, and place a line containing
+	`--` between contiguous groups of matches.
+
+-B <num>::
+--before-context <num>::
+	Show <num> leading lines, and place a line containing
+	`--` between contiguous groups of matches.
+
 -W::
+--function-context::
 	Show the surrounding text from the previous line containing a
 	function name up to the one before the next function name,
 	effectively showing the whole function in which the match was
diff --git a/builtin/grep.c b/builtin/grep.c
index 1fae662..1851797 100644
--- a/builtin/grep.c
+++ b/builtin/grep.c
@@ -827,18 +827,18 @@ int cmd_grep(int argc, const char **argv, const char *prefix)
 		OPT_BOOLEAN(0, "heading", &opt.heading,
 			"show filename only once above matches from same file"),
 		OPT_GROUP(""),
-		OPT_CALLBACK('C', NULL, &opt, "n",
+		OPT_CALLBACK('C', "context", &opt, "n",
 			"show <n> context lines before and after matches",
 			context_callback),
-		OPT_INTEGER('B', NULL, &opt.pre_context,
+		OPT_INTEGER('B', "before-context", &opt.pre_context,
 			"show <n> context lines before matches"),
-		OPT_INTEGER('A', NULL, &opt.post_context,
+		OPT_INTEGER('A', "after-context", &opt.post_context,
 			"show <n> context lines after matches"),
 		OPT_NUMBER_CALLBACK(&opt, "shortcut for -C NUM",
 			context_callback),
 		OPT_BOOLEAN('p', "show-function", &opt.funcname,
 			"show a line with the function name before matches"),
-		OPT_BOOLEAN('W', NULL, &opt.funcbody,
+		OPT_BOOLEAN('W', "function-context", &opt.funcbody,
 			"show the surrounding function"),
 		OPT_GROUP(""),
 		OPT_CALLBACK('f', NULL, &opt, "file",
-- 
1.7.6
Previous: René ScharfeNext: Tait
Message 9 of 11 in “grep: add option to show whole function as context”
  1. grep: add option to show whole function as contextRené Scharfe, Jul 31, 2011
  2. Sverre RabbelierJul 31, 2011
  3. René ScharfeAug 1, 2011
  4. Sverre RabbelierAug 1, 2011
  5. René ScharfeAug 1, 2011
  6. 1/2 grep: add option to show whole function as contextRené Scharfe, Aug 1, 2011
  7. Junio C HamanoAug 1, 2011
  8. René ScharfeAug 2, 2011
  9. 2/2 grep: long context optionsRené Scharfe, Aug 1, 2011
  10. TaitAug 2, 2011
  11. René ScharfeAug 2, 2011

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.