mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2024-12-26 17:01:14 -06:00
33 lines
989 B
Plaintext
33 lines
989 B
Plaintext
|
# -*- shell-script -*-
|
||
|
# Programmable completion for the IPA ipa command under bash. Source
|
||
|
# this file (or on some systems add it to ~/.bash_completion and start a new
|
||
|
# shell) and bash's completion mechanism will know all about ipa's options!
|
||
|
|
||
|
# Known to work with bash 2.05a with programmable completion and extended
|
||
|
# pattern matching enabled (use 'shopt -s extglob progcomp' to enable
|
||
|
# these if they are not already enabled).
|
||
|
|
||
|
# based on the bzr bash completion script by Martin Pool
|
||
|
|
||
|
_ipa_commands()
|
||
|
{
|
||
|
ipa help commands | sed -r 's/^([-[:alnum:]]*).*/\1/' | grep '^[[:alnum:]]'
|
||
|
}
|
||
|
|
||
|
_ipa()
|
||
|
{
|
||
|
cur=${COMP_WORDS[COMP_CWORD]}
|
||
|
prev=${COMP_WORDS[COMP_CWORD-1]}
|
||
|
if [ $COMP_CWORD -eq 1 ]; then
|
||
|
COMPREPLY=( $( compgen -W "$(_ipa_commands)" $cur ) )
|
||
|
elif [ $COMP_CWORD -eq 2 ]; then
|
||
|
case "$prev" in
|
||
|
help)
|
||
|
COMPREPLY=( $( compgen -W "$(_ipa_commands) commands" $cur ) )
|
||
|
;;
|
||
|
esac
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
complete -F _ipa -o default ipa
|