Teamocil - 一鍵自動分割視窗
2016-05-24 09:09:30

What

一個使用YAML當做設定可以自動讓tmux產生視窗與分割面版的工具。

Why

當你需要一次開多個視窗來做事情時,這個工具真的省事很多。

How

首先我本身是用iTerm2當做目前工作環境的console,而iTerm剛好也支援tmux的指令,所以teamocil就可以用嘍。基本上安裝完teamocil之後,可以在你的home目錄下建立teamocil的設定檔,範例如下:

.teamocil/my_workspace.yml
windows:
- name: workspace-01
  root: /Users/kait/workspace/rails/dev/my_project/
  layout: main-vertical
  panes:
    - rs -p 1234
    - guard
    - zs
- name: workspace-02
  root: /Users/kait/workspace/rails/dev/my_project/
  layout: even-horizontal
  panes:
    - zc
    - focus: true

有了上面的設定檔,當開啟iTerm時,下指令 teamocil my_workspace,這時候iTrem就會做下面的事情:

  • 開一個新的視窗,將工作目錄切到 /Users/kait/workspace/rails/dev/my_project/ ,分割成左邊一個,右邊上下兩個,共三個面版分別跑 rs -p 1234, guard, zs這三個指令。
  • 開另一個新的視窗,同樣將工作目錄切到 /Users/kait/workspace/rails/dev/my_project/ ,分割成上下兩個面版,上面跑 zc下面則維持terminal的畫面。

更多的layout與設定方式可以參考Teamocil的官網。

UPDATE

如果你的iTerm更新到3.0.0以上的版本,那可能要用brew裝itermocil。指令如下:

$ brew update
$ brew install TomAnthony/brews/itermocil

請參考 Support iTerm 3.0.0