# bash completion for ulimit -*- shell-script -*- _ulimit() { local cur prev words cword _init_completion || return # TODO combined option support (-aH, -Sc etc) local mode case $prev in -a) COMPREPLY=($(compgen -W "-S -H" -- "$cur")) return ;; -[SH]) ;; -*) mode=$prev ;; esac if [[ ! -v mode ]]; then local word for word in "${words[@]}"; do [[ $word == -*a* ]] && return done if [[ $cur == -* ]]; then COMPREPLY=($(compgen -W '$(_parse_usage "$1")' -- "$cur")) return fi fi local args _count_args ((args == 1)) && COMPREPLY=($(compgen -W "soft hard unlimited" -- "$cur")) } && complete -F _ulimit ulimit # ex: filetype=sh