Core LibraryunreleasedAPI Reference

Choose documentation 1

latest

Current version

latest
English

Unreleased libtmux_erlang has not been released. Its API may change during development. This site's structure and URLs may change too.

function libtmux-erlang latest

tmux_server:snapshot/1

Capture a complete immutable graph with default capture limits. Performs I/O. See snapshot/2 for bounds, consistency and conflict errors.

Source and package
Qualified name
tmux_server:snapshot/1
Declared in
tmux_server
Package
libtmux_erlang
Source
apps/libtmux_erlang/src/tmux_server.erl
Other languages
Perlmethod PowerShellcmdlet Juliafunction Elixirfunction Haskell Common Lispfunction Python RubyLuaTypeScriptRustmethod GoJavaC# C++ SwiftKotlinScalaOCamlfunction F#function Clojurefunction
snapshot(Server) -spec snapshot(t()) -> {ok, tmux_snapshot:t()} | {error, map()}.
Parameters

tmux command#

The tmux commands behind snapshot/1.

list-panes -a server scope, cmd_list_panes_server (the server has a session) list-sessions list-windows -a server scope, cmd_list_windows_exec (the server has a session)

tmux C API#

The C declarations in tmux that implement these commands.

Guides#

Pages that discuss snapshot/1.

In other ports#

Capture the tmux hierarchy

Equivalents of Capture the tmux hierarchy in other languages
Language Equivalent
Python no equivalent on Server
Ruby LibTmux::Server#snapshot
Lua libtmux.Server:snapshot
PowerShell LibTmux\Get-TmuxSnapshot Acquires a replacement LibTmux.Server to -Depth (panes by default). Acquisition is not atomic; retained handles do not refresh.
Julia LibTmux.snapshot Acquires a new Snapshot over an observation interval. Topology checks do not make it a transaction; earlier snapshots do not refresh.
Elixir LibTmux.Server.snapshot/2 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.
Common Lisp libtmux:fetch-snapshot fetch-snapshot acquires a new interval observation. Retained snapshots never refresh in place.
TypeScript server.Server.snapshot
Rust server.Server.hierarchy 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.Server.Snapshot
Java io.github.libtmux.Server.snapshot
Clojure libtmux.core/snapshot! Acquires a captured graph of persistent values. Retained values do not refresh after mutation or close.
Kotlin io.github.libtmux.kotlin.Server.snapshot
Scala io.github.libtmux.scaladsl.Server.snapshot
C# LibTmux.Server.CaptureSnapshotAsync
F# LibTmux.FSharp.Server.capture 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.snapshot()
OCaml Libtmux_unix.Client.capture Acquires a complete immutable graph over an interval. Earlier observations remain readable without refreshing.
Perl LibTmux::Server::snapshot Strict acquisition observes an interval, not an atomic transaction; retained handles do not refresh.
Esc

Type to search.

Reference previewOpen reference