# pane.Pane.split

- **Module:** pane.Pane
- **Package:** libtmux
- **Language:** Rust
- **Kind:** method
- **Source:** https://github.com/libtmux/libtmux-rs/blob/8a648c0894dfffc9303583f753b6c8ae01f2fe76/crates/libtmux/src/pane.rs#L427
- **Page:** https://libtmux.org/reference/rs/pane-pane-split/

```
pane.Pane.split(self, options: impl Into<crate::SplitOptions>) -> Result<Self, Error>
```

Split this pane, putting a new one beside it.

[`Window::split`] divides whichever pane is active; this divides the
one you name, which is what building a layout needs.

# Errors

Returns an error when tmux refuses the split, which includes a pane
too small to divide.

## Example

```rust
use libtmux::{PaneSize, SplitDirection, SplitOptions};

let session = server.new_session("split-from-pane").await?;
let pane = session.panes().await?.remove(0);

let above = pane
    .split(
        SplitOptions::new(SplitDirection::Above)
            .size(PaneSize::Percent(30))
            .command("sleep 300"),
    )
    .await?;

assert_ne!(above.id(), pane.id());
assert_eq!(above.window_id(), pane.window_id());
```
