summaryrefslogtreecommitdiff
path: root/completions/pkg-get
diff options
context:
space:
mode:
Diffstat (limited to 'completions/pkg-get')
-rw-r--r--completions/pkg-get34
1 files changed, 16 insertions, 18 deletions
diff --git a/completions/pkg-get b/completions/pkg-get
index bf66fcc8..d5382eb2 100644
--- a/completions/pkg-get
+++ b/completions/pkg-get
@@ -2,8 +2,7 @@
#
# Copyright 2006 Yann Rouillard <yann@opencsw.org>
-_have pkg-get &&
-_pkg-get_get_catalog_file()
+_pkg_get_get_catalog_file()
{
local url="$1"
local catalog_file i conffile
@@ -26,50 +25,49 @@ _pkg-get_get_catalog_file()
echo "$catalog_file"
} &&
-_pkg-get()
+_pkg_get()
{
local cur prev file catalog_file url command
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
- if [[ "${prev}" = "-s" ]]; then
+ if [[ "${prev}" == "-s" ]]; then
return 1
fi
- i=${#COMP_WORDS[*]}
+ i=${#COMP_WORDS[*]}
while [[ $i -gt 0 ]]; do
i=$((i-1))
- if [[ "${COMP_WORDS[$i]}" = "-s" ]]; then
+ if [[ "${COMP_WORDS[$i]}" == -s ]]; then
url="${COMP_WORDS[$((i+1))]}"
fi
- if [[ "${COMP_WORDS[$i]}" == @(available|-a|describe|-D|download|-d|install|-i|list|updatecatalog|-U|upgrade|-u) ]]; then
+ if [[ "${COMP_WORDS[$i]}" == @(-[aDdiUu]|available|describe|download|install|list|updatecatalog|upgrade) ]]; then
command="${COMP_WORDS[$i]}"
fi
done
if [[ -n "$command" ]]; then
- if [[ "$command" == @(describe|-D|download|-d|install|-i) ]]; then
- catalog_file=$(_pkg-get_get_catalog_file "$url")
+ if [[ "$command" == @(-[Ddi]|describe|download|install) ]]; then
+ catalog_file=$(_pkg_get_get_catalog_file "$url")
if [[ -f $catalog_file ]]; then
local packages_list=$(awk ' $0 ~ /BEGIN PGP SIGNATURE/ { exit } $1 ~ /^Hash:/ || $1 ~ /^ *(-|#|$)/ { next } { print $1 }' $catalog_file)
COMPREPLY=( $(compgen -W "${packages_list}" -- ${cur}) )
fi
fi
- return 0
+ return
fi
if [[ ${cur} == -* ]] ; then
local opts="-c -d -D -f -i -l -s -S -u -U -v"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
- return 0
- else
- local commands="available describe download install list \
- updatecatalog upgrade"
- COMPREPLY=( $(compgen -W "${commands}" -- ${cur}) )
- return 0
+ return
fi
+
+ local commands="available describe download install list \
+ updatecatalog upgrade"
+ COMPREPLY=( $(compgen -W "${commands}" -- ${cur}) )
} &&
-complete -F _pkg-get pkg-get
+complete -F _pkg_get pkg-get
-# ex: ts=4 sw=4 et filetype=sh
+# ex: filetype=sh