[PATCH 2/3] Move bash git-send-email completions to original script.
From: Thiago Perrotta <hidden>
Date: 2021-08-02 20:51:28
Subsystem:
the rest · Maintainer:
Linus Torvalds
As far as bash-completion is concerned, this refactoring is a no-op. However, this improves `git send-email --git-completion-helper`, which was previously printing only `git format-patch` flags, to print send-email specific flags as well. Add a completion test for --validate which is a send-email specific option. Signed-off-by: Thiago Perrotta <redacted> --- contrib/completion/git-completion.bash | 11 +-------- git-send-email.perl | 34 ++++++++++++++++++++++++++ t/t9902-completion.sh | 3 +++ 3 files changed, 38 insertions(+), 10 deletions(-)
diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
index 4bdd27d..1b73a4d 100644
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash@@ -2359,16 +2359,7 @@ _git_send_email () return ;; --*) - __gitcomp_builtin send-email "--annotate --bcc --cc --cc-cmd --chain-reply-to - --compose --confirm= --dry-run --envelope-sender - --from --identity - --in-reply-to --no-chain-reply-to --no-signed-off-by-cc - --no-suppress-from --no-thread --quiet --reply-to - --signed-off-by-cc --smtp-pass --smtp-server - --smtp-server-port --smtp-encryption= --smtp-user - --subject --suppress-cc= --suppress-from --thread --to - --validate --no-validate - $__git_format_patch_extra_options" + __gitcomp_builtin send-email "$__git_format_patch_extra_options" return ;; esac
diff --git a/git-send-email.perl b/git-send-email.perl
index e991bf3..eec78d7 100755
--- a/git-send-email.perl
+++ b/git-send-email.perl@@ -114,6 +114,40 @@ sub usage { } sub completion_helper { + my @send_email_flags = qw/ + --annotate + --bcc + --cc + --cc-cmd + --chain-reply-to + --compose + --confirm= + --dry-run + --envelope-sender + --from + --identity + --in-reply-to + --no-chain-reply-to + --no-signed-off-by-cc + --no-suppress-from + --no-thread + --quiet + --reply-to + --signed-off-by-cc + --smtp-pass + --smtp-server + --smtp-server-port + --smtp-encryption= + --smtp-user + --subject + --suppress-cc= + --suppress-from + --thread + --to + --validate + --no-validate + /; + print "@send_email_flags"; print Git::command('format-patch', '--git-completion-helper'); print "\n"; exit(0);
diff --git a/t/t9902-completion.sh b/t/t9902-completion.sh
index 1157393..a4faf64 100755
--- a/t/t9902-completion.sh
+++ b/t/t9902-completion.sh@@ -2139,6 +2139,9 @@ test_expect_success PERL 'send-email' ' --cover-from-description=Z --cover-letter Z EOF + test_completion "git send-email --val" <<-\EOF && + --validate Z + EOF test_completion "git send-email ma" "main " '
--
2.32.0