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

[PATCH] completion: fix completing unstuck email alias arguments

From
SZEDER Gábor <szeder@ira.uka.de>
Date
Dec 12, 2015, 00:18 UTC
Message-ID
<1449879498-1516-1-git-send-email-szeder@ira.uka.de>
Completing unstuck form of email aliases doesn't quite work:
  $ git send-email --to <TAB>
  alice   bob     cecil
  $ git send-email --to a<TAB>
  alice   bob     cecil

While listing email aliases works as expected, the second case should just complete to 'alice', but it keeps offering all email aliases instead.

The cause for this behavior is that in this case we mistakenly tell __gitcomp() explicitly that the current word to be completed is empty, while in reality it is not. As a result __gitcomp() doesn't filter out non-matching aliases, so all aliases end up being offered over and over again.

Fix this by not passing the current word to be completed to __gitcomp() and letting it go the default route and grab it from the '$cur' variable. Don't pass empty prefix either, because it's assumed to be empty when unspecified, so it's not necessary.

Signed-off-by: SZEDER Gábor <szeder@ira.uka.de>
---

On top of the recently merged dfbe5eeb32 (completion: add support for completing email aliases, 2015-11-19).

 contrib/completion/git-completion.bash | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
index 111b05302b..d9b995799c 100644
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -1716,7 +1716,7 @@ _git_send_email ()
 	--to|--cc|--bcc|--from)
 		__gitcomp "
 		$(git --git-dir="$(__gitdir)" send-email --dump-aliases 2>/dev/null)
-		" "" ""
+		"
 		return
 		;;
 	esac
-- 
2.7.0.rc0.37.g77d69b9
Next: Jacob Keller
Message 1 of 3 in “completion: fix completing unstuck email alias arguments”
  1. completion: fix completing unstuck email alias argumentsSZEDER Gábor, Dec 12, 2015
  2. Jacob KellerDec 12, 2015
  3. SZEDER GáborDec 13, 2015

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.