Workspace ManagerconceptInternals

Choose documentation 3

latest

Current version

latest
English

Early release libtmux is released, and its APIs may still change between releases. This site's structure and URLs may change too.

Edit this page on GitHub

Rust workspace internals

tmux-workspace 0.1.2 · Source

Build and inspect tmux sessions from application code with the workspace library. To load files from a terminal, start with the native CLI walkthrough.

Builder pipeline

Workspace::from_yaml parses the description. WorkspaceBuilder turns it into a command plan or builds a new session through a borrowed Server. freeze reads a session back into workspace data. The caller supplies file reading, the async runtime, command-line handling, and attachment.

Read the implementation

  • Guides show builder setup and application code.
  • Topics explain configuration, behavior, and failures.
  • Examples exercise the builder through the language API.
  • API links the configuration and construction interfaces.

Implementation scope

tmux-workspace creates a tmux session from a YAML description. The crate uses the public libtmux API and returns a typed session handle. A separate freeze operation records an existing session as workspace data.

Building creates a new session. It refuses an already existing session with the requested name, so repeated builds require a new name or explicit cleanup.

Package and runtime

Add tmux-workspace separately from the core crate. Workspace creation and freezing are asynchronous and require a running Tokio runtime and tmux on the host. Releases are numbered 0.1.N and any release may change the API, so pin an exact version.

The parser records unknown keys in unsupported_keys. Review those lists before building: an unrecognized field does not configure the created session.

Crate documentation

Esc

Type to search.

Reference previewOpen reference