From: Jacob Keller <jacob.keller@xxxxxxxxx> Add an option "list-aliases" which changes the default behavior of git-send-email. This mode will simply read the alias files configured by sendemail.aliasesfile and sendemail.aliasfiletype and print a list of all known aliases. The intended usecase for this option is the bash-completion script which will use it to autocomplete aliases on the options which take addresses. Signed-off-by: Jacob Keller <jacob.keller@xxxxxxxxx> --- Documentation/git-send-email.txt | 10 ++++++++++ git-send-email.perl | 11 +++++++++++ 2 files changed, 21 insertions(+) diff --git a/Documentation/git-send-email.txt b/Documentation/git-send-email.txt index b9134d234f53..481770d72e13 100644 --- a/Documentation/git-send-email.txt +++ b/Documentation/git-send-email.txt @@ -10,6 +10,7 @@ SYNOPSIS -------- [verse] 'git send-email' [options] <file|directory|rev-list options>... +'git send-email' --list-aliases DESCRIPTION @@ -387,6 +388,15 @@ default to '--validate'. Send emails even if safety checks would prevent it. +Information +~~~~~~~~~~~ + +--list-aliases:: + Instead of the standard operation, list all aliases found in the + configured alias file(s), and then exit. See 'sendemail.aliasesfile' + for more information about aliases. + + CONFIGURATION ------------- diff --git a/git-send-email.perl b/git-send-email.perl index e907e0eacf31..ee14894b172b 100755 --- a/git-send-email.perl +++ b/git-send-email.perl @@ -46,6 +46,7 @@ package main; sub usage { print <<EOT; git send-email [options] <file | directory | rev-list options > +git send-email --list-aliases Composing: --from <str> * Email From: @@ -101,6 +102,9 @@ git send-email [options] <file | directory | rev-list options > `git format-patch` ones. --force * Send even if safety checks would prevent it. + Information: + --list-aliases * read the aliases from configured alias files + EOT exit(1); } @@ -180,6 +184,7 @@ my ($quiet, $dry_run) = (0, 0); my $format_patch; my $compose_filename; my $force = 0; +my $list_aliases = 0; # Handle interactive edition of files. my $multiedit; @@ -344,6 +349,7 @@ my $rc = GetOptions("h" => \$help, "force" => \$force, "xmailer!" => \$use_xmailer, "no-xmailer" => sub {$use_xmailer = 0}, + "list-aliases" => \$list_aliases, ); usage() if $help; @@ -551,6 +557,11 @@ if (@alias_files and $aliasfiletype and defined $parse_alias{$aliasfiletype}) { } } +if ($list_aliases) { + print $_,"\n" for (keys %aliases); + exit(0); +} + # is_format_patch_arg($f) returns 0 if $f names a patch, or 1 if # $f is a revision list specification to be passed to format-patch. sub is_format_patch_arg { -- 2.6.3.491.g3e3f6ce -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html