Welcome to thonmux’s documentation!¶
The thonmux library was designed to be a Python API to interact with tmux in a pythonic way.
Supported commands¶
- attach-session -
thonmux.Thonmux.attach_session()
- kill-pane -
thonmux.Thonmux.kill_pane()
- kill-window -
thonmux.Thonmux.kill_window()
- last-window -
thonmux.Thonmux.last_window()
- new-session -
thonmux.Thonmux.new_session()
- new-window -
thonmux.Thonmux.new_window()
- next-window -
thonmux.Thonmux.next_window()
- previous-window -
thonmux.Thonmux.previous_window()
- rename-session -
thonmux.Thonmux.rename_session()
- rename-window -
thonmux.Thonmux.rename_window()
- resize-pane -
thonmux.Thonmux.resize_pane()
- select-pane -
thonmux.Thonmux.select_pane()
- select-window -
thonmux.Thonmux.select_window()
- send-keys -
thonmux.Thonmux.send_keys()
- split-window -
thonmux.Thonmux.split_window()
There’s also a few convenience commands:
- next-pane -
thonmux.Thonmux.next_pane()
(selects the next pane under the tracked window)
- next-pane -
- previous-pane -
thonmux.Thonmux.previous_pane()
(selects the previous pane under the tracked window)
- previous-pane -
- toggle-zoom -
thonmux.Thonmux.toggle_zoom()
(zooms in/out of the tracked pane)
- toggle-zoom -
Quickstart¶
>>> from thonmux import Thonmux
>>> t = Thonmux()
>>> t.new_session('new-session', dettached=False)
>>> t.session
Session(name=new-session, creation=2015-06-07 18:43:20, attached=True)
>>> t.new_window('new-window')
>>> t.session.windows
[Window(index=0, name=zsh, dimensions=[159x42], active=False), Window(index=1, name=new-window, dimensions=[159x42], active=True)]
>>> t.window
Window(index=1, name=new-window, dimensions=[159x42], active=True)
>>> t.rename_window('renamed-window')
>>> t.window
Window(index=1, name=renamed-window, dimensions=[159x42], active=True)
>>> t.session.windows
[Window(index=0, name=zsh, dimensions=[159x42], active=False), Window(index=1, name=renamed-window, dimensions=[159x42], active=True)]
>>> t.split_window()
>>> t.pane
Pane(index=1, dimensions=[159x20], active=True)
>>> t.send_keys('ls -la | grep .py')
...
Installation¶
$ pip install thonmux
FAQ¶
- Why use thonmux?
- thonmux makes things pythonic.
- Why not use something else, like tmuxp?
- tmuxp is a good project but sometimes it doesn’t attend to my expectations.
- How can I help?
- I found a bug, what do I do?
- Please notify it at https://github.com/ewilazarus/thonmux/issues
Contents: