Re: [PATCH] completion: Support exclude prefix, ^<rev>

From: SZEDER Gábor <hidden>
Date: 2016-06-15 23:04:30

Hi,

Quoting Trygve Aaberge [off-list ref]:
When using the exclude pattern, ^<rev>, the completion did not work.
This enables completion after ^ in the same way that completion after ..
is done.
Interesting, thinking back I can't recall I've ever needed multiple  
exclude patterns on the command line, and a single exclude is well  
served by the rev1..rev2 notion.
Of course that doesn't mean that nobody might need it, and since it's  
easy to implement, I'm for it.
quoted hunk
Signed-off-by: Trygve Aaberge <redacted>
---
contrib/completion/git-completion.bash | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/contrib/completion/git-completion.bash  
b/contrib/completion/git-completion.bash
index 8cfee95..3036dac 100644
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -496,6 +496,10 @@ __git_complete_revlist_file ()
		cur_="${cur_#*..}"
		__gitcomp_nl "$(__git_refs)" "$pfx" "$cur_"
		;;
+	^*)
+		cur_="${cur_#^}"
+		__gitcomp_nl "$(__git_refs)" "^" "$cur_"
+		;;
This is good, but considering the other cases I suggest making this  
the very first case.  That way we would not complete e.g. refs after  
'^rev..<TAB>', which would lead to a "bad revision" error when the  
command is executed, or tracked paths after '^rev:<TAB>', which I  
think doesn't make sense, though doesn't lead to error.
	*)
		__gitcomp_nl "$(__git_refs)"
		;;
--
2.2.2
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help