May 26, 2018
Extensible system to provide bash completion
bash completion should just work when you install new commands. BashCompletion is a system to use and write bash completion rules.
For end-users, you just need to add this line to your .bashrc or .bash_profile
This will load all the installed BashCompletion plugins, make sure they should be activated and generate the proper bash code to setup bash completion for them.
If you later install a new command line tool, and it has a BashCompletionPlugin -based plugin, all your new shells will have bash completion rules for it. You can also force immediate setup by running the same command
To write a new BashCompletion plugin, see BashCompletionPlugin.