35 lines
847 B
Plaintext
35 lines
847 B
Plaintext
#compdef gas
|
|
|
|
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
|