summaryrefslogtreecommitdiff
path: root/gtk+-mingw/share/bash-completion
diff options
context:
space:
mode:
Diffstat (limited to 'gtk+-mingw/share/bash-completion')
-rw-r--r--gtk+-mingw/share/bash-completion/completions/gdbus33
-rw-r--r--gtk+-mingw/share/bash-completion/completions/gresource58
-rw-r--r--gtk+-mingw/share/bash-completion/completions/gsettings84
3 files changed, 175 insertions, 0 deletions
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