# libtmux:display-message

- **Package:** libtmux
- **Language:** Common Lisp
- **Kind:** function
- **Source:** https://github.com/libtmux/libtmux-lisp/blob/c2e5fc4ed3befda21f45dfa5d5868c38fd138311/src/server-operations.lisp#L52
- **Public owner:** libtmux
- **Page:** https://libtmux.org/en/lisp/latest/reference/libtmux-display-message/

```
(display-message client message &key target format-p cancel-token timeout output-limit)
```

Print MESSAGE through tmux; return owned UTF-8 text and a COMMAND-OUTCOME.
Always uses the ordinary -p printer, preserving its whitespace and trailing lines.
Native versions can escape output, so it is not a byte-identical echo. MESSAGE
is literal by default. FORMAT-P enables tmux format and time expansion;
#() may start shell jobs but does not wait for their output. Fresh requests can
print empty or incomplete job results. The native command client owns those
jobs; its disconnect cleans them up.

TARGET may be a captured session, window, pane or window-link owned by CLIENT.
Use a window-link for exact session/index context. With no target, tmux selects
the context; physical windows and panes also leave their session context to
tmux. Foreign, replaced or vanished targets signal STALE-TARGET.

The result includes after-hook printer output; it is not a decoded scalar or
configuration record. Hooks may also have effects. The call blocks under shared
preflight/dispatch limits, acquires no replacement and never retries. Tmux 3.3a
literal fallback limits the escaped intermediate text to 8,191 UTF-8 bytes;
newer daemons use native literal printing. Encoded command limits also apply.
Invalid UTF-8 signals DECODING-ERROR with its outcome; other failures retain
their diagnostic outcome. Local validation signals INVALID-ARGUMENT.

See also: `libtmux:capture-pane`, `libtmux:error-outcome`, `libtmux:outcome-stdout`, `libtmux:run-command`, `libtmux:set-hook`.

## Parameters

- `client`
- `message`
- `target?`
- `format-p?`
- `cancel-token?`
- `timeout?`
- `output-limit?`

## tmux command

The tmux commands behind `display-message`.

- [`display-message`](/en/tmux/latest/manual/display-message/)

## tmux C API

The C declarations in tmux that implement these commands.

- [`cmd_display_message_entry`](/en/tmux/latest/reference/c-variable-cmd_display_message_entry/) (attribute)
- [`cmd_display_message_exec`](/en/tmux/latest/reference/c-function-cmd-display-message-c-cmd_display_message_exec/) (function)

## Guides

Pages that discuss `display-message`.

- [Explicit operations](/en/lisp/latest/guides/operations/)
