Issue with bash completion

Ed Greshko Ed.Greshko at greshko.com
Thu May 31 11:21:48 UTC 2012


On 05/31/2012 06:29 PM, suvayu ali wrote:
> Hi,
>
> After the upgrade from Fedora 16 to Fedora 17, completion for any of my
> wrapper functions (for standard tools) are not working. To give an
> example, I have a wrapper around find called find_ext. I want it to
> complete just like GNU find so I define the following completion:
>
>   complete -F _find find_ext
>
> However this does not work. Completion is working for find itself, just
> not my wrapper function. I see that the completion function `_find` is
> not even defined in my shell (there is no output for `declare -f
> _find`).
>
> This is even more surprising since I see that _find is defined in
> /usr/share/bash-completion/completions/find. However I could not find
> anything in /usr/share/bash-completion/bash_completion that actually
> sources the files in /usr/share/bash-completion/completions/ (although
> it does for /etc/bash_completion.d/).
>
> Has something changed drastically? How do I make my wrappers complete
> using standard completion functions?
>
> Thanks in advance for any ideas.
>
> PS: When I use a custom completion function (with none of the standard
>     ones inside) it works as expected.
>

Seems to work for me.....

I just have a script called "huh" in ~/bin and it only contains

#!/bin/bash

sleep 5

Then....

complete -F _find huh

And when I type "hug -ma(tab)"  It completes with "huh -maxdepth"

-- 
Never be afraid to laugh at yourself, after all, you could be missing out on the joke
of the century. -- Dame Edna Everage


More information about the users mailing list