Skip to content

Commit 0cf7243

Browse files
committed
docs(CHANGES): Add 1.68.0 release notes for parity features
why: Document all new features and fixes landing in the parity branch. what: - New commands: stop, new, copy, delete - Lifecycle hooks, config templating, new config keys - New load flags, importer improvements, bug fixes
1 parent ffd44fc commit 0cf7243

1 file changed

Lines changed: 89 additions & 4 deletions

File tree

β€ŽCHANGESβ€Ž

Lines changed: 89 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,96 @@ $ pipx install \
3333

3434
## tmuxp 1.68.0 (Yet to be released)
3535

36-
<!-- To maintainers and contributors: Please add notes for the forthcoming version below -->
36+
### New commands
3737

38-
<!-- KEEP THIS PLACEHOLDER - DO NOT REMOVE OR MODIFY THIS LINE -->
39-
_Notes on the upcoming release will go here._
40-
<!-- END PLACEHOLDER - ADD NEW CHANGELOG ENTRIES BELOW THIS LINE -->
38+
#### `tmuxp stop` β€” kill a tmux session
39+
Stop (kill) a running tmux session by name. Runs the `on_project_stop`
40+
lifecycle hook before killing the session, giving your project a chance
41+
to clean up.
42+
43+
```console
44+
$ tmuxp stop mysession
45+
```
46+
47+
#### `tmuxp new` β€” create a workspace config
48+
Create a new workspace configuration file from a minimal template and
49+
open it in `$EDITOR`.
50+
51+
```console
52+
$ tmuxp new myproject
53+
```
54+
55+
#### `tmuxp copy` β€” copy a workspace config
56+
Copy an existing workspace config to a new name. Source is resolved
57+
using the same logic as `tmuxp load`.
58+
59+
```console
60+
$ tmuxp copy myproject myproject-backup
61+
```
62+
63+
#### `tmuxp delete` β€” delete workspace configs
64+
Delete one or more workspace config files. Prompts for confirmation
65+
unless `-y` is passed.
66+
67+
```console
68+
$ tmuxp delete old-project
69+
```
70+
71+
### Lifecycle hooks
72+
Workspace configs now support four lifecycle hooks, matching tmuxinator's
73+
hook system:
74+
75+
- `on_project_start` β€” runs before session build (every invocation)
76+
- `on_project_restart` β€” runs when reattaching to an existing session
77+
- `on_project_exit` β€” runs on client detach (via tmux `client-detached` hook)
78+
- `on_project_stop` β€” runs before `tmuxp stop` kills the session
79+
80+
### Config templating
81+
Workspace configs now support Jinja2-style `{{ variable }}` placeholders.
82+
Pass values via `--set KEY=VALUE` on the command line:
83+
84+
```console
85+
$ tmuxp load --set project=myapp mytemplate.yaml
86+
```
87+
88+
### New config keys
89+
- **`enable_pane_titles`** / **`pane_title_position`** / **`pane_title_format`** β€”
90+
session-level keys that enable tmux pane border titles.
91+
- **`title`** β€” pane-level key to set individual pane titles via
92+
`select-pane -T`.
93+
- **`synchronize`** β€” window-level shorthand (`before` / `after` / `true`)
94+
that sets `synchronize-panes` without needing `options_after`.
95+
- **`shell_command_after`** β€” window-level key; commands sent to every pane
96+
after the window is fully built.
97+
- **`clear`** β€” window-level boolean; sends `clear` to every pane after
98+
commands complete.
99+
100+
### New `tmuxp load` flags
101+
- `--here` β€” reuse the current tmux window instead of creating a new session.
102+
- `--no-shell-command-before` β€” skip all `shell_command_before` entries.
103+
- `--debug` β€” show tmux commands as they execute (disables progress spinner).
104+
- `--set KEY=VALUE` β€” pass template variables for config templating.
105+
106+
### Importer improvements
107+
#### tmuxinator
108+
109+
- Map `pre` β†’ `on_project_start`, `pre_window` β†’ `shell_command_before`.
110+
- Parse `cli_args` (`-f`, `-S`, `-L`) into tmuxp equivalents.
111+
- Convert `synchronize` window key.
112+
- Convert `startup_window` / `startup_pane` β†’ `focus: true`.
113+
- Convert named panes (hash-key syntax) β†’ `title` on the pane.
114+
115+
#### teamocil
116+
117+
- Support v1.x format (`windows` at top level, `commands` key in panes).
118+
- Convert `focus: true` on windows and panes.
119+
- Pass through window `options`.
120+
121+
### Bug fixes
122+
123+
- Only fire `on_project_start` hook when load actually proceeds (not on
124+
cancellation).
125+
- Only fire `on_project_restart` after the user confirms reattach.
41126

42127
## tmuxp 1.67.0 (2026-03-08)
43128

0 commit comments

Comments
Β (0)