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

Pane configuration

Edit this page on GitHub

LibTmux.Workspace 0.0.0-alpha.14 · Source

tmuxp compatibility reference. Examples using tmuxp run the Python reference. Local CLI status describes this port’s implemented coverage.

A pane can be a command string, a list of commands, or a mapping of settings. Each item in the window’s "panes" list creates one pane; a command list inside that item describes several commands in that same pane.

The native .NET CLI creates panes in configuration order. This also holds for windows with three or more panes: each new split follows the preceding pane. pane-base-index changes their starting index; focus: true selects a configured pane without changing creation order. Layouts determine the final geometry. See the native load source.

session_name: pane-example
start_directory: ./
windows:
- window_name: main
start_directory: ./
panes:
- echo one command
- [echo first command, echo second command]
- shell_command:
- echo configured pane
start_directory: ./
focus: true
- blank

Blank formsLink to section

Form inside "panes"Reference interpretation
null, omitted YAML value, blank, or "pane"Pane without its own commands
Empty mapping or empty listExpands to a pane without its own commands
Mapping with no shell_commandKeeps the pane’s other settings and uses no own commands
shell_command: null or a single null commandNo own commands
Empty string ""Sends an empty command, normally pressing Enter

A blank pane can still receive inherited before commands. Blank forms do not disable session/window/pane setup. An omitted window panes key is defaulted to one blank pane; an explicitly empty panes list is a different shape and should not be used as a portable way to request that default.

Pane keysLink to section

KeyMeaning
shell_commandString, ordered command list, or supported command dictionaries
shell_command_beforeSetup prepended after session/window before commands
start_directoryPane directory override
"shell"Shell/application launched for this pane
focusSelect this pane in its window
"environment"Environment map selected for this pane’s launch
"suppress_history"Pane history policy override
"enter"Default for whether to submit each command
sleep_before, sleep_afterDefault delays in seconds around each command

Launch a shell or type commandsLink to section

"shell" chooses the process tmux starts in the pane. shell_command sends text into the process already running there. Launching an application through shell can work with tmux’s remain-on-exit behavior, while typing that application’s name into a shell has different process semantics.

A pane shell overrides window_shell, including on the first pane. The first pane also supplies its directory and environment during window creation. Use an installed shell/application path rather than assuming the same executable exists on every host.

A successful build confirms command delivery, not application readiness or command exit status. See commands for Enter, timing, and history, and environment for launch-map selection.

Current .NET builderLink to section

Pane values support the package’s command and directory shapes. The full set of tmuxp shorthand, shell, environment, and command-mapping forms is not accepted.

See the native builder behavior and configuration source before using these fields through application code.

Reference sourceLink to section

loader.py; classic.py; blank-panes.yaml; pane-shell.yaml.

Esc

Type to search.