mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-11-14 13:26:16 +01:00
e9ec1ad068
The bash-completion code nowadays expects completion files to be installed in /usr/share/bash-completion/completions, and expects them to be named like the command they are completing for. https://bugzilla.gnome.org/show_bug.cgi?id=677782
34 lines
935 B
Plaintext
34 lines
935 B
Plaintext
|
|
# 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
|