# tmux_option:get_many/3

- **Package:** libtmux_erlang
- **Language:** Erlang
- **Kind:** function
- **Source:** https://github.com/libtmux/libtmux-erlang/blob/d1b6308440cf9eb8f6647e7ae434bce60e849368/apps/libtmux_erlang/src/tmux_option.erl#L145
- **Page:** https://libtmux.org/en/erlang/latest/reference/tmux_option-get_many-3/

```
get_many(Scopes, Name, Options)
-spec get_many([tmux_model:session() |
                tmux_model:window() |
                tmux_model:pane(),
                ...],
               binary(),
               read_options()) ->
                  {ok, [binary() | none]} | {error, map()}.
```

Read one scalar option from one to seven local rows on the same registered endpoint. Performs one bounded native sequence after validating every scope. Results follow input order; each entry is binary text or none for a missing local value. `t:read_options/0` controls inheritance as in `get/3`.

Names use ASCII letters, digits, dots, underscores and hyphens, with an
optional leading @ for user options. Global tables, arrays, indexed keys,
hooks and command options are unsupported. Use `get/3` for broader option
reads and `tmux_hook:get/3` for hooks.
Invalid scopes, unsupported keys and different owners fail before dispatch.

Each read is bracketed by matching native target-ID observations. Unresolved
or mismatched IDs reject the batch. The checks do not prove topology membership
or completed destruction: older tmux may retain an unlinked pane through
queued references. The sequence provides interval observations and the same
server-incarnation guarantee as `get/3`. Ambient command configuration applies
to both paths.

Stdout is bounded to 1 MiB and stderr to 64 KiB for the whole sequence, with
the endpoint's 2500 ms command deadline. Seven 32 KiB values fit even under
the qualified worst-case native quoting expansion. Larger external values
may exceed that aggregate output bound. Any command, framing or decoding
failure rejects the entire result, retaining native outcome and cleanup
evidence. There is no partial-success result, hidden refresh or value cache.

## Parameters

- `Scopes` (`[tmux_model:session() |            tmux_model:window() |            tmux_model:pane(),            ...]`)
- `Name` (`binary()`)
- `Options` (`read_options()`)

## Guides

Pages that discuss `get_many/3`.

- [Read and change scoped options](/en/erlang/latest/guides/options/)
- [Workspace JSON loader](/en/erlang/latest/guides/workspace-json/)
