These scripts are automatically generated from YAML files which can be found
under specs/
.
The format supports nested subcommands, specifying enums for possible parameters/option values and dynamic completion calling an external command.
The generation is done with the appspec
tool (see
https://github.com/perlpunk/App-AppSpec-p5 for installation and usage)
Currently it supports bash and zsh completions.
cpan-upload
- upload a distribution to the CPANcpan
- easily interact with CPAN from the command linecpanm
- Install CPAN modulesdzil
- do stuff with your disthypnotoad
- Hypnotoad HTTP and WebSocket serverjq
- Command-line JSON processorjson_pp
- JSON::PP command utilityjson_xs
- JSON::XS commandline utilitylwp-request
- Simple command line user agentmorbo
- Morbo HTTP and WebSocket development servermpath
- display the full path to a perl module (installed locally)pip
- A tool for installing and managing Python packagesplackup
- Run PSGI application with Plack handlersstarman
- High-performance preforking PSGI/Plack web servertower-cli
- Ansible Tower Commandlineysh
- The YAML Test Shell
git clone https://github.com/perlpunk/shell-completions
Look into the spec/commandname.yaml
for specific usage instructions.
Put this in your .bashrc
:
for i in /path/to/shell-completions/bash/*.bash; do source $i; done
Put this in your .zshrc
:
# before the compinit call
fpath=('/path/to/shell-completions/zsh' $fpath)
Now exec zsh
.
If you just updated an existing completion script, it's enough to source it:
source /path/to/shell-completions/zsh/_scriptname
- https://github.com/zsh-users/zsh-completions - Over 130 completion scripts for zsh
- https://github.com/complete-shell - A different approach for generating completions