From 3ffcd08688a0e5f5de808c1077d10552d1f84e70 Mon Sep 17 00:00:00 2001 From: Jonathan Nieder Date: Sun, 15 Apr 2012 22:44:19 +0300 Subject: [PATCH] completion: avoid trailing space for --exec-path "--exec-path" looks to the completion script like an unambiguous successful completion, but it is wrong to emit a SP after it as if declaring that we are done with completion; the user could be trying to do git --exec-path; # print name of helper directory or git --exec-path=/path/to/alternative/helper/dir so the most helpful thing to do is to leave out the trailing space and leave it to the operator to type an equal sign or carriage return according to the situation. [fc: added tests] Cc: Andreas Schwab Reported-by: Felipe Contreras Signed-off-by: Jonathan Nieder Signed-off-by: Felipe Contreras Signed-off-by: Junio C Hamano --- contrib/completion/git-completion.bash | 1 + t/t9902-completion.sh | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash index b837704a8..6486a0927 100755 --- a/contrib/completion/git-completion.bash +++ b/contrib/completion/git-completion.bash @@ -2639,6 +2639,7 @@ _git () --bare --version --exec-path + --exec-path= --html-path --info-path --work-tree= diff --git a/t/t9902-completion.sh b/t/t9902-completion.sh index 0c0cd4100..eb779d58a 100755 --- a/t/t9902-completion.sh +++ b/t/t9902-completion.sh @@ -179,6 +179,7 @@ test_expect_success 'double dash "git" itself' ' --bare Z --version Z --exec-path Z + --exec-path= --html-path Z --info-path Z --work-tree= @@ -207,7 +208,11 @@ test_expect_success 'double dash "git checkout"' ' test_expect_success 'general options' ' test_completion "git --ver" "--version " && test_completion "git --hel" "--help " && - test_completion "git --exe" "--exec-path " && + sed -e "s/Z$//" >expected <<-\EOF && + --exec-path Z + --exec-path= + EOF + test_completion "git --exe" && test_completion "git --htm" "--html-path " && test_completion "git --pag" "--paginate " && test_completion "git --no-p" "--no-pager " && -- 2.26.2