# /usr/share/bash-completion/completions/dscextract
# Bash command completion for ‘dscextract(1)’.
# Documentation: ‘bash(1)’, section “Programmable Completion”.

# Copyright © 2015, Nicholas Bamber <nicholas@periapt.co.uk>

_dscextract()
{
    local cur prev words cword _options
    _init_completion || return

    if [[ "$cur" == -* ]]; then
        COMPREPLY=( $( compgen -W '-f' -- "$cur" ) )
    elif [[ "$prev" == -f ]]; then
        declare -a _compreply=( $( compgen -o filenames -G '*.dsc' ) )
        COMPREPLY=( $( compgen -W "${_compreply[*]}"  -- "$cur" ) )
    elif [[ "$prev" == *.dsc ]]; then
        declare -a _compreply=( $( tar tvf ${prev/.dsc/.debian.tar.*} 2>/dev/null | sed 's! \+! !g' | cut -d' ' -f6 ) )
        COMPREPLY=( $( compgen -W "${_compreply[*]}"  -- "$cur" ) )
    else
        declare -a _compreply=( $( compgen -W '-f' -o filenames -G '*.dsc' ) )
        COMPREPLY=( $( compgen -W "${_compreply[*]}"  -- "$cur" ) )
    fi

    return 0
} && complete -F _dscextract dscextract


# Local variables:
# coding: utf-8
# mode: shell-script
# indent-tabs-mode: nil
# End:
# vim: fileencoding=utf-8 filetype=sh expandtab shiftwidth=4 :