37 lines
835 B
Plaintext
37 lines
835 B
Plaintext
#compdef gas
|
|
#autoload
|
|
|
|
local curcontext="$curcontext" state line cmds ret=1
|
|
|
|
_arguments -C \
|
|
'(- 1 *)'{-v,--version}'[display version information]' \
|
|
'(-h|--help)'{-h,--help}'[show help information]' \
|
|
'1: :->cmds' \
|
|
'*: :->args' && ret=0
|
|
|
|
case "$state" in
|
|
(cmds)
|
|
cmds=(
|
|
"version:Prints Gas's version"
|
|
"use:Uses author"
|
|
"show:Shows your current user"
|
|
"list:Lists your authors"
|
|
"import:Imports current user to gasconfig"
|
|
"help:Describe available tasks or one specific task"
|
|
"delete:Deletes author"
|
|
"add:Adds author to gasconfig"
|
|
)
|
|
_describe -t commands 'gas command' cmds && ret=0
|
|
;;
|
|
(args)
|
|
case "$line[1]" in
|
|
(use|delete)
|
|
_values -S , 'authors' $(cat ~/.gas | sed -n -e 's/^\[\(.*\)\]/\1/p') && ret=0
|
|
;;
|
|
esac
|
|
;;
|
|
esac
|
|
|
|
return ret
|
|
|