On Thu, Jul 23, 2015 at 4:49 PM, Eric Sunshine <sunshine@xxxxxxxxxxxxxx> wrote: > Complete subcommands 'add' and 'prune', as well as their respective > options --force, --detach, --dry-run, --verbose, and --expire. Also > complete 'refname' in "git worktree add [-b <newbranch>] <path> > <refname>". Ping[1]? [1]: http://article.gmane.org/gmane.comp.version-control.git/274526 > Signed-off-by: Eric Sunshine <sunshine@xxxxxxxxxxxxxx> > --- > > This is RFC since this is my first foray into the Git completion script, > and there are likely better and more idiomatic ways to accomplish this. > > contrib/completion/git-completion.bash | 32 ++++++++++++++++++++++++++++++++ > 1 file changed, 32 insertions(+) > > diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash > index c97c648..07c34ef 100644 > --- a/contrib/completion/git-completion.bash > +++ b/contrib/completion/git-completion.bash > @@ -2564,6 +2564,38 @@ _git_whatchanged () > _git_log > } > > +_git_worktree () > +{ > + local subcommands='add prune' > + local subcommand="$(__git_find_on_cmdline "$subcommands")" > + local c=2 n=0 refpos=2 > + if [ -z "$subcommand" ]; then > + __gitcomp "$subcommands" > + else > + case "$subcommand,$cur" in > + add,--*) > + __gitcomp "--force --detach" > + ;; > + add,*) > + while [ $c -lt $cword ]; do > + case "${words[c]}" in > + --*) ;; > + -[bB]) ((refpos++)) ;; > + *) ((n++)) ;; > + esac > + ((c++)) > + done > + if [ $n -eq $refpos ]; then > + __gitcomp_nl "$(__git_refs)" > + fi > + ;; > + prune,--*) > + __gitcomp "--dry-run --verbose --expire" > + ;; > + esac > + fi > +} > + > __git_main () > { > local i c=1 command __git_dir > -- > 2.5.0.rc3.407.g68aafd0 -- 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