# tmux.SplitPaneRequest

- **Module:** tmux
- **Package:** github.com/libtmux/libtmux-go/tmux
- **Language:** Go
- **Kind:** struct
- **Source:** https://github.com/libtmux/libtmux-go/blob/5f808882015a975a65acc7f9da5b3ff0d5cbdc91/tmux/pane_create.go#L67
- **Page:** https://libtmux.org/reference/go/tmux-splitpanerequest/

SplitPaneRequest configures tiled pane creation on tmux 3.2a or later. Its zero value creates a detached pane below the exact target with tmux's default size and command. Nil pointer fields omit their options; nonnil pointers are explicit, including empty style or message strings. Size and Percentage are mutually exclusive. Invalid values are rejected before tmux is mutated.

Methods copy pointer and map values before I/O; concurrent mutation is unsafe.
Empty, styles, Message, and Keep require tmux 3.7 and follow
[UnsupportedPolicy]. Empty and Command conflict only when Empty is supported.

## Members

- `Attach` (attribute) — Attach lets the created pane become active in the exact target winlink; false preserves its active pane.
- `Direction` (attribute) — Direction selects the side of the target; zero means below.
- `Size` (attribute) — Size selects a nonnegative absolute pane size; nil omits it.
- `Percentage` (attribute) — Percentage selects a size from 0 through 100; nil omits it. It is sent as tmux's "-l N%", which every supported version accepts; the older -p spelling is rejected by tmux 3.4.
- `StartDirectory` (attribute) — StartDirectory expands ~ and ~/... for the current user. Named-user forms such as ~other are rejected; empty inherits tmux's default.
- `Command` (attribute) — Command starts the pane with this shell command; empty uses tmux's default.
- `FullWindow` (attribute) — FullWindow lets the new pane span the full window size.
- `Zoom` (attribute) — Zoom preserves the window's zoomed state after the split.
- `Environment` (attribute) — Environment is emitted in lexically sorted key order and is not retained; nil and an empty map both add no entries.
- `Empty` (attribute) — Empty requests an empty pane on tmux 3.7 or later.
- `Style` (attribute) — Style sets the pane style on tmux 3.7 or later; nil omits it.
- `ActiveBorderStyle` (attribute) — ActiveBorderStyle sets the active border style on tmux 3.7 or later; nil omits it.
- `InactiveBorderStyle` (attribute) — InactiveBorderStyle sets the inactive border style on tmux 3.7 or later; nil omits it.
- `Message` (attribute) — Message sets the pane message on tmux 3.7 or later; nil omits it.
- `Keep` (attribute) — Keep preserves the pane after its command exits on tmux 3.7 or later.
