8 个版本
0.5.0 | 2024年4月2日 |
---|---|
0.4.0 | 2024年2月20日 |
0.3.12 |
|
0.3.9 | 2023年8月15日 |
0.3.6 | 2023年3月28日 |
#977 在 命令行工具
每月 120 次下载
74KB
1.5K SLoC
Rusmux - tmux 自动化
主要用于替换 tmuxinator,同时使用其 yaml 文件。
tmuxinator
是用 Ruby 编写的,各种包/gem 升级偶尔会使其损坏,使我不得不寻找修复方案。
此外,在缺少 Ruby 安装的各个服务器上安装它是一项繁琐的任务。
因此,rusmux 诞生了。我将其作为一个机会来
- 处理
tmuxinator
的现有.yml
项目文件。 - 提供我可以随意复制的单个二进制文件。
- 进一步加深我对 Rust 及其工具的了解。
示例
cat ~/.config/rusmux/demo.yml
project_name: demo # can also use name
project_root: ~/src/demo
on_project_start:
- sudo systemctl start postgresql
- sudo systemctl start mysqld
# on_project_stop:
pre_window:
- workon demo
- cd demo
windows:
- editor: vim
- shells:
layout: main-vertical
panes:
- #
- grunt serve
- remote-log: # name is meaningless, for multi commands
- ssh [email protected]
- cd /var/logs
- tail -f project.log
- mail: python -m smtpd -n -c DebuggingServer localhost:1025
安装
-
Arch Linux 用户可以从 AUR 安装 rusmux,例如(使用
paru
)paru -S rusmux
-
从 发布页面 获取编译后的二进制文件并将其放置在您的
$PATH
中。 -
使用
cargo
cargo install rusmux
命令
-
运行项目
rusmux [project]
或
rusmux run [project]
-
列出所有现有项目
rusmux list
-
输出项目的 shell 命令
rusmux debug [project]
-
编辑现有项目(应设置
$EDITOR
)rusmux edit [project]
-
停止项目的会话
rusmux stop [project]
-
删除现有项目(确认后)
rusmux delete [project]
-
创建新项目,并在编辑器中打开它(应设置
$EDITOR
)rusmux new [project]
这将从默认模板创建项目。要仅使用项目名称创建一个
rusmux new [project] --blank
-
复制现有项目到新项目并编辑它(应设置
$EDITOR
)rusmux copy [existing] [new]
-
检查您的环境以查找潜在问题
rusmux doctor
检查
tmux
是否在$PATH
和$SHELL
以及$EDITOR
中设置。
注意 在上述命令中,
project
、existing
和new
可以是
- 一个简单的名称,例如
my_project
、awesome_server
,这些名称将在配置目录中以yaml
扩展名创建。- 指向文件的路径(由扩展名和/或路径分隔符确定),例如
~/projects/my_project/session.yaml
。
依赖关系
~8–21MB
~256K SLoC