diff options
Diffstat (limited to 'completions/util-linux')
-rw-r--r-- | completions/util-linux | 28 |
1 files changed, 11 insertions, 17 deletions
diff --git a/completions/util-linux b/completions/util-linux index 918363aa..72b97765 100644 --- a/completions/util-linux +++ b/completions/util-linux @@ -5,16 +5,14 @@ have renice && _renice() { - local command cur curopt i + local cur prev words cword + _init_completion || return - COMPREPLY=() - _get_comp_words_by_ref cur - command=$1 + local command=$1 curopt i=0 - i=0 # walk back through command line and find last option - while [[ $i -le $COMP_CWORD && ${#COMPREPLY[@]} -eq 0 ]]; do - curopt=${COMP_WORDS[COMP_CWORD-$i]} + while [[ $i -le $cword && ${#COMPREPLY[@]} -eq 0 ]]; do + curopt=${words[cword-$i]} case "$curopt" in -u) _allowed_users @@ -36,12 +34,10 @@ complete -F _renice renice have kill && _kill() { - local cur + local cur prev words cword + _init_completion || return - COMPREPLY=() - _get_comp_words_by_ref cur - - if [[ $COMP_CWORD -eq 1 && "$cur" == -* ]]; then + if [[ $cword -eq 1 && "$cur" == -* ]]; then # return list of available signals _signals else @@ -56,12 +52,10 @@ complete -F _kill kill have look && _look() { - local cur - - COMPREPLY=() - _get_comp_words_by_ref cur + local cur prev words cword + _init_completion || return - if [[ $COMP_CWORD -eq 1 ]]; then + if [[ $cword -eq 1 ]]; then COMPREPLY=( $( compgen -W '$(look "$cur" 2>/dev/null)' -- "$cur" ) ) fi } && |