diff options
Diffstat (limited to 'completions/qfile')
-rw-r--r-- | completions/qfile | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/completions/qfile b/completions/qfile new file mode 100644 index 0000000..edf9e08 --- /dev/null +++ b/completions/qfile @@ -0,0 +1,45 @@ +# Gentoo Linux Bash Shell Command Completion +# +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License, v2 or later + +source "@helpersdir@/gentoo-common.sh" + +# +# qfile completion (from app-portage/portage-utils) +# + +_qfile() { + local cur=${COMP_WORDS[COMP_CWORD]} prev=${COMP_WORDS[COMP_CWORD-1]} + + local -A OPTS=( + [STANDALONE]='-S --slots -R --root-prefix -d --dir -o --orphans + -P --skip-plibreg --verbose -q --quiet -C --nocolor --color + -h --help -V --version' + [ARG]='-F --format -x --exclude --root' + ) + + case ${prev} in + --root) + _filedir -d + return + ;; + -x|--exclude) + _pkgname -I "${cur}" + return + ;; + -F|--format) + COMPREPLY=() + return + ;; + esac + + if [[ ${cur} = -* ]]; then + COMPREPLY=( $(compgen -W '${OPTS[*]}' -- "${cur}") ) + else + _filedir + fi +} && +complete -F _qfile qfile + +# vim: ft=sh:et:ts=4:sw=4:tw=80 |