Quickstart¶
Installation¶
Assure you have at least tmux >= 1.8 and python >= 2.6.
$ pip install tmuxp
You can upgrade to the latest release with:
$ pip install tmuxp -U
Then install Completion.
CLI¶
See also
tmuxp launches workspaces / sessions from JSON and YAML files.
Configuration files can be stored in $HOME/.tmuxp
or in project
directories as .tmuxp.py
, .tmuxp.json
or .tmuxp.yaml
.
Every configuration is required to have:
session_name
- list of
windows
- list of
panes
for every window inwindows
Create a file, ~/.tmuxp/example.yaml
:
session_name: 2-pane-vertical
windows:
- window_name: my test window
panes:
- echo hello
- echo hello
$ tmuxp load example.yaml
This creates your tmuxp session.
Load multiple tmux sessions at once:
$ tmuxp load example.yaml anothersession.yaml
tmuxp will offer to switch-client
for you if you’re already in a
session. You can also load a configuration, and append the windows to
the current active session.
You can also have a custom tmuxp config directory by setting the
TMUX_CONFIGDIR
in your environment variables.
$ TMUXP_CONFIGDIR=$HOME/.tmuxpmoo tmuxp load cpython
Or in your ~/.bashrc
/ ~/.zshrc
you can set:
export TMUXP_CONFIGDIR=$HOME/.yourconfigdir/tmuxp
You can also Import configs teamocil and tmuxinator.
Pythonics¶
See also
libtmux python API documentation and Developing and Testing, About.
ORM - Object Relational Mapper
AL - Abstraction Layer
python abstraction layer¶
tmuxp python api | tmux(1) equivalent |
---|---|
libtmux.Server.new_session() |
$ tmux new-session |
libtmux.Server.list_sessions() |
$ tmux list-sessions |
libtmux.Session.list_windows() |
$ tmux list-windows |
libtmux.Session.new_window() |
$ tmux new-window |
libtmux.Window.list_panes() |
$ tmux list-panes |
libtmux.Window.split_window() |
$ tmux split-window |
libtmux.Pane.send_keys() |
$ tmux send-keys |