From a4460f6d9453bbd7e584937686449cef3e19f052 Mon Sep 17 00:00:00 2001 From: Leo Tenenbaum Date: Mon, 20 Aug 2018 20:34:57 -0400 Subject: Initial commit --- gtk+-mingw/share/bash-completion/completions/gdbus | 33 +++++++++ .../share/bash-completion/completions/gresource | 58 +++++++++++++++ .../share/bash-completion/completions/gsettings | 84 ++++++++++++++++++++++ 3 files changed, 175 insertions(+) create mode 100644 gtk+-mingw/share/bash-completion/completions/gdbus create mode 100644 gtk+-mingw/share/bash-completion/completions/gresource create mode 100644 gtk+-mingw/share/bash-completion/completions/gsettings (limited to 'gtk+-mingw/share/bash-completion') diff --git a/gtk+-mingw/share/bash-completion/completions/gdbus b/gtk+-mingw/share/bash-completion/completions/gdbus new file mode 100644 index 0000000..79f4cb4 --- /dev/null +++ b/gtk+-mingw/share/bash-completion/completions/gdbus @@ -0,0 +1,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 diff --git a/gtk+-mingw/share/bash-completion/completions/gresource b/gtk+-mingw/share/bash-completion/completions/gresource new file mode 100644 index 0000000..ef1145d --- /dev/null +++ b/gtk+-mingw/share/bash-completion/completions/gresource @@ -0,0 +1,58 @@ + +# Check for bash +[ -z "$BASH_VERSION" ] && return + +#################################################################################################### + +__gresource() { + local choices coffset section + + if [ ${COMP_CWORD} -gt 2 ]; then + if [ ${COMP_WORDS[1]} = --section ]; then + section=${COMP_WORDS[2]} + coffset=2 + else + coffset=0 + fi + else + coffset=0 + fi + + case "$((${COMP_CWORD}-$coffset))" in + 1) + choices=$'--section \nhelp \nsections \nlist \ndetails \nextract ' + ;; + + 2) + case "${COMP_WORDS[$(($coffset+1))]}" in + --section) + return 0 + ;; + + help) + choices=$'sections\nlist\ndetails\nextract' + ;; + + sections|list|details|extract) + COMPREPLY=($(compgen -f -- ${COMP_WORDS[${COMP_CWORD}]})) + return 0 + ;; + esac + ;; + + 3) + case "${COMP_WORDS[$(($coffset+1))]}" in + list|details|extract) + choices="$(gresource list ${COMP_WORDS[$(($coffset+2))]} 2> /dev/null | sed -e 's.$. .')" + ;; + esac + ;; + esac + + local IFS=$'\n' + COMPREPLY=($(compgen -W "${choices}" -- "${COMP_WORDS[${COMP_CWORD}]}")) +} + +#################################################################################################### + +complete -o nospace -F __gresource gresource diff --git a/gtk+-mingw/share/bash-completion/completions/gsettings b/gtk+-mingw/share/bash-completion/completions/gsettings new file mode 100644 index 0000000..145c6a8 --- /dev/null +++ b/gtk+-mingw/share/bash-completion/completions/gsettings @@ -0,0 +1,84 @@ + +# Check for bash +[ -z "$BASH_VERSION" ] && return + +#################################################################################################### + +__gsettings() { + local choices coffset schemadir + + if [ ${COMP_CWORD} -gt 2 ]; then + if [ ${COMP_WORDS[1]} = --schemadir ]; then + # this complexity is needed to perform correct tilde expansion + schemadir=$(eval "echo --schemadir ${COMP_WORDS[2]}") + coffset=2 + else + coffset=0 + fi + else + coffset=0 + fi + + case "$((${COMP_CWORD}-$coffset))" in + 1) + choices=$'--schemadir\nhelp \nlist-schemas\nlist-relocatable-schemas\nlist-keys \nlist-children \nlist-recursively \nget \nrange \nset \nreset \nreset-recursively \nwritable \nmonitor' + ;; + + 2) + case "${COMP_WORDS[$(($coffset+1))]}" in + --schemadir) + COMPREPLY=($(compgen -o dirnames -- ${COMP_WORDS[${COMP_CWORD}]})) + return 0 + ;; + + help) + choices=$'list-schemas\nlist-relocatable-schemas\nlist-keys\nlist-children\nlist-recursively\nget\nrange\nset\nreset\nreset-recursively\nwritable\nmonitor' + ;; + list-keys|list-children|list-recursively|reset-recursively) + choices="$(gsettings $schemadir list-schemas)"$'\n'"$(gsettings $schemadir list-relocatable-schemas | sed -e 's.$.:/.')" + ;; + + get|range|set|reset|writable|monitor) + choices="$(gsettings $schemadir list-schemas | sed -e 's.$. .')"$'\n'"$(gsettings $schemadir list-relocatable-schemas | sed -e 's.$.:/.')" + ;; + esac + ;; + + 3) + case "${COMP_WORDS[$(($coffset+1))]}" in + set) + choices="$(gsettings $schemadir list-keys ${COMP_WORDS[$(($coffset+2))]} 2> /dev/null | sed -e 's.$. .')" + ;; + + get|range|reset|writable|monitor) + choices="$(gsettings $schemadir list-keys ${COMP_WORDS[$(($coffset+2))]} 2> /dev/null)" + ;; + esac + ;; + + 4) + case "${COMP_WORDS[$(($coffset+2))]}" in + set) + range=($(gsettings $schemadir range ${COMP_WORDS[$(($coffset+2))]} ${COMP_WORDS[$(($coffset+3))]} 2> /dev/null)) + case "${range[0]}" in + enum) + unset range[0] + ;; + *) + unset range + ;; + esac + local IFS=$'\n' + choices="${range[*]}" + ;; + esac + ;; + esac + + local IFS=$'\n' + COMPREPLY=($(compgen -W "${choices}" -- "${COMP_WORDS[${COMP_CWORD}]}")) +} + +#################################################################################################### + +complete -o nospace -F __gsettings gsettings -- cgit v1.2.3