Package:Bash completion

From Funtoo
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Bash completion

   Tip

We welcome improvements to this page. To edit this page, Create a Funtoo account. Then log in and then click here to edit this page. See our editing guidelines to becoming a wiki-editing pro.

Install

root # emerge -av bash-completion

If you want to enable bash completion for any package that supports it, you can set the global USE flag bash-completion:

   /etc/portage/make.conf - Set bash-completion globally
USE="$USE bash-completion"

And then emerge -avN @world to enable bash-completion on packages you formerly built without that support.

However, you probably won't need bash completion on every package you install. So for a lighter system and faster completion, prefer enabling it on a per package basis.

Enable bash completion

You need to add the following to your .bashrc to load bash-completion.

   ~/.bashrc - enable bash completion
source  /etc/bash/bashrc.d/bash_completion.sh

Now you can enable completion for various programs with eselect.

user $ eselect bashcomp list
user $ eselect bashcomp enable gentoo

To enable bash completion for all packages, you can use the following.

root # eselect bashcomp enable --global {0..476}

Note that for tab completion to work with sftp, openssh must be compiled with libedit support. You can add this to your package.use file:

   /etc/portage/package.use - enable tab completion for sftp
net-misc/openssh libedit

To disable bash completion for all packages, you can use the following.

root # eselect bashcomp disable --global {0..476}