Monday, April 15, 2019

tmux session manager --- tmuxp

不知不覺中,我開發 web application 的時候,會需要用 tmux 開啟多個背景視窗。比方說,一個用來啟動 frontend 的 npm run start 。另一個用來啟動 clojure 的 lein repl 。每次都要重複下一些固定的指令,也滿煩人的。所幸,早就有工具來處理我遇到的問題 --- tmux session manager。

我安裝的是 python 版本的,因為我在 ubuntu 上安裝 ruby/gem 並沒有想象中的好裝,我二話不說看看有沒有 python 或是 nodejs 版的。結果實驗的結果是 python 的 tmuxp 最容易安裝。

安裝好 tmuxp 之後,前前後後就是用到二個 tmuxp 的指令 :
1. 先用傳統的老方法,手動把 tmux session 建立起來,並且切割視窗,跑不同的程式。
然後,下一個指令,把現在的 tmux session 寫到檔案裡, 記得把檔案存到 ~/.tmuxp/ 資料夾下,之後會比較簡單。
tmuxp freeze session-name

2. 之後,對 freezing 完的 yaml 檔做一些適當的修改。要再啟動時,下一個指令
tmuxp load session-name