Core Library0.xAPI Reference

Choose documentation 3

latest

Current version

latest
English

Early release libtmux is released, and its APIs may still change between releases. This site's structure and URLs may change too.

enum libtmux-rs latest

Event

Something tmux reported that no command asked for.

Source and package
Qualified name
libtmux::control::Event
Module
control
Package
libtmux
Source
crates/libtmux/src/control.rs
enum control.Event

Description#

The variants cover every notification tmux publishes across the supported releases. Event::Other keeps an unrecognized one rather than dropping it, because tmux adds notifications between releases; its name is the tmux notification without the leading %.

Emission depends on the server release: %config-error, %message, %paste-buffer-changed and %paste-buffer-deleted arrive from tmux 3.4, and the supported floor, 3.3a, emits none of them. Nothing else in the vocabulary is version-dependent.

Variants26#

Event variants
CasePayloadDescription
ClientDetached { client: TmuxText } A client detached from the server.
ClientSessionChanged { client: TmuxText, session: SessionId, name: TmuxText } A client switched to a different session.
ConfigError { message: TmuxText } tmux could not read part of its configuration.
Continued { pane: PaneId } tmux resumed a pane it had paused.
Exit { reason: Option<TmuxText> } The server is going away, so no further events will arrive.
ExtendedOutput { pane: PaneId, age: Duration, bytes: Vec<u8> } A pane produced output, and tmux said how far behind it is.
LayoutChanged { window: WindowId, layout: TmuxText, visible_layout: TmuxText, flags: TmuxText } A window's panes were rearranged, added to, or removed from.
Message { message: TmuxText } A message tmux was asked to display, by display-message or a hook.
Other { name: String, rest: TmuxText } A notification this crate does not model.
Output { pane: PaneId, bytes: Vec<u8> } A pane produced output.
PaneModeChanged { pane: PaneId } A pane entered or left a mode, such as copy mode.
PasteBufferChanged { name: TmuxText } A paste buffer was created or replaced.
PasteBufferDeleted { name: TmuxText } A paste buffer was deleted.
Paused { pane: PaneId } tmux stopped sending a pane's output.
SessionChanged { session: SessionId } The attached session changed.
SessionRenamed { session: SessionId, name: TmuxText } A session was renamed.
SessionsChanged No payload A session was created or destroyed, so the session list is now wrong.
SessionWindowChanged { session: SessionId, window: WindowId } A session's active window changed.
SubscriptionChanged { name: TmuxText, session: SessionId, window: Option<WindowId>, index: Option<u32>, pane: Option<PaneId>, value: TmuxText } A format this client subscribed to with refresh-client -B changed.
UnlinkedWindowAdded { window: WindowId } A window appeared that the attached session does not link.
UnlinkedWindowClosed { window: WindowId } A window the attached session does not link closed.
UnlinkedWindowRenamed { window: WindowId, name: TmuxText } A window the attached session does not link was renamed.
WindowAdded { window: WindowId } A window was linked into the attached session.
WindowClosed { window: WindowId } A window in the attached session closed.
WindowPaneChanged { window: WindowId, pane: PaneId } A window's active pane changed.
WindowRenamed { window: WindowId, name: TmuxText } A window in the attached session was renamed.

Members4#

  • invalidates_listings method Report whether a listing taken before this event may now be wrong.
  • may_have_added_a_pane method Report whether a pane may have appeared since the last look.
  • pane method Return the pane this event is about, when it is about one.
  • window method Return the window this event is about, when it is about one.
Esc

Type to search.

Reference previewOpen reference