36 lines
989 B
Plaintext
36 lines
989 B
Plaintext
|
#compdef tmuxinator
|
||
|
#autoload
|
||
|
|
||
|
local curcontext="$curcontext" state line ret=1
|
||
|
local -a _configs
|
||
|
|
||
|
_arguments -C \
|
||
|
'1: :->cmds' \
|
||
|
'2:: :->args' && ret=0
|
||
|
|
||
|
case $state in
|
||
|
cmds)
|
||
|
_values "tmuxinator command" \
|
||
|
"start[start a tmux session using project's tmuxinator config]" \
|
||
|
"open[create a new project file and open it in your editor]" \
|
||
|
"copy[copy source_project project file to a new project called new_project]" \
|
||
|
"delete[deletes the project called project_name]" \
|
||
|
"implode[deletes all existing projects!]" \
|
||
|
"list[list all existing projects]" \
|
||
|
"doctor[look for problems in your configuration]" \
|
||
|
"help[shows this help document]" \
|
||
|
"version[shows tmuxinator version number]"
|
||
|
ret=0
|
||
|
;;
|
||
|
args)
|
||
|
case $line[1] in
|
||
|
start|open|copy|delete)
|
||
|
_configs=(`tmuxinator list | sed -n 's/^[ \t]\+//p'`)
|
||
|
_values 'configs' $_configs
|
||
|
ret=0
|
||
|
;;
|
||
|
esac
|
||
|
;;
|
||
|
esac
|
||
|
|
||
|
return ret
|