# LibTmux

- **Package:** libtmux-haskell
- **Language:** Haskell
- **Kind:** module
- **Source:** https://github.com/libtmux/libtmux-haskell/blob/663e212622a02aa74a9bdc8ff71e2b45fcb1d4d5/src/LibTmux.hs
- **Page:** https://libtmux.org/en/haskell/latest/reference/libtmux/

Capture tmux state in IO and process detached observations with ordinary
 Haskell collections. Start with [`withServer`](/en/haskell/latest/reference/libtmux-server-v-withserver/) and [`capture`](/en/haskell/latest/reference/libtmux-server-v-capture/); navigation and
 field access from [`LibTmux.Snapshot`](/en/haskell/latest/reference/libtmux-snapshot/) perform no external operations.
 [`renameSession`](/en/haskell/latest/reference/libtmux-server-v-renamesession/), [`renameWindow`](/en/haskell/latest/reference/libtmux-server-v-renamewindow/) and [`setPaneTitle`](/en/haskell/latest/reference/libtmux-server-v-setpanetitle/) act on explicit references
 in IO; detached observations change only when acquired again with [`capture`](/en/haskell/latest/reference/libtmux-server-v-capture/).

[`LibTmux.Server`](/en/haskell/latest/reference/libtmux-server/) documents ownership and failure recovery. Typed IDs,
 checked dimensions and supported releases have their own pure modules.
 [`LibTmux.Query`](/en/haskell/latest/reference/libtmux-query/) provides qualified typed descriptions over the same
 snapshots; query source names are separate from collection access here.

## Reexports

- [`LibTmux.Server`](/en/haskell/latest/reference/libtmux-server/)
- [`LibTmux.Snapshot`](/en/haskell/latest/reference/libtmux-snapshot/)
- [`LibTmux.Id`](/en/haskell/latest/reference/libtmux-id/)
- [`LibTmux.Value`](/en/haskell/latest/reference/libtmux-value/)
- [`LibTmux.Version`](/en/haskell/latest/reference/libtmux-version/)

## Referenced declarations

- [`LibTmux.Id`](/en/haskell/latest/reference/libtmux-id/) (module)
- [`LibTmux.Server`](/en/haskell/latest/reference/libtmux-server/) (module)
- [`LibTmux.Snapshot`](/en/haskell/latest/reference/libtmux-snapshot/) (module)
- [`LibTmux.Value`](/en/haskell/latest/reference/libtmux-value/) (module)
- [`LibTmux.Version`](/en/haskell/latest/reference/libtmux-version/) (module)

## Guides

Pages that discuss `LibTmux`.

- [API documentation](/en/haskell/latest/guides/api-documentation/)
