# LibTmux::Async::Server::query_panes

- **Module:** LibTmux::Async
- **Package:** LibTmux-Async
- **Language:** Perl
- **Kind:** method
- **Source:** https://github.com/libtmux/libtmux-perl/blob/352715a4fa66a96eed7763b90daaa536aa2f121d/packages/async/lib/LibTmux/Async/Server.pm#L68
- **Page:** https://libtmux.org/en/perl/latest/reference/libtmux-async-server-query_panes/

```
sub query_panes($self, %args)
```

See [`"query_panes" in LibTmux::Server`](/en/perl/latest/reference/libtmux-server-query_panes/) for arguments, returned value, and completion. Its observer runs inline in void context; a returned [Future](https://metacpan.org/pod/Future) is ignored. Cancellation before the decision suppresses it. If the observer cancels its query or calls [`"close"`](/en/perl/latest/reference/libtmux-async-server-close/), cancellation takes precedence over subsequent return or exception delivery. Continue driving the loop until close cleanup completes.

## Methods

## Parameters

- `args`

## tmux command

The tmux commands behind `query_panes`.

- [`display-message`](/en/tmux/latest/manual/display-message/) (daemon identity or target preflight)
- [`list-clients`](/en/tmux/latest/manual/list-clients/)
- [`list-panes`](/en/tmux/latest/manual/list-panes/) `-a` server scope, [`cmd_list_panes_server`](/en/tmux/latest/reference/c-function-cmd-list-panes-c-cmd_list_panes_server/) (source: `packages/async/lib/LibTmux/Async/Server.pm:42`)
- [`list-sessions`](/en/tmux/latest/manual/list-sessions/)
- [`list-windows`](/en/tmux/latest/manual/list-windows/) `-a` server scope, [`cmd_list_windows_exec`](/en/tmux/latest/reference/c-function-cmd-list-windows-c-cmd_list_windows_exec/) (source: `packages/async/lib/LibTmux/Async/Server.pm:42`)

## tmux C API

The C declarations in tmux that implement these commands.

- [`cmd_display_message_entry`](/en/tmux/latest/reference/c-variable-cmd_display_message_entry/) (attribute)
- [`cmd_display_message_exec`](/en/tmux/latest/reference/c-function-cmd-display-message-c-cmd_display_message_exec/) (function)
- [`cmd_list_clients_entry`](/en/tmux/latest/reference/c-variable-cmd_list_clients_entry/) (attribute)
- [`cmd_list_clients_exec`](/en/tmux/latest/reference/c-function-cmd-list-clients-c-cmd_list_clients_exec/) (function)
- [`cmd_list_panes_entry`](/en/tmux/latest/reference/c-variable-cmd_list_panes_entry/) (attribute)
- [`cmd_list_panes_server`](/en/tmux/latest/reference/c-function-cmd-list-panes-c-cmd_list_panes_server/) (function)
- [`cmd_list_sessions_entry`](/en/tmux/latest/reference/c-variable-cmd_list_sessions_entry/) (attribute)
- [`cmd_list_sessions_exec`](/en/tmux/latest/reference/c-function-cmd-list-sessions-c-cmd_list_sessions_exec/) (function)
- [`cmd_list_windows_entry`](/en/tmux/latest/reference/c-variable-cmd_list_windows_entry/) (attribute)
- [`cmd_list_windows_exec`](/en/tmux/latest/reference/c-function-cmd-list-windows-c-cmd_list_windows_exec/) (function)

## In other ports

Filter every pane with a tmux expression

| Language | Equivalent |
| --- | --- |
| Python | [`libtmux.Server.search_panes`](/en/py/latest/reference/libtmux-server-search_panes/) (method) |
| 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) |
| Haskell | No public Haskell equivalent is implemented; the current modules expose scalar values and version parsing. |
| TypeScript | no equivalent on `Server` |
| Rust | no equivalent on `Server` |
| Go | [`tmux.Server.SearchPanes`](/en/go/latest/reference/tmux-server-searchpanes/) (method) |
| Java | no equivalent on `Server` |
| C# | [`LibTmux.Server.SearchPanesAsync`](/en/csharp/latest/reference/libtmux-server-searchpanesasync/) (method) |
| C++ | no equivalent on `Server` |
| Swift | no equivalent on `Server` |
| OCaml | No direct public OCaml equivalent is recorded for this operation. |

No equivalent is recorded in PowerShell, Julia, Erlang, Elixir, Common Lisp, Clojure, Kotlin, Scala or F#.
