- commit
- 595690f
- parent
- fd0874e
- author
- Eric Bower
- date
- 2026-02-19 20:07:05 -0500 EST
docs: readme
1 files changed,
+15,
-0
+15,
-0
1@@ -82,6 +82,9 @@ zmx attach mux dvtm # run a multiplexer inside zmx
2 zmx run dev cat README.md # run the command without attaching to the session
3 zmx r dev cat CHANGELOG.md # alias
4 echo "ls -lah" | zmx r dev # use stdin to run the command
5+
6+zmx r tests go test ./... # run your tests in the background
7+zmx wait tests # waits for tests to complete
8 ```
9
10 ## shell prompt
11@@ -182,6 +185,18 @@ if type -q zmx
12 end
13 ```
14
15+## session prefix
16+
17+We allow users to set an environment variable `ZMX_SESSION_PREFIX` which will prefix the name of the session for all commands. This means if that variable is set, every command that accepts a session will be prefixed with it.
18+
19+```bash
20+export ZMX_SESSION_PREFIX="d."
21+zmx a runner # ZMX_SESSION=d.runner
22+zmx a tests # ZMX_SESSION=d.tests
23+zmx k tests # kills d.tests
24+zmx wait # suspends until all tasks prefixed with "d." are complete
25+```
26+
27 ## philosophy
28
29 The entire argument for `zmx` instead of something like `tmux` that has windows, panes, splits, etc. is that job should be handled by your os window manager. By using something like `tmux` you now have redundant functionality in your dev stack: a window manager for your os and a window manager for your terminal. Further, in order to use modern terminal features, your terminal emulator **and** `tmux` need to have support for them. This holds back the terminal enthusiast community and feature development.