# LibTmux.Window.panes/2

- **Module:** LibTmux
- **Package:** libtmux
- **Language:** Elixir
- **Kind:** function
- **Source:** https://github.com/libtmux/libtmux-elixir/blob/66b9b1c3f3f3186428abdfda2c76f5cf87446710/lib/libtmux/entities.ex#L130
- **Page:** https://libtmux.org/en/elixir/latest/reference/libtmux-window-panes-2/

```
panes(snapshot, window)
@spec panes(LibTmux.Snapshot.t(), t()) :: [LibTmux.Pane.t()]
```

Returns a plain list of captured physical panes in numeric pane-ID order.

Uses the supplied snapshot and validates the window's ID and incarnation.
Identity, coverage, empty-list and no-I/O behavior follow
`LibTmux.Session.windows/2`.

## Examples

```elixir
iex> alias LibTmux.{Snapshot, Window}
iex> rows = %{window: [%{id: "@0"}], pane: [
...>   %{id: "%10", window_id: "@0"}, %{id: "%2", window_id: "@0"}]}
iex> {:ok, snapshot} = Snapshot.new(rows,
...>   server_instance: "example", captured_from: 0, captured_until: 0,
...>   complete: [:pane], fields: %{pane: [:window_id]})
iex> {:ok, window} = Snapshot.fetch(snapshot, :window, "@0")
iex> Window.panes(snapshot, window) |> Enum.map(& &1.id)
["%2", "%10"]
```

## Parameters

- `snapshot` (`LibTmux.Snapshot.t()`)
- `window` (`t()`)
