threads / patch / 38701

patch, 2 partsrebase-interactive: re-word "item count" comment

Subject: [PATCH 2/2] rebase-interactive: re-word "item count" comment

## tl;dr

2 messages between Mar 4, 2015 and Mar 4, 2015. Diffs are folded; open one to read it.

replies: 1people: 1as markdown or json

Eric Sunshine· Mar 4, 2015, 07:53 UTC · lore

[PATCH 1/2] rebase-interactive: suppress whitespace preceding item count

97f05f43 (Show number of TODO items for interactive rebase, 2014-12-10) taught rebase-interactive to compute an item count with 'wc -l' and display it in the instruction list comments:

    # Rebase 46640c6..5568fd5 onto 46640c6 (4 TODO item(s))
On Mac OS X, however, it renders as:
    # Rebase 46640c6..5568fd5 onto 46640c6 (       4 TODO item(s))
since 'wc -l' indents its output with leading spaces. Fix this.
Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
---

Consistent with existing tests in t3404, the new test uses plain 'grep' rather than 'test_i18ngrep'.

 git-rebase--interactive.sh    | 1 +
 t/t3404-rebase-interactive.sh | 9 +++++++++
 2 files changed, 10 insertions(+)
Show changes to 2 files +10 −0

git-rebase--interactive.sh, t/t3404-rebase-interactive.sh

diff --git a/git-rebase--interactive.sh b/git-rebase--interactive.sh
index c96b984..ab98b13 100644
--- a/git-rebase--interactive.sh
+++ b/git-rebase--interactive.sh
@@ -1030,6 +1030,7 @@ test -n "$autosquash" && rearrange_squash "$todo"
 test -n "$cmd" && add_exec_commands "$todo"
 
 todocount=$(git stripspace --strip-comments <"$todo" | wc -l)
+todocount=${todocount##* }
 
 cat >>"$todo" <<EOF
 
diff --git a/t/t3404-rebase-interactive.sh b/t/t3404-rebase-interactive.sh
index a31f7e0..034eb35 100755
--- a/t/t3404-rebase-interactive.sh
+++ b/t/t3404-rebase-interactive.sh
@@ -1046,4 +1046,13 @@ test_expect_success 'respect core.abbrev' '
 	test 4 = $(grep -c "pick [0-9a-f]\{12,\}" todo-list)
 '
 
+test_expect_success 'todo count' '
+	write_script dump-raw.sh <<-\EOF &&
+		cat "$1"
+	EOF
+	test_set_editor "$(pwd)/dump-raw.sh" &&
+	git rebase -i HEAD~4 >actual &&
+	grep "^# Rebase ..* onto ..* ([0-9]" actual
+'
+
 test_done
-- 
2.3.1.340.gf490742
Eric Sunshine· Mar 4, 2015, 07:53 UTC · re: Eric Sunshine · lore

97f05f43 (Show number of TODO items for interactive rebase, 2014-12-10) taught rebase-interactive to display an item count in the instruction list comments:

    # Rebase 46640c6..5568fd5 onto 46640c6 (4 TODO item(s))
    #
    # Commands:
    # p, pick = use commit
    # ...

However, with the exception of the --edit-todo option, "TODO" is a one-off term, never presented to the user by rebase-interactive in any other context. The item count is in fact the number of commands ("pick", "edit", etc.) remaining on the instruction sheet, and the comment immediately following it talks about "Commands". Consequently, replace "(# TODO item(s))" with the more accurate and meaningful "(# command(s))".

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
---

Junio suggested[1] the wording "# todo items" in place of "# commits" from the original submission, however, I find "(# TODO items)" quite clunky to read. "(# commands)" feels more natural and streamlined, but is also a case of bike-shedding and personal preference, so this patch could easily be dropped.

[1]: http://thread.gmane.org/gmane.comp.version-control.git/259365/focus=261143
 git-rebase--interactive.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Show changes to git-rebase--interactive.sh +1 −1
diff --git a/git-rebase--interactive.sh b/git-rebase--interactive.sh
index ab98b13..f7deeb0 100644
--- a/git-rebase--interactive.sh
+++ b/git-rebase--interactive.sh
@@ -1034,7 +1034,7 @@ todocount=${todocount##* }
 
 cat >>"$todo" <<EOF
 
-$comment_char Rebase $shortrevisions onto $shortonto ($todocount TODO item(s))
+$comment_char Rebase $shortrevisions onto $shortonto ($todocount command(s))
 EOF
 append_todo_help
 git stripspace --comment-lines >>"$todo" <<\EOF
-- 
2.3.1.340.gf490742

← back to recent threads