Core LibraryTopics

Choose documentation 3

latest

Current version

latest
English

Prerelease This site documents an alpha of libtmux. Its structure, URLs and APIs are subject to change.

Edit this page on GitHub

Architecture

A server handle selects a tmux server. Object IDs select sessions, windows, and panes within it. For the object hierarchy and stable IDs, start with Server, session, window, pane.

Calling operations

Session, window, and pane handles carry their ID and server context. Call an operation on the object you want to change. The examples below send input and kill that pane.

await pane.SendTextAsync("echo hi");
await pane.KillAsync();

Reading tmux fields

Object IDs become tmux targets (-t). Format variables (#{...}) provide the state returned by tmux.

Typed properties read a dictionary captured from tmux. A property throws IncompleteSnapshotException when the capture did not request its field. This differs from a captured field whose value is absent.

Source layout

src/LibTmux/ splits each entity into partial-class files by concern. For example, src/LibTmux/Pane.cs, src/LibTmux/Pane.Capture.cs, src/LibTmux/Pane.Input.cs, src/LibTmux/Pane.Relations.cs, src/LibTmux/Pane.Scopes.cs, and src/LibTmux/Pane.Topology.cs contribute to one Pane type. Options and Hooks views are reached through the object's properties.

Esc

Type to search.