Skip to main content

Overview

Clients are terminal connections to the tmux server. Each client is attached to a session to interact with it. Multiple clients can be attached to the same session.

refresh-client

Alias: refresh
Refresh the current client if bound to a key, or a single client if one is given with -t.
flag
Return to tracking the cursor automatically. The visible portion follows the cursor.
flag
Move the visible portion of the window down by adjustment rows (default 1).
flag
Request the clipboard from the client using the xterm escape sequence.
flag
Move the visible portion left by adjustment columns.
flag
Move the visible portion right by adjustment columns.
flag
Only update the client’s status line.
flag
Move the visible portion up by adjustment rows.
string
Allow a control mode client to trigger actions on a pane. Format: pane-id:state where state is on, off, continue, or pause.
  • off: Stop sending output from pane to client
  • continue: Resume sending output if paused
  • pause: Pause the pane
May be given multiple times for different panes.
string
Set a subscription to a format for a control mode client. Format: name:what:format
  • name: Name for the subscription
  • what: Item to subscribe to (pane ID like %0, %* for all panes, window ID like @0, @* for all windows, or empty for session)
  • format: The format string
Changes reported via %subscription-changed notification. Pass only name to remove subscription.
string
Set the width and height of a control mode client. Format: widthxheight or window-id:widthxheight (e.g., 80x24 or @0:80x24).
string
Set comma-separated list of client flags (see attach-session).
string
Provide information about a pane via a report in control mode. Format: pane-id:report where report is an escape sequence.
string
The target client.
number
Number of rows or columns to move by (default 1).

Visible Portion Control

The visible position is a property of the client. When a window is larger than the client, only a portion is visible. Use -U, -D, -L, -R to pan, and -c to return to following the cursor.

Examples

list-clients

Alias: lsc
List all clients attached to the server.
flag
Reverse the sort order.
string
Specify the format of each line. Available client format variables:
  • #{client_name}: Name of client
  • #{client_tty}: Pseudo terminal of client
  • #{client_width}, #{client_height}: Client dimensions
  • #{client_created}: Time client was created
  • #{client_activity}: Time of last activity
  • #{client_session}: Name of attached session
  • #{client_prefix}: 1 if prefix key has been pressed
  • #{client_readonly}: 1 if client is read-only
string
Only show clients for which the filter is true.
string
Specify sort order: name, size, creation (time), or activity (time).
string
List only clients connected to the target session.

Examples

lock-client

Alias: lockc
Lock the target client. Runs the command specified by the lock-command option.
string
The target client to lock.

Examples

suspend-client

Alias: suspendc
Suspend a client by sending SIGTSTP (tty stop signal).
string
The target client to suspend.

Examples

display-message

Alias: display
Display a message in the status line or print it to stdout.
flag
List the format variables and their values.
flag
Forward any input read from stdin to the empty pane given by target-pane.
flag
Ignore keys pressed while the message is displayed.
flag
Print the message to stdout instead of displaying in status line.
flag
Print verbose logging as the format is parsed.
string
The target client.
number
Duration in milliseconds for which the message is shown. Default uses the display-time option.
string
Format string. Overrides the message argument.
string
The target pane for context.
string
Message to display. Can include format variables.

Examples

show-messages

Alias: showmsgs
Show server messages or jobs. Messages are stored in a per-client queue.
flag
Show jobs instead of messages.
flag
Show debugging information about the format tree.
string
The target client.

Examples

display-menu

Alias: menu
Display a menu on the target client.
flag
Do not close the menu after an item is selected.
string
The target client.
string
The target pane.
string
Title for the menu.
string
Horizontal position. Can be a number, C for center, R for right, P for mouse position, M for mouse menu position, W for window position, or S for status line position.
string
Vertical position. Same options as -x for vertical positioning.
string
required
Menu item name (displayed text). Use empty string for separator.
string
required
Key shortcut for the item. Use empty string for no shortcut.
string
required
Command to execute when item is selected. Use empty string for separator.
Menu items are specified in triplets: name, key, command. Repeat for each menu item.

Examples

display-popup

Alias: popup
Display a popup on the target client.
flag
Close any popup already open.
flag
Close the popup automatically when the shell command exits.
string
The target client.
string
Starting directory for the shell command.
string
Height of the popup. Can be a number or percentage (e.g., 50%).
string
The target pane.
string
Title for the popup.
string
Width of the popup. Can be a number or percentage.
string
Horizontal position. Same options as display-menu -x.
string
Vertical position. Same options as display-menu -y.
string
Shell command to run in the popup.

Examples

choose-client

Put a pane into client mode, where a client may be chosen interactively from a list.
flag
Start without the preview.
flag
Reverse the sort order.
flag
Zoom the pane.
string
Format for each item in the list.
string
Initial filter (as a format expression).
string
Format for each shortcut key.
string
Initial sort order: name, size, creation, or activity.
string
Target pane.
string
After a client is chosen, %% is replaced by the client name and the result is executed as a command.

Examples

Control Mode

Control mode (tmux -C) is a special mode where tmux acts as a background daemon and communicates with a client program via a simple text protocol. In control mode:
  • Output is sent as notifications
  • Input is parsed as commands
  • No terminal UI is displayed
  • Useful for integrating tmux with other programs

Control Mode Client Flags

  • no-output: Client does not receive pane output
  • pause-after=seconds: Pause output when behind
  • read-only: Client is read-only
  • wait-exit: Wait for empty line before exiting

Control Mode Notifications

  • %output: Pane output
  • %layout-change: Window layout changed
  • %session-changed: Session changed
  • %window-add, %window-close: Window events
  • %subscription-changed: Format subscription changed