remux/README.md
2024-02-19 19:39:35 -05:00

71 lines
1.6 KiB
Markdown

# ReMux: a friendlier tmux wrapper
Pronounced \[ ɹ̠i məks \], like "remix."
A tmux wrapper and command shortener written in Rust. ReMux's
goal is to wrap tmux commands to be both shorter, and oriented
around session names instead of session IDs.
In their shortest forms, *every* ReMux command is as short or
shorter than its equivalent tmux command:
```sh
# new session
tmux new-session -t foo
remux n foo
# lists
tmux ls
remux l
remux
# attach
tmux a -t foo
remux a foo
# has
tmux has -t foo
remux has foo
# detach
tmux detach-client -t foo
remux d foo
# nesting sessions with '-n' flag
TMUX='' tmux a -t foo
remux a -n foo
TMUX='' tmux new-session -t foo
remux n -n foo
```
## Dependencies
ReMux depends on [tmux](https://github.com/tmux/tmux).
## Installation
### From Binary
Copy the compiled binary from the [releases page](https://git.vwolfe.io/valerie/remux/releases)
to a directory in `$PATH`, such as `/usr/bin/`.
### From Source
Compile using cargo with the command `cargo build --release` and copy the file
from `target/release/` to a directory in `$PATH`, such as `/usr/bin/`.
### Arch Linux (AUR)
Install the package from the [`remux` AUR Package](https://aur.archlinux.org/packages/remux),
either using an AUR package manager, or by cloning the [AUR Repository](https://aur.archlinux.org/remux.git)
and running the command `makepkg --install`.
## Libraries
- [pico-args](https://crates.io/crates/pico_args) — argument parsing
- [termion](https://crates.io/crates/termion) — ANSI formatting
- [tmux_interface](https://crates.io/crates/tmux_interface) — tmux communication