#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