summaryrefslogtreecommitdiff
path: root/gio/gdbus-bash-completion.sh
blob: 79f4cb4b426ca798e6ee70be1344919dab633ca9 (plain)
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

# Check for bash
[ -z "$BASH_VERSION" ] && return

####################################################################################################


__gdbus() {
    local IFS=$'\n'
    local cur=`_get_cword :`

    local suggestions=$(gdbus complete "${COMP_LINE}" ${COMP_POINT})
    COMPREPLY=($(compgen -W "$suggestions" -- "$cur"))

    # Remove colon-word prefix from COMPREPLY items
    case "$cur" in
        *:*)
            case "$COMP_WORDBREAKS" in
                *:*)
                    local colon_word=${cur%${cur##*:}}
                    local i=${#COMPREPLY[*]}
                    while [ $((--i)) -ge 0 ]; do
                        COMPREPLY[$i]=${COMPREPLY[$i]#"$colon_word"}
                    done
                    ;;
            esac
            ;;
    esac
}

####################################################################################################

complete -o nospace -F __gdbus gdbus