Skip to main content

Manage tmux workspaces from JSON and YAML, pythonic API, shell completion

Project description

tmuxp solves the panes / pains of managing workspaces.

https://travis-ci.org/tony/tmuxp.png?branch=master https://badge.fury.io/py/tmuxp.png
https://raw.github.com/tony/tmuxp/master/doc/_static/tmuxp-dev-screenshot.png

Open to testers

tmuxp is still alpha code and needs a few more weeks until stable. See the Issues tracker to see known issues and for any other concerns.

Install

  • install tmux, at least version 1.8

  • libyaml is installed for your distribution.

Install tmuxp:

$ pip install tmuxp

See: Quickstart

CLI Commands

tmuxp uses switch-client for you if already in a TMUX client.

$ tmuxp attach-session<tab> # current sessions

Kill session

$ tmuxp kill-session<tab> # current sessions

Load a session configuration from a YAML or JSON file.

$ tmuxp load<tab> # configs in config dir, current directory

Convert a session config JSON <=> YAML:

$ tmuxp convert<tab> # configs in config dir, current directory

Experimental: Import configuration from teamocil or tmuxinator:

$ tmuxp import teamocil<tab> # configs in ~/.teamocil dir
$ tmuxp import tmuxinator<tab> # configs in ~/.tmuxinator dir

See installing bash completion to get bash, zsh and tcsh completion working on your machine.

load tmux sessions from yaml and json

Load from ~/.tmuxp.yaml or ~/.tmuxp.json in current directory.

$ tmuxp load .

Load myconfig.yaml from ~/.tmuxp

$ tmuxp load myconfig.yaml

Load a relative or full config file (bash complete supports this too)

$ tmuxp load ./myconfig.yaml
$ tmuxp load ../myconfig.yaml
$ tmuxp load /var/www/mywebproject/myconfig.yaml

$ mkdir ~/.tmuxp and make a file ~/.tmuxp/test.yaml.

session_name: 2-pane-vertical
windows:
  - window_name: my test window
    panes:
      - pwd
      - pwd
$ tmuxp load test.yaml

or ~/.tmuxp/test.json:

{
  "windows": [
    {
      "panes": [
        "pwd",
        "pwd"
      ],
      "window_name": "my test window"
    }
  ],
  "session_name": "2-pane-vertical"
}
$ tmuxp load test.json

See: Examples

tmux support

1.8, 1.9-dev

config support

yaml, json, python dict

Travis

http://travis-ci.org/tony/tmuxp

Docs

http://tmuxp.rtfd.org

API

http://tmuxp.readthedocs.org/en/latest/api.html

Changelog

http://tmuxp.readthedocs.org/en/latest/changes.html

Issues

https://github.com/tony/tmuxp/issues

Source

https://github.com/tony/tmuxp

pypi

https://pypi.python.org/pypi/tmuxp

License

BSD.

git repo

$ git clone https://github.com/tony/tmuxp.git

install dev

$ git clone https://github.com/tony/tmuxp.git tmuxp
$ cd ./tmuxp
$ virtualenv .env
$ source .env/bin/activate
$ pip install -e .

See the developing and testing page in the docs for more.

tests

$ python ./run_tests.py

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tmuxp-0.0.16-dev.tar.gz (52.5 kB view details)

Uploaded Source

File details

Details for the file tmuxp-0.0.16-dev.tar.gz.

File metadata

  • Download URL: tmuxp-0.0.16-dev.tar.gz
  • Upload date:
  • Size: 52.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for tmuxp-0.0.16-dev.tar.gz
Algorithm Hash digest
SHA256 49eabcc3160726ea1cf6537d5b654d92c77d362db3eae8b6ad36553cc54362ab
MD5 71b9e294557829ef17c464586d4c487b
BLAKE2b-256 60ffcf19b2d772d4214eddc1daec6c097d9bf10b799abc5509b2f5b37824862e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page