diff options
author | Arthur Zamarin <arthurzam@gentoo.org> | 2024-05-21 22:25:11 +0300 |
---|---|---|
committer | Arthur Zamarin <arthurzam@gentoo.org> | 2024-05-21 22:25:11 +0300 |
commit | 725f857724ac06277423688c3f6ca8f4ea15334f (patch) | |
tree | 720947b80d2e169865e3302124c652d42f4111d4 /completions | |
parent | layman: optimize speed (diff) | |
download | gentoo-bashcomp-725f857724ac06277423688c3f6ca8f4ea15334f.tar.gz gentoo-bashcomp-725f857724ac06277423688c3f6ca8f4ea15334f.tar.bz2 gentoo-bashcomp-725f857724ac06277423688c3f6ca8f4ea15334f.zip |
add completion for eshowkw from app-portage/gentoolkit
Closes: https://bugs.gentoo.org/426570
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
Diffstat (limited to 'completions')
-rw-r--r-- | completions/eshowkw | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/completions/eshowkw b/completions/eshowkw new file mode 100644 index 0000000..8420420 --- /dev/null +++ b/completions/eshowkw @@ -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" + +# +# eshowkw completion (from app-portage/gentoolkit) +# + +_eshowkw() { + local cur=${COMP_WORDS[COMP_CWORD]} prev=${COMP_WORDS[COMP_CWORD-1]} + + local -A OPTS=( + [STANDALONE]='-h --help -v --version -B --bold -C --color -O --overlays + -P --prefix -S --ignore-slot' + [ARG]='-a --arch -A --align -T --top-position' + ) + + case ${prev} in + -a|--arch) + local portdir=$(_portdir) + COMPREPLY=($(compgen -W "$( grep -v \# < "${portdir}/profiles/arch.list" )" -- "${cur}")) + return + ;; + -A|--align) + COMPREPLY=($(compgen -W "top bottom" -- "${cur}")) + return + ;; + -T|--top-position) + COMPREPLY=($(compgen -W "archlist versionlist" -- "${cur}")) + return + ;; + esac + + if [[ ${cur} = -* ]]; then + COMPREPLY=( $(compgen -W '${OPTS[*]}' -- "${cur}") ) + else + _pkgname -A "${cur}" + fi +} && +complete -F _eshowkw eshowkw + +# vim: ft=sh:et:ts=4:sw=4:tw=80 |