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

[PATCH Cogito] cg-log: improve parsing -r

From
Jonas Fonseca <fonseca@diku.dk>
Date
May 29, 2005, 01:41 UTC
Message-ID
<20050529014138.GB7520@diku.dk>

Move parsing of the -r option to the option parsing loop so it no longer needs to be last in the argument list.

Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
---
 cg-log |   32 +++++++++++++++-----------------
 1 files changed, 15 insertions(+), 17 deletions(-)

--- c8e987e5e4608c1144293cd3f852210d70b572cb/cg-log (mode:100755) +++ uncommitted/cg-log (mode:100755)

@@ -37,7 +37,10 @@
 colsignoff=
 coldefault=
 list_files=
+log_start=
+log_end=
 user=
+
 while [ "$1" ]; do
 	# TODO: Parse -r here too.
 	case "$1" in
@@ -59,6 +62,18 @@
 		user="${1#-u}"
 		shift
 		;;
+	-r)
+		shift
+		if echo "$1" | grep -q ':'; then
+			log_end=$(echo "$1" | cut -d : -f 2)
+			log_start=$(echo "$1" | cut -d : -f 1)
+		elif [ -z "$log_start" ]; then
+			log_start="$1"
+		else
+			log_end="$1"
+		fi
+		shift
+		;;
 	*)
 		break
 		;;
@@ -93,23 +108,6 @@
 	echo "$coldefault:"
 }
 
-log_start=
-log_end=
-if [ "$1" = "-r" ]; then
-	shift
-	log_start="$1"
-	shift
-	if echo "$log_start" | grep -q ':'; then
-		log_end=$(echo "$log_start" | cut -d : -f 2)
-		log_start=$(echo "$log_start" | cut -d : -f 1)
-	fi
-fi
-if [ "$1" = "-r" ]; then
-	shift
-	log_end="$1"
-	shift
-fi
-
 if [ "$log_end" ]; then
 	id1="$(commit-id $log_start)" || exit 1
 	id2="$(commit-id $log_end)" || exit 1
-- 
Jonas Fonseca
Message 1 of 1 in “cg-log: improve parsing -r”
  1. cg-log: improve parsing -rJonas Fonseca, May 29, 2005

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.