# libtmux.Server.search_panes

- **Module:** libtmux
- **Package:** libtmux
- **Language:** Python
- **Kind:** method
- **Source:** https://github.com/tmux-python/libtmux/blob/38e368c11117fb4aeb2f082d552cd4f210eae06a/src/libtmux/server.py#L2609
- **Page:** https://libtmux.org/en/py/stable/reference/libtmux-server-search_panes/

```
libtmux.Server.search_panes(
    self, filter: str | None = None, # noqa: A002
) -> QueryList[Pane]
```

All panes across the server, optionally filtered by tmux.

Like :attr:`Server.panes` but with a ``filter`` kwarg passed to
[`$ tmux list-panes -a -f <filter>`](/en/tmux/latest/manual/list-panes/). tmux drops non-matching panes
before libtmux builds objects.

## Examples

```python
>>> sess = server.new_session(session_name='gap7_pane_demo')
>>> window = sess.active_window
>>> target_pane = window.split()
>>> matches = server.search_panes(
...     filter=f'#{{m:{target_pane.pane_id},#{{pane_id}}}}'
... )
>>> [p.pane_id for p in matches] == [target_pane.pane_id]
True
```

## Parameters

- `filter` (`str | None`): tmux format expression (``-f`` flag). Example:
``'#{m:%5,#{pane_id}}'`` (id match) or
``'#{C/i:libtmux,#{pane_current_command}}'`` (case-insensitive
substring on the current command).
tmux silently expands a malformed filter (unclosed
``#{...}``, unknown format token) to empty, which the
filter treats as false — every row is suppressed and no
stderr is emitted. A bad filter is
indistinguishable from "filter matched nothing"; verify
filter syntax against the FORMATS section of ``tmux(1)``. Warning: (added 0.57)
- `# noqa: A002`

## In other ports

### Filter every pane with a tmux expression

- Ruby: [`LibTmux::Server#search_panes`](/en/ruby/latest/reference/libtmux-server-search_panes/) (method)
- Lua: [`libtmux.Server:query_panes`](/en/lua/latest/reference/libtmux-server-query_panes/) (method)
- Go: [`tmux.Server.SearchPanes`](/en/go/latest/reference/tmux-server-searchpanes/) (method)
- C#: [`LibTmux.Server.SearchPanesAsync`](/en/csharp/latest/reference/libtmux-server-searchpanesasync/) (method)
