This file is indexed.

/usr/share/bash-completion/completions/debdiff is in devscripts 2.17.6+deb9u2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# /usr/share/bash-completion/completions/debdiff
# Bash command completion for ‘debdiff(1)’.
# Documentation: ‘bash(1)’, section “Programmable Completion”.

# Copyright © 2016 Ben Finney <ben+debian@benfinney.id.au>
# Copyright © 2015, Nicholas Bamber <nicholas@periapt.co.uk>

_debdiff()
{
    local options i
    local command_name=debdiff
    local file_list_mode=normal
    local -i move_from=-1
    local -i move_to=-1

    local cur prev words cword
    _init_completion || return

    options='-h --help -v --version'
    options+=' -q --quiet'
    options+=' -d --dirs --nodirs'
    options+=' -w --ignore-space'
    options+=' --diffstat --no-diffstat'
    options+=' --auto-ver-sort --no-auto-ver-sort'
    options+=' --unpack-tarballs --no-unpack-tarballs'
    options+=' --control --nocontrol --controlfiles'
    options+=' --wdiff-source-control --no-wdiff-source-control --wp --wl --wt'
    options+=' --show-moved --noshow-moved --renamed'
    options+=' --debs-dir'
    options+=' --from'
    options+=' --move --move-regex'
    options+=' --exclude'

    unset COMPREPLY

    case "$prev" in
        "$command_name")
            options+=' --noconf --no-conf'
            ;;

        --debs-dir)
            COMPREPLY=( $( compgen -A directory -- "$cur" ) )
            ;;

    esac

    if [[ -v COMPREPLY ]] ; then
        return 0
    fi

    for (( i=1; i<${#words[@]}; i++ )); do
        if [[ $file_list_mode == @(deb|dsc|changes) ]]; then
            if (( i == ${#words[@]}-1 )); then
                break
            else
                COMPREPLY=()
                return 0
            fi
        fi
        if (( ${move_from} == -1  && ${move_to} == -1 )); then
            file_list_mode=normal
        elif (( ${move_from} >= 0 && ${move_to} == -1 )); then
            file_list_mode=from
        elif (( ${move_from} >= 0 && ${move_to} >= 0 && ${move_to} < ${move_from} )); then
            file_list_mode=to
        else
            COMPREPLY=( ) 
            return 0
        fi
        if [[ $file_list_mode == normal && ${words[i]} == --from ]]; then
            move_from=0
            file_list_mode=from
        elif [[ $file_list_mode == normal && ${words[i]} == *.deb ]]; then
            file_list_mode=deb
        elif [[ $file_list_mode == normal && ${words[i]} == *.dsc ]]; then
            file_list_mode=dsc
        elif [[ $file_list_mode == normal && ${words[i]} == *.changes ]]; then
            file_list_mode=changes
        elif [[ $file_list_mode == from && ${words[i]} == *.deb ]]; then
            (( ++move_from ))
        elif [[ $file_list_mode == from && ${words[i]} == --to ]]; then
            move_to=0
            file_list_mode=to
        elif [[ $file_list_mode = to && ${words[i]} == *.deb ]]; then
            (( ++move_to ))
        fi
    done

    if [[ $file_list_mode == normal ]]; then

        if [[ $cur == -* ]]; then
            COMPREPLY=( $( compgen -W "${options}" -- "$cur" ) )
        else
            declare -a _compreply=( $( compgen -o filenames -G '*.@(deb|dsc|changes)' ) )
            COMPREPLY=( $( compgen -W "${_compreply[*]}"  -- "$cur" ) )
        fi
    elif [[ $file_list_mode == deb ]]; then
        declare -a _compreply=( $( compgen -o filenames -G '*.deb' ) )
        COMPREPLY=( $( compgen -W "${_compreply[*]}"  -- "$cur" ) )
    elif [[ $file_list_mode = dsc ]]; then
        declare -a _compreply=( $( compgen -o filenames -G '*.dsc' ) )
        COMPREPLY=( $( compgen -W "${_compreply[*]}"  -- "$cur" ) )
    elif [[ $file_list_mode = changes ]]; then
        declare -a _compreply=( $( compgen -o filenames -G '*.changes' ) )
        COMPREPLY=( $( compgen -W "${_compreply[*]}"  -- "$cur" ) )
    else
        options=$(find . -name '*.deb' | sed -e's!\.\/!!' |  paste -s -d' ')
        if [[ $file_list_mode == from ]]; then
            if (( $move_from > 0 )); then
                options+=' --to'
            fi
        fi
        COMPREPLY=( $( compgen -W "${options}" -- "$cur" ) )
    fi

    return 0
} &&
complete -F _debdiff debdiff


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