A command language interpreter for modern computers. A relatively new feature in bash is programmable completion, which has been available since the beta version of 2.04. Programmable completion will be familiar to you if you are a zsh user. It also exists, albeit in a much less usable form, in tcsh.It's much easier to demonstrate programmable completion than it is to explain it, so I suggest installing one of the files below and trying it out. If you don't like it, you can always disable it for a particular command, disable it completely, or remove it from your system. bash programmable completion can be installed and removed very cleanly, so you shouldn't be wary of giving it a whirl.