#mt bash completion by Paweł Marciniak <sunwire<at>gmail.com>
#

_mt () {
    local cur prev words cword
    _init_completion || return

    #possible commands
    commands="weof wset eof fsf fsfm bsf bsfm fsr bsr fss bss rewind offline rewoffl eject retension eod seod seek tell status erase setblk lock unlock load compression setdensity drvbuffer stwrthreshold stoptions stsetoptions stclearoptions defblksize defdensity defdrvbuffer defcompression stsetcln sttimeout stlongtimeout densities setpartition mkpartition partseek asf stshowopt"

    COMPREPLY=()

    case $prev in
        -v | --version)
            return
            ;;
        -f )
            #list tape devices
            for tape in /sys/class/scsi_tape/*;
              do devs+="/dev/${tape##*/} ";
            done;
            COMPREPLY=($(compgen -W "$devs" -- "$cur"))
            return
            ;;
    esac

    if [[ $cur == -* ]]; then
        COMPREPLY=($(compgen -W '-f -v' -- "$cur"))
        return
    fi

    COMPREPLY=($(compgen -W "$commands" -- "$cur"))

}
complete -F _mt mt
