tmuxp, tmux session manager. built on libtmux.
New to tmux? Pre-order a copy of my new book The Tao of tmux. Scheduled for release this December.
Load tmux sessions via json and YAML, tmuxinator and teamocil style.
session_name: 4-pane-split
windows:
- window_name: dev window
layout: tiled
shell_command_before:
- cd ~/ # run as a first command in all panes
panes:
- shell_command: # pane no. 1
- cd /var/log # run multiple commands in this pane
- ls -al | grep \.log
- echo second pane # pane no. 2
- echo third pane # pane no. 3
- echo forth pane # pane no. 4Save as mysession.yaml. And load:
$ tmuxp load ./mysession.yamlSessions in ~/.tmuxp/ can use names:
$ tmuxp load mysessionProjects with .tmuxp.yaml or .tmuxp.json load via directory:
$ tmuxp load path/to/my/project/Load multiple at once (in bg, offer to attach last):
$ tmuxp load mysession ./another/project/simple, very elaborate config examples
Store configs in (~/.tmuxp) or include in your project as
~/.tmuxp.{yaml,json}. See author's tmuxp configs and the
the projects' tmuxp.yaml.
bootstrap project dependencies before loading tmux. See the bootstrap_env.py and before_script example
Load sessions in the background by passing -d flag
snapshot your tmux layout, pane paths, and window/session names.
$ tmuxp freeze SESSION_NAMESee more about freezing tmux sessions.
See the Quickstart.
Documentation homepage (also in 中文)
Want to learn more about tmux itself? Read The Tao of Tmux online.

