libtmux:fetch-snapshot
Acquire an eager native graph; all later accessors on it are local. TIMEOUT controls one acquisition deadline and OUTPUT-LIMIT caps combined output, including at most two retries after contradictory observations. Synchronous setup and additional cleanup can extend caller wall time. ROW-LIMIT bounds each listing; ENTITY-LIMIT bounds the complete graph; FIELD-LIMIT bounds encoded field bytes. No daemon is started. A live daemon with zero sessions yields empty vectors; connection/listing failures remain errors. Closing CLIENT leaves this snapshot usable. This is an interval observation, not a transactional snapshot.
Source and package
-
Public owner:
libtmuxDescription#
See also:
libtmux:error-outcome,libtmux:fetch-panes,libtmux:provenance,libtmux:refresh.- Parameters
-
tmux command#
The tmux commands behind fetch-snapshot.
list-panes -a server scope, cmd_list_panes_server (the server has sessions) tmux C API#
The C declarations in tmux that implement these commands.
Guides#
Pages that discuss fetch-snapshot.
- Concepts
- Examples
- Guides
In other ports#
Capture the tmux hierarchy
| Language | Equivalent |
|---|---|
| Python | no equivalent on Server |
| Ruby | Lib |
| Lua | libtmux |
| PowerShell | Lib Acquires a replacement LibTmux.Server to -Depth (panes by default). Acquisition is not atomic; retained handles do not refresh. |
| Julia | Lib Acquires a new Snapshot over an observation interval. Topology checks do not make it a transaction; earlier snapshots do not refresh. |
| Erlang | tmux Captures a new graph over an observation interval. Retained snapshots never refresh. |
| Elixir | Lib Captures a new graph over an observation interval. A retained Snapshot never refreshes. |
| Haskell | No public Haskell equivalent is implemented; the current modules expose scalar values and version parsing. |
| TypeScript | server |
| Rust | server Fetches the whole hierarchy with list-sessions, list-windows -a and list-panes -a, and stitches the rows by winlink. The three listings are separate commands, so the capture is not an atomic transaction. |
| Go | tmux |
| Java | io |
| Clojure | libtmux Acquires a captured graph of persistent values. Retained values do not refresh after mutation or close. |
| Kotlin | io |
| Scala | io |
| C# | Lib |
| F# | Lib Acquires a replacement shared .NET LibTmux.Server to the requested depth. Acquisition is not atomic; retained handles do not refresh. |
| C++ | no equivalent on Server: sessions, windows, panes and clients each take a snapshot of one listing, and Snapshot::take needs the internal detail::Backend, so no public call reads the whole hierarchy at once |
| Swift | Server |
| OCaml | Libtmux Acquires a complete immutable graph over an interval. Earlier observations remain readable without refreshing. |
| Perl | Lib Strict acquisition observes an interval, not an atomic transaction; retained handles do not refresh. |