From 7fe67cd83b0ad90755f5e34eb550131a5d2fcd12 Mon Sep 17 00:00:00 2001 From: James Walker Date: Mon, 29 Jul 2013 07:13:29 -0400 Subject: [PATCH] modify tmuxinator plugin slightly - better config detection and alias mux --- zsh/custom/plugins/tmuxinator/_tmuxinator | 36 +++++++++++++++++++ .../plugins/tmuxinator/tmuxinator.plugin.zsh | 1 + 2 files changed, 37 insertions(+) create mode 100644 zsh/custom/plugins/tmuxinator/_tmuxinator create mode 100644 zsh/custom/plugins/tmuxinator/tmuxinator.plugin.zsh diff --git a/zsh/custom/plugins/tmuxinator/_tmuxinator b/zsh/custom/plugins/tmuxinator/_tmuxinator new file mode 100644 index 0000000..1ccd125 --- /dev/null +++ b/zsh/custom/plugins/tmuxinator/_tmuxinator @@ -0,0 +1,36 @@ +#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 | awk "NR==2"`) + _values 'configs' $_configs + ret=0 + ;; + esac + ;; +esac + +return ret \ No newline at end of file diff --git a/zsh/custom/plugins/tmuxinator/tmuxinator.plugin.zsh b/zsh/custom/plugins/tmuxinator/tmuxinator.plugin.zsh new file mode 100644 index 0000000..b7b207d --- /dev/null +++ b/zsh/custom/plugins/tmuxinator/tmuxinator.plugin.zsh @@ -0,0 +1 @@ +compdef mux=tmuxinator