@jx0/jmux 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -28
- package/package.json +1 -1
- package/src/main.ts +3 -1
package/README.md
CHANGED
|
@@ -64,43 +64,44 @@ Your tmux is unmodified. Sessions, windows, panes, keybindings — all unchanged
|
|
|
64
64
|
- Green `▎` left marker — active session
|
|
65
65
|
- Green `●` dot — new output since you last viewed that session
|
|
66
66
|
- Orange `!` flag — attention needed (set programmatically)
|
|
67
|
-
- Blue highlight — sidebar navigation mode (prefix + j)
|
|
68
67
|
|
|
69
68
|
## Installation
|
|
70
69
|
|
|
70
|
+
```bash
|
|
71
|
+
# Install globally
|
|
72
|
+
bun install -g @jx0/jmux
|
|
73
|
+
|
|
74
|
+
# Run
|
|
75
|
+
jmux
|
|
76
|
+
```
|
|
77
|
+
|
|
71
78
|
### Requirements
|
|
72
79
|
|
|
73
80
|
- [Bun](https://bun.sh) 1.2+
|
|
74
81
|
- [tmux](https://github.com/tmux/tmux) 3.2+
|
|
75
|
-
- [fzf](https://github.com/junegunn/fzf) (for new session modal
|
|
82
|
+
- [fzf](https://github.com/junegunn/fzf) (for new session modal)
|
|
76
83
|
- [git](https://git-scm.com/) (optional, for branch display)
|
|
77
84
|
|
|
78
|
-
###
|
|
85
|
+
### Usage
|
|
79
86
|
|
|
80
87
|
```bash
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
bun install
|
|
84
|
-
```
|
|
88
|
+
# Start jmux (creates or attaches to default session)
|
|
89
|
+
jmux
|
|
85
90
|
|
|
86
|
-
|
|
91
|
+
# Start with a named session
|
|
92
|
+
jmux my-project
|
|
87
93
|
|
|
88
|
-
|
|
89
|
-
|
|
94
|
+
# Use a separate tmux server (won't touch your existing sessions)
|
|
95
|
+
jmux -L work
|
|
90
96
|
```
|
|
91
97
|
|
|
92
|
-
|
|
98
|
+
### From Source
|
|
93
99
|
|
|
94
100
|
```bash
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
To run jmux on a separate tmux server (keeps your existing tmux sessions untouched):
|
|
101
|
-
|
|
102
|
-
```bash
|
|
103
|
-
bun run bin/jmux -L jmux
|
|
101
|
+
git clone https://github.com/jarredkenny/jmux.git
|
|
102
|
+
cd jmux
|
|
103
|
+
bun install
|
|
104
|
+
bun run bin/jmux
|
|
104
105
|
```
|
|
105
106
|
|
|
106
107
|
## New Session Modal
|
|
@@ -124,14 +125,6 @@ The session is created in the selected directory and the sidebar updates immedia
|
|
|
124
125
|
| `Ctrl-a n` | New session (directory picker + name) |
|
|
125
126
|
| Click sidebar | Switch to that session |
|
|
126
127
|
|
|
127
|
-
### Sidebar Mode (`Ctrl-a j` to enter)
|
|
128
|
-
|
|
129
|
-
| Key | Action |
|
|
130
|
-
|-----|--------|
|
|
131
|
-
| `j` / `k` / arrows | Move highlight |
|
|
132
|
-
| `Enter` | Switch to highlighted session |
|
|
133
|
-
| `Escape` | Exit sidebar mode |
|
|
134
|
-
|
|
135
128
|
### Windows
|
|
136
129
|
|
|
137
130
|
| Key | Action |
|
package/package.json
CHANGED
package/src/main.ts
CHANGED
|
@@ -367,7 +367,9 @@ async function start(): Promise<void> {
|
|
|
367
367
|
// Start control mode
|
|
368
368
|
await control.start({ socketName, configFile });
|
|
369
369
|
|
|
370
|
-
//
|
|
370
|
+
// Re-apply our config to the running server — handles the case where
|
|
371
|
+
// we attached to an existing server that loaded ~/.tmux.conf
|
|
372
|
+
await control.sendCommand(`source-file ${configFile}`);
|
|
371
373
|
|
|
372
374
|
// Fetch initial sessions, then resolve client name (needs sessions list)
|
|
373
375
|
await fetchSessions();
|