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.

.. image:: https://travis-ci.org/tony/tmuxp.png?branch=master
:target: https://travis-ci.org/tony/tmuxp

.. image:: https://badge.fury.io/py/tmuxp.png
:target: http://badge.fury.io/py/tmuxp

.. figure:: https://raw.github.com/tony/tmuxp/master/doc/_static/tmuxp-dev-screenshot.png
:scale: 100%
:width: 65%
:align: center

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``:

.. code-block:: bash

$ pip install tmuxp


See: `Quickstart`_

CLI Commands
""""""""""""

========================== ===============================================
``tmuxp attach-session`` ``<session_name>``
tmuxp uses ``switch-client`` if already inside
tmux client.
``tmuxp kill-session`` ``<session name>``
``tmuxp freeze`` ``<session name>``
``tmuxp load`` ``<file>``
Load a workspace yaml / json file.
If session already made, will offer to attach.
``tmuxp convert`` ``<file>``
Convert session yaml / json.
``tmuxp import`` ``[teamocil | tmuxinator]`` ``<file>``
Import a `teamocil`_ or `tmuxinator`_ config.
========================== ===============================================

Bash completion
"""""""""""""""

For bash, ``.bashrc``:

.. code-block:: bash

$ source tmuxp.bash

For tcsh, ``.tcshrc``:

.. code-block:: bash

$ complete tmuxp 'p/*/`tmuxp.tcsh`/'

For zsh, ``.zshrc``:

.. code-block:: bash

$ source tmuxp.zsh

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

Mini Quickstart
"""""""""""""""

See the full `Quickstart`_ in the documentation.

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

.. code-block:: bash

$ tmuxp load .

Load ``myconfig.yaml`` from ``~/.tmuxp``

.. code-block:: bash

$ tmuxp load myconfig.yaml

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

.. code-block:: bash

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

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

.. code-block:: yaml

session_name: 2-pane-vertical
windows:
- window_name: my test window
panes:
- pwd
- pwd

.. code-block:: bash

$ tmuxp load test.yaml

or ``~/.tmuxp/test.json``:

.. code-block:: json

{
"windows": [
{
"panes": [
"pwd",
"pwd"
],
"window_name": "my test window"
}
],
"session_name": "2-pane-vertical"
}

.. code-block:: bash

$ 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 .. code-block:: bash

$ git clone https://github.com/tony/tmuxp.git
install dev .. code-block:: bash

$ 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 .. code-block:: bash

$ python ./run_tests.py
============== ==========================================================

.. _BSD: http://opensource.org/licenses/BSD-3-Clause
.. _developing and testing: http://tmuxp.readthedocs.org/en/latest/developing.html
.. _Examples: http://tmuxp.readthedocs.org/en/latest/examples.html
.. _Quickstart: http://tmuxp.readthedocs.org/en/latest/quickstart.html
.. _installing bash completion: http://tmuxp.readthedocs.org/en/latest/quickstart.html#bash-completion
.. _Developing and Testing: http://tmuxp.readthedocs.org/en/latest/developing.html
.. _tmuxinator: https://github.com/aziz/tmuxinator
.. _teamocil: https://github.com/remiprev/teamocil
.. _abstraction layer: http://en.wikipedia.org/wiki/Abstraction_layer
.. _ORM: http://tmuxp.readthedocs.org/en/latest/quickstart.html#tmux-orm
.. _tmux(1): http://tmux.sourceforge.net/
.. _Issues tracker: https://github.com/tony/tmuxp/issues
.. _python dict: http://docs.python.org/2/library/stdtypes.html#dict

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.28.tar.gz (56.0 kB view details)

Uploaded Source

File details

Details for the file tmuxp-0.0.28.tar.gz.

File metadata

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

File hashes

Hashes for tmuxp-0.0.28.tar.gz
Algorithm Hash digest
SHA256 076ab9e02790771193b9906521deff58fa2305ddcc5f695d5c02004a17afe826
MD5 193897460963207efc5c998a76545174
BLAKE2b-256 a6e24d2acdd12925e86c487e688b447b0db1c1e335221a76fb3096b64a1adc32

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