Skip to content

Latest commit

 

History

History
188 lines (147 loc) · 3.57 KB

File metadata and controls

188 lines (147 loc) · 3.57 KB

(api)=

(reference)=

API Reference

libtmux's public API mirrors tmux's object hierarchy: {class}~libtmux.Server → {class}~libtmux.Session → {class}~libtmux.Window → {class}~libtmux.Pane. Attached terminals show up as {class}~libtmux.Client objects accessed off the server.

What do you want to do?

::::{grid} 1 2 2 2 :gutter: 2

:::{grid-item-card} Find a session, window, or pane? :link: libtmux.server :link-type: doc Use {meth}server.sessions.get() <libtmux._internal.query_list.QueryList.get>, {meth}session.windows.get() <libtmux._internal.query_list.QueryList.get>. :::

:::{grid-item-card} Send commands or keys to a terminal? :link: libtmux.pane :link-type: doc Use {meth}pane.send_keys() <libtmux.Pane.send_keys> and {meth}pane.enter() <libtmux.Pane.enter>. :::

:::{grid-item-card} Capture output from a pane? :link: libtmux.pane :link-type: doc Use {meth}pane.capture_pane() <libtmux.Pane.capture_pane>. :::

:::{grid-item-card} Write tests against tmux? :link: testing/index :link-type: doc Use the {doc}pytest plugin <testing/pytest-plugin/index> and test helpers. :::

::::

Core Objects

::::{grid} 1 1 2 2 :gutter: 2 2 3 3

:::{grid-item-card} Server :link: libtmux.server :link-type: doc Entry point. Manages sessions and executes raw tmux commands. :::

:::{grid-item-card} Session :link: libtmux.session :link-type: doc Manages windows within a tmux session. :::

:::{grid-item-card} Window :link: libtmux.window :link-type: doc Manages panes, layouts, and window operations. :::

:::{grid-item-card} Pane :link: libtmux.pane :link-type: doc Terminal instance. Send keys and capture output. :::

:::{grid-item-card} Client :link: libtmux.client :link-type: doc Attached terminal. Read read-only state, theme, termtype. :::

::::

Supporting Modules

::::{grid} 1 2 3 3 :gutter: 2 2 3 3

:::{grid-item-card} Common :link: libtmux.common :link-type: doc Base classes and command execution. :::

:::{grid-item-card} Neo :link: libtmux.neo :link-type: doc Dataclass-based query interface. :::

:::{grid-item-card} Engine :link: libtmux.engines :link-type: doc How tmux commands are executed, and how to swap that out. :::

:::{grid-item-card} Options :link: libtmux.options :link-type: doc tmux option get/set. :::

:::{grid-item-card} Hooks :link: libtmux.hooks :link-type: doc tmux hook management. :::

:::{grid-item-card} Constants :link: libtmux.constants :link-type: doc Format strings and constants. :::

:::{grid-item-card} Exceptions :link: libtmux.exc :link-type: doc Exception hierarchy. :::

::::

Testing

::::{grid} 1 1 1 1 :gutter: 2

:::{grid-item-card} Testing Utilities :link: testing/index :link-type: doc {doc}pytest plugin <testing/pytest-plugin/index>, fixtures, and test helpers for testing code that uses libtmux. :::

::::

API Policy and Guarantees

These documents define the project's promises about the public API.

::::{grid} 1 2 3 3 :gutter: 2

:::{grid-item-card} Public API :link: ../project/public-api :link-type: doc What is and is not considered stable public API. :::

:::{grid-item-card} Compatibility :link: ../project/compatibility :link-type: doc Supported versions of Python and tmux. :::

:::{grid-item-card} Deprecations :link: ../project/deprecations :link-type: doc Active deprecations and migration guidance. :::

::::

:hidden:
:maxdepth: 1

Server <libtmux.server>
Session <libtmux.session>
Window <libtmux.window>
Pane <libtmux.pane>
Client <libtmux.client>
Common <libtmux.common>
Engine <libtmux.engines>
Neo <libtmux.neo>
Options <libtmux.options>
Hooks <libtmux.hooks>
Constants <libtmux.constants>
Exceptions <libtmux.exc>