之前由 tmuxinator 叛变到了 tmuxp, 但是不想 tmuxp 的打开速度奇慢无比,一个 8 个 window 的配置文件, 打开需要 5 秒以上,慢的不可思议。
于是今天借新建项目的机会,我又尝试了一个用 golang 实现的 tmux session 管理工具 - smug
smug 的中文意思是:
- adj. 自鸣得意的;自以为是的;整洁的
- n. 书呆子;自命不凡的家伙
我觉得可能是 session manager using go 的缩写吧,这样容易记忆。
smug 的优势
- 启动速度相比 tmuxp 这个渣渣快 N 倍,几乎秒开
- 配置相对 tmuxp 简洁太多
- 规避了对 ruby (tmuxinator) 和 python (tmuxp) 奇葩的版本依赖问题
唯一的缺点是名字不好记。
安装 smug
全局安装 smug
go install github.com/ivaaaan/smug@latest
需要指定版本号,或 latest 否则会报错:
go: 'go install' requires a version when current directory is not in a module
Try 'go install github.com/ivaaaan/smug@latest' to install the latest version
smug 被安装到了哪里
> ls $GOPATH/bin
asmfmt* errcheck* godef* golangci-lint* gomodifytags* gorename* guru* impl* motion* smug*
dlv* fillstruct* goimports* golint* gopls* gotags* iferr* keyify* office* staticcheck*
> echo $GOPATH
/home/zhongwei/golang
smug 的极简配置
相对 tmuxp 罗里吧嗦的配置,smug 可以做到很简洁,虽然比不上 tmuxinator 的极简,但是已经可以接受了。
例如, tools2.yml 的配置。
session: tools2
root: /mnt/d/work/tools2
windows:
- name: code
- name: ssh
常用命令
smug start xxx
smug stop xxx
微信关注我哦 👍
我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式