summaryrefslogtreecommitdiff
path: root/contrib/dict
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/dict')
-rw-r--r--contrib/dict77
1 files changed, 38 insertions, 39 deletions
diff --git a/contrib/dict b/contrib/dict
index c45310f4..4cfdf98f 100644
--- a/contrib/dict
+++ b/contrib/dict
@@ -12,61 +12,60 @@ _dict()
local cur prev host port db dictfile
COMPREPLY=()
- cur=`_get_cword`
- prev=${COMP_WORDS[COMP_CWORD-1]}
+ _get_comp_words_by_ref cur prev
dictfile=/usr/share/dict/words
for (( i=1; i < COMP_CWORD; i++ )); do
- case "${COMP_WORDS[i]}" in
- -@(h|--host))
- host=${COMP_WORDS[i+1]}
- [ -n "$host" ] && host="-h $host"
- i=$((++i))
- ;;
- -@(p|-port))
- port=${COMP_WORDS[i+1]}
- [ -n "$port" ] && port="-p $port"
- i=$((++i))
- ;;
- -@(d|-database))
- db=${COMP_WORDS[i+1]}
- [ -n "$db" ] && host="-d $db"
- i=$((++i))
- ;;
- *)
- ;;
+ case ${COMP_WORDS[i]} in
+ -h|--host)
+ host=${COMP_WORDS[i+1]}
+ [ -n "$host" ] && host="-h $host"
+ i=$((++i))
+ ;;
+ -p|--port)
+ port=${COMP_WORDS[i+1]}
+ [ -n "$port" ] && port="-p $port"
+ i=$((++i))
+ ;;
+ -d|--database)
+ db=${COMP_WORDS[i+1]}
+ [ -n "$db" ] && host="-d $db"
+ i=$((++i))
+ ;;
+ *)
+ ;;
esac
done
if [[ "$cur" = -* ]]; then
- COMPREPLY=( $( compgen -W '-h --host -p --port -d --database \
- -m --match -s --strategy -c --config -C \
- --nocorrect -D --dbs -S --strats -H \
- --serverhelp -i --info -I --serverinfo \
- -a --noauth -u --user -k --key -V --version \
- -L --license --help -v --verbose -r --raw \
- -P --pager --debug --html --pipesize --client' \
+ COMPREPLY=( $( compgen -W '--host --port --database \
+ --match --strategy --config \
+ --nocorrect --dbs --strats \
+ --serverhelp --info --serverinfo \
+ --noauth --user --key --version \
+ --license --help --verbose --raw \
+ --pager --debug --html --pipesize --client' \
-- "$cur" ) )
return 0
fi
- case "$prev" in
- -@(d|-database|i|info))
- COMPREPLY=( $( compgen -W '$( _dictdata -D )' -- "$cur" ) )
- return 0
- ;;
- -@(s|-strategy))
- COMPREPLY=( $( compgen -W '$( _dictdata -S )' -- "$cur" ) )
- return 0
- ;;
- *)
- ;;
+ case $prev in
+ -d|--database|-i|-info)
+ COMPREPLY=( $( compgen -W '$( _dictdata -D )' -- "$cur" ) )
+ return 0
+ ;;
+ -s|--strategy)
+ COMPREPLY=( $( compgen -W '$( _dictdata -S )' -- "$cur" ) )
+ return 0
+ ;;
+ *)
+ ;;
esac
[ -r $dictfile ] && \
COMPREPLY=( $( compgen -W '$( cat $dictfile )' -- "$cur" ) )
}
-complete -F _dict $default dict rdict
+complete -F _dict -o default dict rdict
}
# Local variables: