threads / patch / 43490

patch, 6 partsSupport bash completion on symmetric difference operator.

Subject: [PATCH 5/6] Support bash completion on symmetric difference operator.

## tl;dr

One message between Nov 5, 2006 and Nov 5, 2006. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

Shawn O. Pearce· Nov 5, 2006, 11:24 UTC · lore

Now that log, whatchanged, rev-list, etc. support the symmetric difference operator '...' we should provide bash completion for it just like we do for '..'.

While we are at it we can remove two sed invocations during the interactive prompt and replace them with internal bash operations.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
---
 contrib/completion/git-completion.bash |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)
Show changes to contrib/completion/git-completion.bash +8 −3
diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
index f258f2f..74be651 100755
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -222,11 +222,16 @@ _git_ls_tree ()
 
 _git_log ()
 {
-	local cur="${COMP_WORDS[COMP_CWORD]}"
+	local pfx cur="${COMP_WORDS[COMP_CWORD]}"
 	case "$cur" in
+	*...*)
+		pfx="${cur%...*}..."
+		cur="${cur#*...}"
+		COMPREPLY=($(compgen -P "$pfx" -W "$(__git_refs)" -- "$cur"))
+		;;
 	*..*)
-		local pfx=$(echo "$cur" | sed 's/\.\..*$/../')
-		cur=$(echo "$cur" | sed 's/^.*\.\.//')
+		pfx="${cur%..*}.."
+		cur="${cur#*..}"
 		COMPREPLY=($(compgen -P "$pfx" -W "$(__git_refs)" -- "$cur"))
 		;;
 	*)
-- 
1.4.3.3.g9621

← back to recent threads