[Bash-completion-commits] [bash-completion] 02/05: gnokii: Various minor and cosmetic fixes
Ville Skyttä
scop-guest at moszumanska.debian.org
Mon May 11 09:22:54 UTC 2015
This is an automated email from the git hooks/post-receive script.
scop-guest pushed a commit to branch master
in repository bash-completion.
commit b07e35511138adc2a375ea3fcd21aee6a175e4f3
Author: Ville Skyttä <ville.skytta at iki.fi>
Date: Mon May 11 12:13:41 2015 +0300
gnokii: Various minor and cosmetic fixes
---
completions/gnokii | 168 +++++++++++++++++++++++++++--------------------------
1 file changed, 87 insertions(+), 81 deletions(-)
diff --git a/completions/gnokii b/completions/gnokii
index 3ff82c9..fa3ba8c 100644
--- a/completions/gnokii
+++ b/completions/gnokii
@@ -1,232 +1,238 @@
-# gnokii(1) completion
+# gnokii(1) completion -*- shell-script -*-
-_gnokii_memory_type() {
+_gnokii_memory_type()
+{
# TODO: reduce the number of choices
COMPREPLY=( $( compgen -W "IN OU SM ME MT" -- "$cur" ) )
}
-_gnokii_folder_ids() {
+_gnokii_folder_ids()
+{
gnokii --showsmsfolderstatus
}
-_gnokii() {
+_gnokii()
+{
local cur prev words cword pprev tprev fprev
_init_completion || return
case $prev in
--config)
_filedir
- return 0
+ return
;;
--phone)
- local config_file="$XDG_CONFIG_HOME/gnokii/config"
- [[ ! -f $config_file ]] && config_file="$HOME/.config/gnokii/config"
- [[ ! -f $config_file ]] && config_file="$HOME/.gnokiirc"
- [[ ! -f $config_file ]] && config_file="$XDG_CONFIG_DIRS/gnokii/config"
- [[ ! -f $config_file ]] && config_file=/etc/gnokiirc
- [[ ! -f $config_file ]] && return 0
- COMPREPLY=( $( compgen -W "$(sed -n 's/^\[phone_\(.*\)\]/\1/p' $config_file)" \
+ local config_file
+ for config_file in "$XDG_CONFIG_HOME/gnokii/config" \
+ "$HOME/.config/gnokii/config" "$HOME/.gnokiirc" \
+ "$XDG_CONFIG_DIRS/gnokii/config" /etc/gnokiirc ; do
+ [[ -f $config_file ]] && break
+ done
+ [[ ! -f $config_file ]] && return
+ COMPREPLY=( $( compgen -W \
+ "$( sed -n 's/^\[phone_\(.*\)\]/\1/p' $config_file )" \
-- "$cur" ) )
- return 0
+ return
;;
--help)
- COMPREPLY=( $( compgen -W 'all monitor sms mms phonebook calendar todo \
- dial profile settings wap logo ringtone security \
- file other' -- "$cur" ) )
- return 0
+ COMPREPLY=( $( compgen -W 'all monitor sms mms phonebook calendar
+ todo dial profile settings wap logo ringtone security file
+ other' -- "$cur" ) )
+ return
;;
- # no argument
--version|--shell|ping)
- return 0
+ return
;;
+
# MONITOR
--monitor)
COMPREPLY=( $( compgen -W 'delay once' -- "$cur" ) )
- return 0
+ return
;;
- # no argument
--getdisplaystatus|--displayoutput)
- return 0
+ return
;;
--netmonitor)
- COMPREPLY=( $( compgen -W 'reset off field devel next nr' -- "$cur" ) )
- return 0
+ COMPREPLY=( $( compgen -W 'reset off field devel next nr' \
+ -- "$cur" ) )
+ return
;;
# SMS
--sendsms)
# (how)TODO ?
- return 0
+ return
;;
--savesms)
- COMPREPLY=( $( compgen -W '--sender --smsc --smscno --folder --location \
- --sent --read --deliver --datetime' -- $cur ) )
- return 0
+ COMPREPLY=( $( compgen -W '--sender --smsc --smscno --folder
+ --location --sent --read --deliver --datetime' -- "$cur" ) )
+ return
;;
- --memory-type|--memory|--getsms|--deletesms|--getmms|--deletemms| \
+ --memory-type|--memory|--getsms|--deletesms|--getmms|--deletemms|\
--getphonebook|--deletephonebook)
_gnokii_memory_type
- return 0
+ return
;;
- --getsmsc|--getcalendarnote|--deletecalendarnote|--gettodo|--getspeeddial)
+ --getsmsc|--getcalendarnote|--deletecalendarnote|--gettodo|\
+ --getspeeddial)
# TODO: grab a specific entry ID
- return 0
+ return
;;
- # no argument
- --setsmsc|--smsreader|--createsmsfolder|--deletealltodos|--showsmsfolderstatus)
- return 0
+ --setsmsc|--smsreader|--createsmsfolder|--deletealltodos|\
+ --showsmsfolderstatus)
+ return
;;
--deletesmsfolder|--folder)
# TODO: folderid
- return 0
+ return
;;
--writephonebook)
- COMPREPLY=( $( compgen -W '--overwrite --find-free --memory-type \
- --location --vcard --ldif' -- $cur ) )
- return 0
+ COMPREPLY=( $( compgen -W '--overwrite --find-free --memory-type
+ --location --vcard --ldif' -- "$cur" ) )
+ return
;;
--writecalendarnote|--writetodo)
_filedir vcf
- return 0
+ return
;;
# DIAL
--setspeeddial|--dialvoice|--senddtmf|--answercall|--hangup)
# TODO
- return 0
+ return
;;
--divert)
COMPREPLY=( $( compgen -W '--op' -- "$cur" ) )
- return 0
+ return
;;
# PROFILE
--getprofile|--setactiveprofile)
# TODO
- return 0
+ return
;;
--setprofile|--getactiveprofile)
- return 0
+ return
;;
# SETTINGS
--reset)
COMPREPLY=( $( compgen -W 'soft hard' -- "$cur" ) )
- return 0
+ return
;;
--setdatetime|--setalarm)
# TODO
- return 0
+ return
;;
--getdatetime|--getalarm)
- return 0
+ return
;;
# WAP
- --getwapbookmark|--writewapbookmark|--deletewapbookmark|--getwapsetting| \
- --writewapsetting|--activatewapsetting)
- return 0
+ --getwapbookmark|--writewapbookmark|--deletewapbookmark|\
+ --getwapsetting|--writewapsetting|--activatewapsetting)
+ return
;;
# LOGOS
--sendlogo)
COMPREPLY=( $( compgen -W 'caller op picture' -- "$cur" ) )
- return 0
+ return
;;
--setlogo|--getlogo)
- COMPREPLY=( $( compgen -W 'op startup caller dealer text' -- "$cur" ) )
- return 0
+ COMPREPLY=( $( compgen -W 'op startup caller dealer text' \
+ -- "$cur" ) )
+ return
;;
--viewlogo)
# TODO: logofile
- return 0
+ return
;;
--entersecuritycode)
COMPREPLY=( $( compgen -W 'PIN PIN2 PUK PUK2 SEC' -- "$cur" ) )
- return 0
+ return
;;
# TODO: RINGTONES
esac
# second level completion
- if [[ $((cword-2)) -ge 1 && ${words[$((cword-2))]} =~ --* ]]; then
- pprev=${words[$((cword-2))]}
+ if [[ $((cword-2)) -ge 1 && ${words[cword-2]} =~ --* ]]; then
+ pprev=${words[cword-2]}
case $pprev in
--setspeeddial)
_gnokii_memory_type
- return 0
+ return
;;
- --getsms|--deletesms|--getmms|--deletemms|--getphonebook|--writetodo| \
- --writecalendarnote)
+ --getsms|--deletesms|--getmms|--deletemms|--getphonebook|\
+ --writetodo|--writecalendarnote)
# TODO: start number
- return 0
+ return
;;
--gettodo|--getcalendarnote)
COMPREPLY=( $( compgen -W '{1..9} end --vCal' -- "$cur" ) )
- return 0
+ return
;;
--deletecalendarnote)
COMPREPLY=( $( compgen -W '{1..9} end' -- "$cur" ) )
- return 0
+ return
;;
--divert)
- COMPREPLY=( $( compgen -W 'register enable query disable erasure' \
- -- "$cur" ) )
- return 0
+ COMPREPLY=( $( compgen -W 'register enable query disable
+ erasure' -- "$cur" ) )
+ return
;;
esac
fi
# third level completion
- if [[ $((cword-3)) -ge 1 && ${words[$((cword-3))]} =~ --* ]]; then
- tprev=${words[$((cword-3))]}
+ if [[ $((cword-3)) -ge 1 && ${words[cword-3]} =~ --* ]]; then
+ tprev=${words[cword-3]}
case $tprev in
--deletesms|--deletemms)
COMPREPLY=( $( compgen -W 'end' -- "$cur" ) )
- return 0
+ return
;;
--getphonebook|--writetodo|--writecalendarnote)
COMPREPLY=( $( compgen -W '{1..9} end' -- "$cur" ) )
- return 0
+ return
;;
--gettodo|--getcalendarnote)
- [[ ${words[$((cword-1))]} = end ]] && \
+ [[ ${words[cword-1]} == end ]] && \
COMPREPLY=( $( compgen -W '--vCal' -- "$cur" ) )
- return 0
+ return
;;
--divert)
COMPREPLY=( $( compgen -W '--type' -- "$cur" ) )
- return 0
+ return
esac
fi
# fourth level completion
- if [[ $((cword-4)) -ge 1 && ${words[$((cword-4))]} =~ --* ]]; then
- fprev=${words[$((cword-4))]}
+ if [[ $((cword-4)) -ge 1 && ${words[cword-4]} =~ --* ]]; then
+ fprev=${words[cword-4]}
case $fprev in
--getphonebook)
COMPREPLY=( $( compgen -W '--raw --vcard --ldif' -- "$cur" ) )
- return 0
+ return
;;
--divert)
COMPREPLY=( $( compgen -W 'all busy noans outofreach notavail' \
-- "$cur" ) )
- return 0
+ return
esac
fi
# safer to use LANG=C
- local all_cmd="$(LANG=C _parse_help $1 "--help all")"
+ local all_cmd="$( LANG=C _parse_help $1 "--help all" )"
# these 2 below are allowed in combination with others
- local main_cmd=$(echo "$a"|grep -v -- '--config\|--phone')
+ local main_cmd=$( echo "$all_cmd" | grep -v -- '--config\|--phone' )
# don't provide main command completions if one is
# already on the command line
- [[ $COMP_LINE =~ $(tr ' ' '|'<<<$main_cmd) ]] && return 0
+ [[ $COMP_LINE =~ $( tr ' ' '|'<<<$main_cmd ) ]] && return
COMPREPLY=( $( compgen -W "$all_cmd" -- "$cur" ) )
- return 0
} &&
complete -F _gnokii gnokii
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/bash-completion/bash-completion.git
More information about the Bash-completion-commits
mailing list