On Wed, Sep 19, 2012 at 07:08:09PM +0200, Felipe Contreras wrote:

> On Tue, Jul 17, 2012 at 2:12 PM, Jeff King <[email protected]> wrote:
> 
> > --- a/contrib/completion/git-completion.bash
> > +++ b/contrib/completion/git-completion.bash
> > @@ -261,7 +261,12 @@ __gitcomp ()
> >  __gitcomp_nl ()
> >  {
> >         local IFS=$'\n'
> > -       COMPREPLY=($(compgen -P "${2-}" -S "${4- }" -W "$1" -- "${3-$cur}"))
> > +       local words=$1
> > +       words=${words//\\/\\\\}
> > +       words=${words//\$/\\\$}
> > +       words=${words//\'/\\\'}
> > +       words=${words//\"/\\\"}
> > +       COMPREPLY=($(compgen -P "${2-}" -S "${4- }" -W "$words" -- 
> > "${3-$cur}"))
> >  }
> 
> What about something like this?
> 
> local words
> printf -v words "%q" "$w"
> COMPREPLY=($(compgen -P "${2-}" -S "${4- }" -W "$words" -- "${3-$cur}"))

Thanks, I didn't know about bash's internal printf magic. That is a much
more elegant solution.

Care to wrap it up in a patch?

-Peff
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to