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

Java workspace internals

Edit this page on GitHub

libtmux-workspace 0.0.1-alpha.12-SNAPSHOT · Source

These pages document the in-development workspace builder for contributors and applications that call its APIs. For workspace loading from a terminal, see tmuxp.

Builder pipelineLink to section

The public WorkspaceBuilder facade reads or parses YAML into immutable configuration records, then builds through a supplied core Server. Parsing and applying use separate package-private helpers. The caller owns command-line handling, attachment, and the server connection.

Read the implementationLink to section

  • 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 scopeLink to section

libtmux-workspace builds a new tmux session from a YAML description. It uses libtmux’s Java API and returns the session after capturing the completed window and pane structure.

The module supports a focused tmuxp subset: session names, windows, layouts, panes, and ordered shell commands. It rejects unknown configuration fields instead of accepting a larger file with missing behavior.

Package and runtimeLink to section

Use the io.github.libtmux:libtmux-workspace artifact with the libtmux BOM. The module targets Java 21 and requires tmux on the host for building. Parsing YAML does not create a session.

This module does not load Python plugins or implement tmuxp’s CLI. Use the Python workspace documentation when those features are required.

Module documentation

Esc

Type to search.